Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


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

1 1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Supplementary Slides for Software Engineering: A Practitioner's Approach, 5/e Supplementary Slides for Software Engineering: A Practitioner's Approach, 5/e copyright © 1996, 2001 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. This presentation, slides, or hardcopy may NOT be used for short courses, industry seminars, or consulting purposes.

2 2 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Chapter 2 The Process

3 3 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 DEFINITION 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 [by Fritz Bauer]

4 4 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 DEFINITION (2)  (1) The application of systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software; that is, the application of engineering to software;  (2) The study of approaches as in (1)

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

6 6 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Process, Methods, Tools  SE process is the glue that holds the technology layer together and enables rational and timely development of software  SE methods provide the technical how-to’s for building software.  SE tools provide automated or semi- automated support for the process and the methods.

7 7 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 GENERIC VIEW  Definition phase – what  Development phase – how  Support phase – change (correction, adaptation, enhancement, prevention)

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

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

10 10 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Common Process Framework (2)  A common process framework is established by defining a small number of framework activities that are applicable to all software projects, regardless of their size and complexity  Task set, a collection of SE work tasks, project milestones, work product, and quality assurance points, enable the framework activities to be adapted to the characteristics of the project  Umbrella activities overlay the process model

11 11 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Capability Maturity Model (CMM)  Level 1: Initial – ad hoc, occasional  Level 2: Repeatable – basic project management processes are established  Level 3: Defined – process is documented, standardized, and integrated  Level 4: Managed – process and products are quantitatively understood and controlled using detailed measures  Level 5: Optimizing – quantitative feedback, innovative ideas and technology

12 12 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Process as Problem Solving

13 13 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 The Process Model: Adaptability  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 type of project (an “entry point” to the model)  characteristics of the project  common sense judgment; concurrence of the project team

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

15 15 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 The Linear Model

16 16 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Problems on linear model  Real project rarely follow the sequential flow  It is often difficult for the customer to state all requirements explicitly  The customer must have patience since the working version will not available until late in the project time-span

17 17 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Iterative Models Prototyping RAD

18 18 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Problems in prototyping  The customer sees what appears to be a working version of the software, which was built in rush  The developer often makes implementation compromises in order to get prototype working properly

19 19 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Rapid Application Development (RAD)  An incremental software development process model that emphasizes an extremely short development cycle.  Achieved using component-based construction  Requirements are well understood, and project scope is constrained  Phases: business modeling, data modeling, application generation, testing & turnover

20 20 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 RAD’s drawbacks  Requires sufficient human resources for large but scalable projects  Requires commitment from developers and customers to complete the system in short time  Not all types of applications are appropriate for RAD – good for modular, not for high performance system  Not appropriate when technical risks are high

21 21 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 The Incremental Model

22 22 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 An Evolutionary (Spiral) Model

23 23 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Still Other Process Models  Component assembly model—the process to apply when reuse is a development objective  Concurrent process model—recognizes that different part of the project will be at different places in the process  Formal methods—the process to apply when a mathematical specification is to be developed  Cleanroom software engineering—emphasizes error detection before testing


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

Similar presentations


Ads by Google