Short overview of OpenUP 1 OpenUP SW development lifecycle 10 30 50 10 Schedule 5 20 65 10 Effort 2 Risk 3 Inception Phase objectives Activities that address objectives Understand what to build Identify and Refine Requirements Identify key system functionality Initiate Project Identify and Refine Requirements Determine at least one possible Agree on Technical Approach solution Understand the cost, schedule, and risks associated with the project Initiate Project Plan and Manage Iteration 4 Elaboration Phase objectives Activities that address objectives Get a more detailed understanding of the requirements Identify and Refine Requirements Design, implement, validate, and baseline an architecture Develop the Architecture Develop Solution Increment Test Solution Mitigate essential risks, and produce accurate schedule and cost estimates Plan and Manage Iteration 5 Construction Phase objectives Activities objectives that address Iteratively develop a complete product that is ready to transition to the user community Identify and Refine Requirements Develop Solution Increment Test Solution Minimize development costs Plan and Manage Iteration and achieve some degree of parallelism Develop Solution Increment Test Solution 6 Transition Phase objectives Activities that address objectives Beta test to validate that user expectations are met Ongoing Tasks Develop Solution Increment Test Solution Achieve stakeholder concurrence that deployment is complete Plan and Manage Iteration Test Solution Improve future project performance through lessons learned Plan and Manage Iteration 7 Difficult concepts • Key abstraction - those things that, without which, you could not describe the system • Architecturally significant requirement those requirements that play an important role in determining the architecture of the system • Architectural mechanisms - key technical concepts that will be standardized across the solution 8 Roles • • • • • • • Project manager Analyst Architect Don’t forget to send some representative Developer to the lecture! Tester Quality coordinator Document responsible 9 Quality coordinator • • • • • • Status assessment Experience build-up Change process manager Measurement, time, product Reviews Process adaptation 10 Document responsible • • • • Repository maintenance Document change requests, from QC Watch deadlines Chair review meetings 11 Examples of tasks • • • • • • • Manage iteration Detail use-case scenarios Outline the Architecture Design the solution Create test cases Gather time reports from project members Create version management system 12 Examples of Work Products Aka Artefacts • Project plan • System-wide requirements • Architecture notebook • Build • Test Case • Instruction to authors • User manual 13 Management practices Iterative development Risk-value lifecycle Two-level project management Whole team Team change management 14 Technical practices • • • • • • • Concurrent testing Continuous integration Evolutionary architecture Evolutionary design Shared vision Test-driven development Use-case driven development 15 Other elements of OpenUP • • • • Checklists Key concepts Examples Guidelines 16