Rational Unified ProcessSEI Capability Maturity ModelBest Practices:Develop IterativelyComponents of RUPArtifactsRolesActivitiesWorkflowsSlide 10Implementation WorkflowIterationsFour phasesIteration PlanAn iteration workflowArchitectureSlide 17Summary of RUPSlide 19Keys to good softwareeXtreme ProgrammingCS427 2-1Rational Unified ProcessThe Unified Software Development Process by Ivar Jacobson, Grady Booch, and James RumbaughThe Rational Unified Process: An Introduction, by Philippe KruchtenThe Rational Unified Process Made Easy, by Per Kroll and Philippe KruchtenCS427 2-2SEI Capability Maturity Model1. Initial - anything goes2. Repeatable - SCM, QA, planning, tracking, requirements3. Defined - process defined and followed4. Managed - measure and act on it5. Optimizing - keep improving processCS427 2-3Best Practices: Develop software iteratively Manage requirementsUse component-based architecturesVisually model software Verify software quality Control changes to softwareCS427 2-4Develop IterativelyWaterfallRequirementsHigh level designLow level designImplementationTestingIterative development – all activities at the same timeCS427 2-5Components of RUPArtifacts - what(things people make)Roles - who(roles people play)Activities - how(things people do)Workflows - whenCS427 2-6ArtifactsVision statementIteration planUse-case model (UML)Software architecture document (UML)Design model (UML)ComponentIntegration build planCS427 2-7RolesProject managerArchitectSystem analystUse-case specifierDesignerImplementorTesterCM managerCS427 2-8ActivitiesPlan subsystem integrationImplement classesFix a defectPerform a unit testReview codeIntegrate subsystemCS427 2-9WorkflowsProject management Business modelingRequirementsAnalysis and designImplementationCS427 2-10WorkflowsTestConfiguration and change managementDeploymentEnvironmentCS427 2-11Implementation WorkflowA r c h i t e c tS y s t e m I n t e g r a t o rI m p l e m e n t o rC o d e r e v i e w e rP l a n S y s t e mI n t e g r a t i o nD e f i n eO r g a n i z a t i o no f S u b s y s t e mP l a nS u b s y s t e mI n t e g r a t i o nI m p l e m e n tC l a s s e sF i x a d e f e c tP e r f o r m U n i tT e s tR e v i e w c o d eI n t e g r a t es u b s y s t e mI n t e g r a t es y s t e mCS427 2-12IterationsPreliminary It. Iter. 1 Iter. 2 Iter. 3 Iter. 7 Iter. 8 Iter. 9ElaborationInception Construction TransitionCS427 2-13Four phasesInception get the idea, initial planningElaboration create the architecture build skeleton systemdetailed planningConstructionbuild the rest of the systemTransitionCS427 2-14Iteration PlanWhat are we going to do this iteration?Who is going to do it?What order are we going to do it?Do we have enough resources?CS427 2-15An iteration workflowEach iteration uses some of the standard workflowsRequirements, design, implementation, testWorkflows can run in parallelEarly iterationsMuch project managementMuch business modelingLittle implentationCS427 2-16ArchitectureDescribes components and how they are connected.Component is system/subsystemArchitect responsible for architectureDevelopers responsible for componentsElaboration phase writes code for the architectureCS427 2-17ManagerArchitect (technical lead)Business experts(systems analysis, use case specifier)Developers(designer, developer, tester, CMM manager)CS427 2-18Summary of RUPDevelop software iteratively Manage requirementsUse component-based architecturesVisually model software Verify software quality Control changes to softwareCS427 2-19Summary of RUPComplicated processFramework - you are not expected to do everythingDon’t focus so much on the process that you forget the product!CS427 2-20Keys to good softwareGood peopleUnderstand the problemUnderstand the solutionEnough timeGood processCS427 2-21eXtreme ProgrammingSpend two hours reading “Extreme Programming Explained” or readinghttp://c2.com/cgi/ wiki?ExtremeProgrammingRoadmaphttp://c2.com/cgi/ wiki?ExtremeProgrammingSummaryhttp://www.xProgramming.com/and
View Full Document