Presentation is loading. Please wait.

Presentation is loading. Please wait.

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.

Similar presentations


Presentation on theme: "These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by."— Presentation transcript:

1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 2 Process: A Generic View Software Engineering: A Practitioner’s Approach, 6/e Chapter 2 Process: A Generic View copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach. Any other reproduction or use is expressly prohibited.

2 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 2 Quick Look – The Process What is it? What is it? A series of predictable steps A series of predictable steps A roadmap that helps create a timely, high quality result A roadmap that helps create a timely, high quality result Who does it? Who does it? Software Engineers and their managers adopt it their needs Software Engineers and their managers adopt it their needs Users play a role in the process of defining, building and testing Users play a role in the process of defining, building and testing

3 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 3 Quick Look – The Process Why is it important? Why is it important? It provides stability, control, and organization to an activity It provides stability, control, and organization to an activity Uncontrolled activity becomes quite chaotic Uncontrolled activity becomes quite chaotic Modern software engineering approach must be “agile” Modern software engineering approach must be “agile” Demand only those activities, controls and documentation that are appropriate for the project team and the product Demand only those activities, controls and documentation that are appropriate for the project team and the product What are the steps? What are the steps? The process that you adopt depends on the software that you’re building The process that you adopt depends on the software that you’re building

4 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 4 Quick Look – The Process What is the work product? What is the work product? The programs, documents, and the data that are produced as a consequence of the activities and tasks defined by the _________ The programs, documents, and the data that are produced as a consequence of the activities and tasks defined by the _________ How do I ensure that I’ve done it right? How do I ensure that I’ve done it right? There are number of software process assessment mechanisms There are number of software process assessment mechanisms These enable an organization to determine the “maturity” of the process These enable an organization to determine the “maturity” of the process The quality, timeliness, and long term viability of the product are the best indicators of the efficiency of the process The quality, timeliness, and long term viability of the product are the best indicators of the efficiency of the process

5 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 5 Quick Look – The Process What is a software process? What is a software process? A framework for the tasks that are required to build high quality software A framework for the tasks that are required to build high quality software Is process synonymous with software engineering? Is process synonymous with software engineering? The process defines the approach taken as software is engineered The process defines the approach taken as software is engineered Software engineering also encompasses Software engineering also encompasses Technical methods and automated tools Technical methods and automated tools

6 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 6 A Layered Technology Software Engineering Definition Software Engineering Definition Fritz Bauer [NAU69] Fritz Bauer [NAU69] [Software Engineering is] the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines. [Software Engineering is] the establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines. Software quality – talks a little Software quality – talks a little Need of Customer satisfaction and timely product delivery Need of Customer satisfaction and timely product delivery does not directly address does not directly address Importance of measurement and metrics – omits Importance of measurement and metrics – omits Importance of effective process – does not state Importance of effective process – does not state It provides us a baseline It provides us a baseline

7 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 7 A Layered Technology IEEE [IEE93] definition IEEE [IEE93] definition Software Engineering: (1) The application of a systematic, disciplined, quantifiable approach to development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1) Software Engineering: (1) The application of a systematic, disciplined, quantifiable approach to development, operation, and maintenance of software; that is, the application of engineering to software. (2) The study of approaches as in (1) What is “systematic, disciplined” and “quantifiable” to one software team may be burdensome to another. What is “systematic, disciplined” and “quantifiable” to one software team may be burdensome to another. We need discipline, but we also need adaptability and agility We need discipline, but we also need adaptability and agility

8 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 8 A Layered Technology Software Engineer Challenges Software Engineer Challenges What are the “sound engineering principles” What are the “sound engineering principles” How do we “economically” build software so that it is “reliable” How do we “economically” build software so that it is “reliable” What is required to create computer programs that work “efficiently” on not but many different “real machines”? What is required to create computer programs that work “efficiently” on not but many different “real machines”?

9 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 9 A Layered Technology Software Engineering a “quality” focus process model methods tools

10 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 10 A Layered Technology A quality focus A quality focus The bedrock The bedrock Any engineering approach must rest on an organizational commitment to quality. Any engineering approach must rest on an organizational commitment to quality. Foster a continuous process improvement culture Foster a continuous process improvement culture Process Process Glue – holds the technology layers together Glue – holds the technology layers together Foundation for software engineering Foundation for software engineering Enables timely development Enables timely development

11 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 11 A Layered Technology Process (continue) Process (continue) Forms the basis for management control of software projects Forms the basis for management control of software projects Establishes the context in which technical methods are applied Establishes the context in which technical methods are applied Work products are produced Work products are produced Milestones are established Milestones are established Quality is ensured Quality is ensured Change is properly managed Change is properly managed Methods Methods Provide the technical “how to’s” for constructing software Provide the technical “how to’s” for constructing software

12 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 12 A Layered Technology Methods (continue) Methods (continue) Tasks include communications, requirement analysis, design modeling, program construction, testing, and support. Tasks include communications, requirement analysis, design modeling, program construction, testing, and support. Rely on set of basic principles Rely on set of basic principles To govern each area of the technology To govern each area of the technology Include modeling activities Include modeling activities Tools Tools Automated or semi-automated support for the process and methods Automated or semi-automated support for the process and methods

13 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 13 A Process Framework Process framework Framework activities work tasks work products milestones & deliverables QA checkpoints Umbrella Activities

14 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 14 A Process Framework A process framework A process framework Establishes the foundation for a complete software process Establishes the foundation for a complete software process Identifies a small number of framework activities that are applied to all software projects regardless of the size and complexity Identifies a small number of framework activities that are applied to all software projects regardless of the size and complexity Encompasses a set of umbrella activities that are applicable across the entire software process Encompasses a set of umbrella activities that are applicable across the entire software process “A process defines who is doing what, when, and how to reach a certain goal.” “A process defines who is doing what, when, and how to reach a certain goal.”

15 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 15 Framework Activities Communication Communication Planning Planning Modeling Modeling Analysis of requirements Analysis of requirements Design Design Construction Construction Code generation Code generation Testing Testing Deployment Deployment

16 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 16 Framework Activities Communication Communication This activity involves heavy communication and collaboration with the customer This activity involves heavy communication and collaboration with the customer Requirement gathering and other related activities Requirement gathering and other related activities Planning Planning This activity establishes a plan for the software engineering work that follows This activity establishes a plan for the software engineering work that follows Describes technical tasks to be conducted, the risks that are likely, the resources that will be required, the work products to be produced, and a work schedule Describes technical tasks to be conducted, the risks that are likely, the resources that will be required, the work products to be produced, and a work schedule

17 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 17 Framework Activities Modeling Modeling This activity involves creation of models that allow the developer and customer better understand software requirements and design that will achieve those requirements. This activity involves creation of models that allow the developer and customer better understand software requirements and design that will achieve those requirements. Analysis (action) Analysis (action) Work tasks (Requirement gathering, elaborations, negotiation, specification, and validation) Work tasks (Requirement gathering, elaborations, negotiation, specification, and validation) Design (action) Design (action) Work tasks (data design, architectural design and interface design) Work tasks (data design, architectural design and interface design)

18 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 18 Framework Activities Construction Construction This activity combines code generation and the testing that is required to uncover errors in the code This activity combines code generation and the testing that is required to uncover errors in the code Deployment Deployment Deployment of software Deployment of software Complete entity or partially completed increments Complete entity or partially completed increments Customer feedback Customer feedback

19 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 19 Umbrella Activities Software project management Software project management Formal technical reviews Formal technical reviews Software quality assurance Software quality assurance Software configuration management Software configuration management Work product preparation and production Work product preparation and production Reusability management Reusability management Measurement Measurement Risk management Risk management

20 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 20 Umbrella activities Software project tracking and control Software project tracking and control Assess progress against the project plan Assess progress against the project plan Maintain schedule Maintain schedule Risk management Risk management Assess risks that may effect outcome and quality of the project Assess risks that may effect outcome and quality of the project Software quality assurance Software quality assurance Defines and conducts activities required to ensure software quality Defines and conducts activities required to ensure software quality

21 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 21 Umbrella activities Formal technical reviews Formal technical reviews Assess software engineering work products in an effort to uncover and remove errors before they are propagated to the next action or activity Assess software engineering work products in an effort to uncover and remove errors before they are propagated to the next action or activity Measurement Measurement Defines and collects process, project, and product measures that assist the team in delivering software that meets customer needs Defines and collects process, project, and product measures that assist the team in delivering software that meets customer needs Software configuration management Software configuration management Manages the effect of change throughout the software process Manages the effect of change throughout the software process

22 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 22 Umbrella activities Reusability management Reusability management Defines criteria for work products reuse Defines criteria for work products reuse Establishes mechanism to achieve reusable components Establishes mechanism to achieve reusable components Work product preparation and production Work product preparation and production Activities required to create work products such as models, documents, logs, forms and lists Activities required to create work products such as models, documents, logs, forms and lists

23 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 23 The Process Model: Adaptability the framework activities will always be applied on every project... BUT the framework activities will always be applied on every project... BUT the tasks (and degree of rigor) for each activity will vary based on: the tasks (and degree of rigor) for each activity will vary based on: the type of project the type of project characteristics of the project characteristics of the project common sense judgment; concurrence of the project team common sense judgment; concurrence of the project team

24 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 24 The Process Model: Adaptability Process models do differ fundamentally Process models do differ fundamentally The overall flow of activities and tasks The overall flow of activities and tasks Interdependencies among activities and tasks Interdependencies among activities and tasks The degree to which The degree to which work tasks are defined within each framework activity work tasks are defined within each framework activity work products are identified and required work products are identified and required Detail and rigor with which the progress is described Detail and rigor with which the progress is described Customer and other stakeholders are involved Customer and other stakeholders are involved Team organization and roles are prescribed Team organization and roles are prescribed

25 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 25 The Process Model: Adaptability Process models do differ fundamentally Process models do differ fundamentally The manner in which The manner in which quality assurance activities are applied quality assurance activities are applied project tracking and control activities are applied project tracking and control activities are applied Intent is to Intent is to Improve software quality Improve software quality Make projects more manageable Make projects more manageable Make delivery dates Make delivery dates Costs more predictable Costs more predictable Guide teams of software engineers Guide teams of software engineers

26 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 26 The CMMI The CMMI (The Capability Maturity Model Integration) defines each process area in terms of “specific goals” and the “specific practices” required to achieve these goals. The CMMI (The Capability Maturity Model Integration) 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 the activities implied by a process area are to be effective. Specific goals establish the characteristics that must exist if the activities implied by a process area are to be effective. Specific practices refine a goal into a set of process- related activities. Specific practices refine a goal into a set of process- related activities.

27 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 27 The CMMI To achieve different levels of process capability and maturity, SEI contends that an organization should develop a process model To achieve different levels of process capability and maturity, SEI contends that an organization should develop a process model Conforms to CMMI guidelines Conforms to CMMI guidelines CMMI represents a process meta-model in two ways CMMI represents a process meta-model in two ways As a continuous model As a continuous model As a staged model As a staged model

28 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 28 The CMMI Continuous CMMI meta-model describes the process in two dimension Continuous CMMI meta-model describes the process in two dimension Process area (project planning or requirement management assessed Process area (project planning or requirement management assessed Specific goals and practices Specific goals and practices

29 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 29 Process Patterns Process patterns define a set of activities, actions, work tasks, work products and/or related behaviors Process patterns define a set of activities, actions, work tasks, work products and/or related behaviors A template is used to define a pattern A template is used to define a pattern Typical examples: Typical examples: Customer communication (a process activity) Customer communication (a process activity) Analysis (an action) Analysis (an action) Requirements gathering (a process task) Requirements gathering (a process task) Reviewing a work product (a process task) Reviewing a work product (a process task) Design model (a work product) Design model (a work product)

30 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 30 Process Assessment The process should be assessed to ensure that it meets a set of basic process criteria that have been shown to be essential for a successful software engineering The process should be assessed to ensure that it meets a set of basic process criteria that have been shown to be essential for a successful software engineering. Many different assessment options are available: Many different assessment options are available: SCAMPI SCAMPI CBA IPI CBA IPI SPICE SPICE ISO 9001:2000 ISO 9001:2000

31 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 31 Assessment and Improvement

32 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 32 Personal Software Process (PSP) Recommends five framework activities: Recommends five framework activities: Planning Planning High-level design High-level design High-level design review High-level design review Development Development Postmortem Postmortem stresses the need for each software engineer to identify errors early and as important, to understand the types of errors stresses the need for each software engineer to identify errors early and as important, to understand the types of errors

33 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 33 Personal Software Process (PSP) Planning (activity) Isolates requirements Develops estimates Size Resource Defects Records metrics on worksheets Identifies development tasks Create project schedule

34 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 34 Personal Software Process (PSP) High level design External specifications are developed Component design is created Prototypes are built All issues are recorded and tracked High level design review Formal verification methods are applied to uncover errors in the design Metrics are maintained for all important tasks and work results

35 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 35 Personal Software Process (PSP) Development The component level design is refined and reviewed Code is Generated Reviewed Compiled Tested Metrics are maintained Postmortem Using the measures and metrics collected, the effectiveness of the process is determined

36 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 36 Personal Software Process (PSP) Stresses the need for each software engineer to identify errors early To understand the types of errors Rigorous assessment activity performed on all the work products produced by the software engineer PSP represents a disciplined, metrics-based approach

37 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 37 Team Software Process (TSP) Each project is “launched” using a “script” that defines the tasks to be accomplished Each project is “launched” using a “script” that defines the tasks to be accomplished Teams are self-directed Teams are self-directed Measurement is encouraged Measurement is encouraged Measures are analyzed with the intent of improving the team process Measures are analyzed with the intent of improving the team process

38 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 38 Team Software Process (TSP) Objectives Objectives Build a self directed project team Build a self directed project team Organizes itself to produce high-quality software Organizes itself to produce high-quality software Plan and track their work Plan and track their work Establish goals Establish goals Own their process and plans Own their process and plans Show managers how to coach and motivate their teams Show managers how to coach and motivate their teams Accelerate software process improvement Accelerate software process improvement Facilitate university teaching of industrial-grade team skills Facilitate university teaching of industrial-grade team skills

39 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 39 Team Software Process (TSP) TSP defines framework activities TSP defines framework activities Launch Launch High level design High level design Implementation Implementation Integration Integration Test Test Postmortem Postmortem TSP makes use of variety of TSP makes use of variety of Scripts, forms, and standards that serve to guide team members in their work Scripts, forms, and standards that serve to guide team members in their work

40 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 40 Team Software Process (TSP) TSP – Initial process activity TSP – Initial process activity Project launch Project launch Review project objectives with management and agree on and document team goals Review project objectives with management and agree on and document team goals Establish team roles Establish team roles Define the team’s development process Define the team’s development process Make quality plan and set quality targets Make quality plan and set quality targets Plan for the needed support facilities Plan for the needed support facilities Produce an overall development strategy Produce an overall development strategy Make detailed plans for each engineer for the next phase Make detailed plans for each engineer for the next phase Merge the individual plans Merge the individual plans Rebalance team workload to achieve overall schedule Rebalance team workload to achieve overall schedule Assess project risks assign tracking responsibility for each key risk Assess project risks assign tracking responsibility for each key risk

41 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 41 Process Technology Process technology tools allow a software organization to build an automated model of the common process framework, task sets, umbrella activities Process technology tools allow a software organization to build an automated model of the common process framework, task sets, umbrella activities Once an acceptable process has been created, other process technology tools can be used to allocate, monitor, and even control all software engineering tasks Once an acceptable process has been created, other process technology tools can be used to allocate, monitor, and even control all software engineering tasks

42 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 42 Summary Software engineering is a discipline that integrates Software engineering is a discipline that integrates Process Process Methods Methods Tools Tools A number of different process models for software engineering have been proposed A number of different process models for software engineering have been proposed All define All define A set of framework activities A set of framework activities A collection of tasks that are to be conducted to accomplish each activity A collection of tasks that are to be conducted to accomplish each activity Work products are produced as a consequence of tasks Work products are produced as a consequence of tasks

43 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 43 Summary A set of umbrella activities that span the entire process A set of umbrella activities that span the entire process Process patterns can be used to define the characteristics of a process Process patterns can be used to define the characteristics of a process The Capability Maturity Model Integration is a comprehensive process that describes the specific goals, practices, and capabilities that should be present in a mature software process The Capability Maturity Model Integration is a comprehensive process that describes the specific goals, practices, and capabilities that should be present in a mature software process Personal and team models for the software process have been proposed Personal and team models for the software process have been proposed Both emphasize measurement, planning, and self direction as key ingredients for successful software process Both emphasize measurement, planning, and self direction as key ingredients for successful software process

44 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 44 Summary The principles, concepts, and methods that enable us to perform the process that we call The principles, concepts, and methods that enable us to perform the process that we call SOFTWARE ENGINEERING

45 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 45 The Primary Goal of Any Software Process: High Quality Remember: High quality = project timeliness Why? Less rework!


Download ppt "These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by."

Similar presentations


Ads by Google