Software Engineering:Chapter 2Process: A Generic View1 Balaganesh-Lincoln university college
A Layered Technology2Software Engineeringa “quality” focusa “quality” focusprocess modelprocess modelmethodsmethodstoolstoolsBalaganesh-Lincoln university college
A Process Framework3Process frameworkProcess frameworkFramework activitiesFramework activitieswork taskswork taskswork productswork productsmilestones & deliverablesmilestones & deliverablesQA checkpointsQA checkpointsUmbrella ActivitiesUmbrella ActivitiesBalaganesh-Lincoln university college
Framework Activities4CommunicationPlanningModelingAnalysis of requirementsDesignConstructionCode generationTestingDeploymentBalaganesh-Lincoln university college
Umbrella Activities5Software project managementFormal technical reviewsSoftware quality assuranceSoftware configuration managementWork product preparation and productionReusability managementMeasurementRisk managementBalaganesh-Lincoln university college
The Process Model:Adaptability6the framework activities will always be applied on everyproject ... BUTthe tasks (and degree of rigor) for each activity will varybased on:the type of projectcharacteristics of the projectcommon sense judgment; concurrence of the project teamBalaganesh-Lincoln university college
The CMMI7The CMMI defines each process area in terms of “specific goals”and the “specific practices” required to achieve these goals. Specific goals establish the characteristics that must exist if theactivities implied by a process area are to be effective.Specific practices refine a goal into a set of process-relatedactivities.Balaganesh-Lincoln university college
Process Patterns8Process patterns define a set of activities, actions, work tasks,work products and/or related behaviorsA template is used to define a patternTypical examples:Customer communication (a process activity)Analysis (an action)Requirements gathering (a process task)Reviewing a work product (a process task)Design model (a work product)Balaganesh-Lincoln university college
Process Assessment9The process should be assessed to ensure that it meets a setof basic process criteria that have been shown to be essentialfor a successful software engineering.Many different assessment options are available:SCAMPICBA IPISPICEISO 9001:2000Balaganesh-Lincoln university college
Assessment and Improvement10Software ProcessSoftware ProcessAssessmentis examined by identifies capabilitiesand risk ofidentifiesmodifications toSoftware ProcessImprovementCapabilityDeterminationleads to leads tomotivatesBalaganesh-Lincoln university college
Personal Software Process (PSP)11Recommends five framework activities:PlanningHigh-level designHigh-level design reviewDevelopmentPostmortemstresses the need for each software engineer to identifyerrors early and as important, to understand the types oferrorsBalaganesh-Lincoln university college
Team Software Process (TSP)12Each project is “launched” using a “script” that defines thetasks to be accomplishedTeams are self-directedMeasurement is encouragedMeasures are analyzed with the intent of improving theteam processBalaganesh-Lincoln university college
The Primary Goal of Any Software Process: HighQuality13Remember:Remember:High quality = project timelinessHigh quality = project timelinessWhy?Why?Less rework!Less rework!Balaganesh-Lincoln university college
A particular slide catching your eye?
Clipping is a handy way to collect important slides you want to go back to later.