资源描述
1These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001 Supplementary Slides forSoftware Engineering:A Practitioners Approach,5/ecopyright 1996,2001R.S.Pressman&Associates,Inc.For University Use OnlyMay be reproduced ONLY for student use at the university levelwhen used in conjunction with Software Engineering:A Practitioners Approach.Any other reproduction or use is expressly prohibited.This presentation,slides,or hardcopy may NOT be used forshort courses,industry seminars,or consulting purposes.2These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Chapter 1The Product3These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001What is Software?Software is a set of items or objects that form a“configuration”that includes programs documents data.4These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001What is Software?software is engineeredsoftware is engineeredsoftware doesnt wear outsoftware doesnt wear outsoftware is complexsoftware is complexsoftware is a software is a differentiatordifferentiatorsoftware is like an aging software is like an aging factoryfactory5These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Wear vs.Deterioration6These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001The Cost of Change7These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Software Applicationssystem softwaresystem softwarereal-time softwarereal-time softwarebusiness softwarebusiness softwareengineering/scientific softwareengineering/scientific softwareembedded softwareembedded softwarePC softwarePC softwareAI softwareAI softwareWebApps WebApps(Web applications)(Web applications)8These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Software Poses Challenges9These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001 Supplementary Slides forSoftware Engineering:A Practitioners Approach,5/ecopyright 1996,2001R.S.Pressman&Associates,Inc.For University Use OnlyMay be reproduced ONLY for student use at the university levelwhen used in conjunction with Software Engineering:A Practitioners Approach.Any other reproduction or use is expressly prohibited.This presentation,slides,or hardcopy may NOT be used forshort courses,industry seminars,or consulting purposes.10These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Chapter 2The Process11These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Software EngineeringA Layered TechnologySoftware Engineeringa“quality”focusa“quality”focusprocess modelprocess modelmethodsmethodstoolstools12These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001A Common Process FrameworkCommon process frameworkCommon process frameworkFramework activitiesFramework activitieswork taskswork taskswork productswork productsmilestones&deliverablesmilestones&deliverablesQA checkpointsQA checkpointsUmbrella ActivitiesUmbrella Activities13These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Umbrella ActivitiesSoftware project managementSoftware project managementFormal technical reviewsFormal technical reviewsSoftware quality assuranceSoftware quality assuranceSoftware configuration managementSoftware configuration managementDocument preparation and productionDocument preparation and productionReusability managementReusability managementMeasurementMeasurementRisk managementRisk management14These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Process as Problem Solving15These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001The Process Model:Adaptabilitythe framework activities will the framework activities will alwaysalways be be applied on applied on everyevery project.BUT project.BUTthe tasks(and degree of rigor)for each the tasks(and degree of rigor)for each activity will vary based on:activity will vary based on:the type of project(an“entry point”to the model)the type of project(an“entry point”to the model)characteristics of the projectcharacteristics of the projectcommon sense judgment;concurrence of the common sense judgment;concurrence of the project teamproject team16These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001The Primary Goal:High QualityRemember:Remember:High quality=project timelinessHigh quality=project timelinessWhy?Why?Less rework!Less rework!17These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001The Linear Model18These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Iterative ModelsPrototypingRAD19These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001The Incremental Model20These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001An Evolutionary(Spiral)Model21These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Still Other Process ModelsComponent assembly modelComponent assembly modelthe process to apply when the process to apply when reuse is a development objectivereuse is a development objectiveConcurrent process modelConcurrent process modelrecognizes that different recognizes that different part of the project will be at different places in the part of the project will be at different places in the processprocessFormal methodsFormal methodsthe process to apply when a the process to apply when a mathematical specification is to be developedmathematical specification is to be developedCleanroomCleanroom software engineering software engineeringemphasizes error emphasizes error detection detection beforebefore testing testing22These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001 Supplementary Slides forSoftware Engineering:A Practitioners Approach,5/ecopyright 1996,2001R.S.Pressman&Associates,Inc.For University Use OnlyMay be reproduced ONLY for student use at the university levelwhen used in conjunction with Software Engineering:A Practitioners Approach.Any other reproduction or use is expressly prohibited.This presentation,slides,or hardcopy may NOT be used forshort courses,industry seminars,or consulting purposes.23These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Chapter 3Project Management24These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001The 4 PsPeoplePeople the most important element of a the most important element of a successful projectsuccessful projectProductProduct the software to be built the software to be builtProcessProcess the set of framework activities and the set of framework activities and software engineering tasks to get the job software engineering tasks to get the job donedoneProjectProject all work required to make the all work required to make the product a realityproduct a reality25These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Software Projects size delivery deadline budgets and costs application domain technology to be implemented system constraints user requirements available resourcesFactors that influence the end result.26These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Project Management Concerns27These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Why Projects Fail?an unrealistic deadline is established an unrealistic deadline is established changing customer requirements changing customer requirements an honest underestimate of effort an honest underestimate of effort predictable and/or unpredictable risks predictable and/or unpredictable risks technical difficulties technical difficulties miscommunication among project staff miscommunication among project staff failure in project management failure in project management28These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Software Teamsthe difficulty of the problem to be solvedthe difficulty of the problem to be solvedthe size of the resultant program(s)in lines of code or the size of the resultant program(s)in lines of code or function pointsfunction pointsthe time that the team will stay together(team lifetime)the time that the team will stay together(team lifetime)the degree to which the problem can be modularizedthe degree to which the problem can be modularizedthe required quality and reliability of the system to be builtthe required quality and reliability of the system to be builtthe rigidity of the delivery datethe rigidity of the delivery datethe degree of sociability(communication)required for the the degree of sociability(communication)required for the projectprojectThe following factors must be considered when selecting asoftware project team structure.29These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001closed paradigmstructures a team along a traditional closed paradigmstructures a team along a traditional hierarchy of authority(similar to a CC team)hierarchy of authority(similar to a CC team)random paradigmstructures a team loosely and depends random paradigmstructures a team loosely and depends on individual initiative of the team members on individual initiative of the team members open paradigmattempts to structure a team in a manner open paradigmattempts to structure a team in a manner that achieves some of the controls associated with the that achieves some of the controls associated with the closed paradigm but also much of the innovation that occurs closed paradigm but also much of the innovation that occurs when using the random paradigmwhen using the random paradigmsynchronous paradigmrelies on the natural compartment-synchronous paradigmrelies on the natural compartment-alizationalization of a problem and organizes team members to work of a problem and organizes team members to work on pieces of the problem with little active communication on pieces of the problem with little active communication among themselvesamong themselvesOrganizational Paradigmssuggested by Constantine CON9330These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Defining the Problemestablish scopea narrative that bounds the establish scopea narrative that bounds the problemproblemdecompositionestablishes functional decompositionestablishes functional partitioningpartitioning31These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001Melding Problem and Process32These courseware materials are to be used in conjunction with Software Engineering:A Practitioners Approach,5/e and are provided with permission by R.S.Pressman&Associates,Inc.,copyright 1996,2001To Get to the Essence of a ProjectWhy is the system being developed?Why is the system being developed?What will be done?By when?What will be done?By when?Who is responsible for a function?Who is responsible for a function?Where are they organizationally located?Where are they organizationally located?How will the job be done technically and How will the job be done technically and managerially?managerially?How much of each resource(e.g.,people,How much of each resource(e.g.,people,software,tools,database)will be needed?software,tools,database)will be needed?Barry Boehm33These courseware materials are to be used in conjunctio
展开阅读全文