View
215
Download
2
Embed Size (px)
Citation preview
try again, er something.
February 17, 2005
Greg Giacovelli – Nick Mancuso – Shaun Newsum – Jean-Paul Pietraru – Nick Stroh
2
Agenda
• Project description• Project plan• Risks• Requirements• Design• Current status• Domain experience
3
Project Description
• The current “try” system– submission, testing & grading– collection of scripts
• New system goals– ease learning curve & assignment
management– portability– performance
4
Major Use Cases• Students
– Submit assignments– View test results– View grades
• Graders– View submitted files– View test results– Assign grades
• Professors– Create assignments / activities / tests
5
Process• Spiral
– R1 – The Framework (January)– R2 – Submit & Grade (February)– R3 – Compile & Test (March)– R4 – Code Complete (April)– R5 – Gold (May)
• Why– immediate feedback– ship even if slip
6
RisksDescription Likeliho
odRank (1-
5)
ImpactRank (1-
5)
CombinedRank (1-
10)
Implementation Complexity 4 5 9
The Marshall Factor 5 4 9
Requirements volatility 3 3 6
Parallel development of external interfaces
2 2 4
Testing Complexity 1 1 2
Key:1 = low risk / impact5 = high risk / impact
7
Requirements - Elicitation• Sources:
– project proposal– customer engagement– existing interface documents (XML)– old “try” system
• manuals• sample lab• personal experience
• Use cases• Preliminary database & architecture
designs
8
Requirements• All known system requirements
documented– prioritized (1-3)– divided among iterations– tested against old “try” manuals
• Data dictionary is critical to the system• Each requirement is independent &
numbered• Bugzilla used to track bugs
9
(numbers as of 2/10/05)
0
2
4
6
8
10
12
Bug Count
P1 P2 P3 P4 P5Priority
Requirements Doc
Won't Fix
Invalid
Resolved
Open
10
(numbers as of 2/10/05)
0
5
10
15
20
25
Bug Count
P1 P2 P3 P4 P5Priority
GUI Prototypes
Won't Fix
Invalid
Resolved
Open
11
Design
• Justifications– Web based system– J2EE– Distributed test processing
• Process1. Finalized requirements2. Designed database / file structure3. Presentation / business logic / data
12
Architecture flowAnywhere
CS Student
CS Servers
Webhost
File Server
User Database
CS Workstations
File StructureAvailable
Workstation
1.1 Submit Assignment
1.2 Store Files
1.3 Sta
rt Com
pile & Test
1.4 Get Files
1.5 Save Results(once per test)
1.6 Test
Results
(once p
er test)
2.1 Poll for updates
13
Architecture flowAnywhere
CS Student
CS Server
Servlets
JSP pages
Test Result Monitor
Stateless Beans
LoginBean
CourseBean
GradeBean
Entity Beans
UserBean
Queue(MantaRay)
File Server
User Database
CS Workstations
File Structure
AvailableWorkstation
1.1 Submit Assignment
2.1 Poll for
updates
SubmitBean
AssignmentBean
...
SubmissionBean
CourseBean
AssignmentBean
...
1.2 Submit Assignment
1.3 Save Submission
1.4 Store Files
1.5 Compile & Test Submission
1.6 Start Compile &
Testing
1.7 Test Results
1.8 Cache Test Results
2.2 Get Test Results
14
Current StatusDeliverable Due Date Date
Delivered
R1 – The Framework 1/31/05 (2/18/05)
Project Plan 12/31/05 12/26/04
Test Plan 1/20/05 1/20/05
Software Requirements Specification 1/6/05 1/26/05
Design 1/25/05 (2/18/05)
Stubbed Framework 1/31/05 (2/18/05)
GUI Prototypes 1/31/05 1/31/05
R2 – Save and Grade 2/28/05 (3/17/05)
R3 – Compile and Test 3/31/05 (4/14/05)
R4 – Code Complete 4/30/05 (5/5/05)
R5 – Gold 5/20/05 (5/20/05)
Key: white = pending; green = delivered on time; red = late
15
Experience so far• Active customer involvement crucial• the bad…
– Slipping schedule– Project management
• resource allocation• time estimates• multitasking• minutes
• …and the good:– Solid requirements & design will ensure smooth sailing
from here– Good communication / teamwork– Constant customer interaction