150 likes | 152 Views
Prelude to the Project. The course project will involve roleplaying Here is the (fictional) backstory…. Backstory: The Grad-Tracker Project. UofM CS Dept contracts external company to build grad-tracker system System helps keep track of student progress Similar to UMDegree.
E N D
The course project will involve roleplayingHere is the (fictional) backstory…
Backstory:The Grad-Tracker Project • UofM CS Dept contracts external company to build grad-tracker system • System helps keep track of student progress • Similar to UMDegree
Backstory:Failure Most Foul • CS Dept not satisfied with company’s work • Didn’t build what we asked for • Long periods with no apparent progress and no communication • Litigation ensues • CS Dept gets code – such as it is • Everyone loses money
Backstory:Your Development Team • UofM has in-house development group • Your team is one of several
Backstory:Your New Customer • CS Dept contracts with in-house group to finish project • Your team assigned to the job Here’s a quick demo of the project
Project Process Analysis Requirements Design InitialPlanning Implementation Planning 2 weeks 2 iterations,~4 weeks each Testing Evaluation Deployment
Initial Planning Process • Gather requirements • File bug reports • Estimate and plan work • May also involve a bit of • Program comprehension • Software design • Culminates in Alpha Iteration Plan
Iteration Process • Plan/Build/Collect feedback • Productivity tracked weekly • Culminates in • Working code! (submission milestone) • Demo for class
Detailed Initial Planning Schedule • Tue 8 Oct • Gather requirements from customer • Thu 10 Oct • Submit first pass on requirements (before class) • Receive feedback on your requirements • Estimate your requirements • Thu 17 Oct • Submit second pass on requirements + estimates (by 9am) • Receive priority assignments from customer (before class) • Choose requirements to build in Alpha Iteration, and break them down into detailed tasks (with estimates) • Tue 22 Oct • Submit requirements (w/ estimates) and iteration tasks (w/ estimates and assignments)
Several Development Principles in Play • Customer sets priorities • He/she knows the benefits, but not the costs – unless you tell him/her! • Even detailed tasks should reflect incremental development • Each task should result in working code • The bigger the estimate, the less accurate • Put limited effort in estimating over all requirements • Put a bit more effort into estimating requirements/tasks for next iteration
Detailed Initial Planning Schedule • Tue 8 Oct • Gather requirements from customer • Thu 10 Oct • Submit first pass on requirements (before class) • Receive feedback on your requirements • Estimate your requirements • Thu 17 Oct • Submit second pass on requirements + estimates (by 9am) • Receive priority assignments from customer (before class) • Choose requirements to build in Alpha Iteration, and break them down into detailed tasks (with estimates) • Tue 22 Oct • Submit requirements (w/ estimates) and iteration tasks (w/ estimates and assignments) Customer sets priorities
Detailed Initial Planning Schedule • Tue 8 Oct • Gather requirements from customer • Thu 10 Oct • Submit first pass on requirements (before class) • Receive feedback on your requirements • Estimate your requirements • Thu 17 Oct • Submit second pass on requirements + estimates (by 9am) • Receive priority assignments from customer (before class) • Choose requirements to build in Alpha Iteration, and break them down into detailed tasks (with estimates) • Tue 22 Oct • Submit requirements (w/ estimates) and iteration tasks (w/ estimates and assignments) Less estimation effort More estimation effort
Detailed Initial Planning Schedule • Tue 8 Oct • Gather requirements from customer • Thu 10 Oct • Submit first pass on requirements (before class) • Receive feedback on your requirements • Estimate your requirements • Thu 17 Oct • Submit second pass on requirements + estimates (by 9am) • Receive priority assignments from customer (before class) • Choose requirements to build in Alpha Iteration, and break them down into detailed tasks (with estimates) • Tue 22 Oct • Submit requirements (w/ estimates) and iteration tasks (w/ estimates and assignments) Incremental development
What’s next? • Next class: Exam 1 • HW5 due before next Tuesday • Next Tuesday: Gathering requirements for the project