software development process models

30
Software Development Process Models

Upload: jenny

Post on 10-Feb-2016

56 views

Category:

Documents


3 download

DESCRIPTION

Software Development Process Models. The Waterfall Development Model. The Prototyping Approach. The Spiral Model. Iterative Development Process Model. The Object-Oriented Development Process. An eight step process (according to Branson and Herness) is divided into three phases - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Software Development Process Models

Software Development Process Models

Page 2: Software Development Process Models

The Waterfall Development Model

Page 3: Software Development Process Models

The Prototyping Approach

Page 4: Software Development Process Models

The Spiral Model

Page 5: Software Development Process Models

Iterative Development Process Model

Page 6: Software Development Process Models

The Object-Oriented Development Process An eight step process (according to

Branson and Herness) is divided into three phases

1. The Analysis Phase2. The Design Phase3. The Implementation Phase

Page 7: Software Development Process Models

The Eight Steps of OO Development Model the essential system Derive candidate-essential classes Constrain the essential model Derive additional classes Synthesize classes Define interfaces Complete the design Implement the solution

Page 8: Software Development Process Models

Reviews Included in the Eight Step Process Requirements review External structure and design review Class analysis and verification review Class externals review Code inspection

Page 9: Software Development Process Models

Agile Development – Extreme Programming (XP) by Beck The Planning Game System Metaphor Simple Design Pair Programming Unit Testing and Acceptance Testing Refactoring Collective Code Ownership Continuous Integration

Page 10: Software Development Process Models

Agile Development – Extreme Programming (XP) (Cont’d) On-site Customer 40-Hour Week Small Releases Coding Standard

Page 11: Software Development Process Models

The Cleanroom Methodology

Page 12: Software Development Process Models

The Defect Prevention Process

Page 13: Software Development Process Models

Process Maturity Frameworks and Quality Standards The SEI Process Capability Maturity

Model The SPR Assessment The Malcolm Baldrige Assessment ISO 9000

Page 14: Software Development Process Models

The SEI Process Capability Maturity Model (CMM)

CMM includes five levels of process maturity1. Initial – Chaotic 2. Repeatable – Informal methods/procedures3. Defined – Qualitative control of cost/schedule4. Managed – Statistical control of quality5. Optimizing – Quantitative basis for process

improvement

Page 15: Software Development Process Models

The SEI Process Capability Maturity Model (Cont’d)

The assessment methodology depends on a questionnaire.

The pervasive use of software metrics and models is a key characteristic of level 4.

The following metrics related topics are addressed by the questionnaire: Profiles of software size maintained for each

software configuration item over time Statistics on software design errors

Page 16: Software Development Process Models

The SEI Process Capability Maturity Model (Cont’d)

Topics are addressed by the questionnaire (cont’d): Statistics on software code and test errors Projection of design errors and comparison

between projected and actual numbers Projection of test errors and comparison

between projected and actual numbers Measurement of design review coverage Measurement of test coverage

Page 17: Software Development Process Models

The SEI Process Capability Maturity Model (Cont’d)

Topics are addressed by the questionnaire (cont’d): Tracking of design review actions to closure Tracking of testing defects to closure Database for process metrics data across all

projects Analysis of review data gathered during design

reviews

Page 18: Software Development Process Models

The SEI Process Capability Maturity Model (Cont’d)

Topics are addressed by the questionnaire (cont’d): Analysis of data already gathered to determine

the likely distribution and characteristics of the errors in the remainder of the project

Analysis of errors to determine their process-related causes

Analysis of review efficiency for each project

Page 19: Software Development Process Models

The Capability Maturity Model Integration (CMMI) The integration of CMMs for;

Software engineering Systems engineering Integrated product and process

development Acquisition

Page 20: Software Development Process Models

The Capability Maturity Model Integration (Cont’d) The five CMMI levels are:

1. Initial – Ad hoc and chaotic2. Managed – Focuses on basic project

management3. Defined – Focuses on process

standardization4. Quantitatively Managed – Focuses on

quantitative management5. Optimizing – Focuses on continuous

process improvement

Page 21: Software Development Process Models

The SPR Assessment

Developed by Software Productivity Research, Inc.

SEI focuses on software organizational structure and software process.

SPR focuses on strategic corporate issues and tactical project issues that affect quality, productivity, and user satisfaction.

Page 22: Software Development Process Models

The SPR Assessment (Cont’d) SPR questions regarding software

quality and metrics relate to: Quality and productivity measures Pretest defect removal experience among

programmers Testing defect removal experience among

programmers Project quality and reliability targets Pretest defect removal at the project level Project testing defect removal Postrelease defect removal

Page 23: Software Development Process Models

The Malcolm Baldrige Assessment The most prestigious quality award in the

United States Evaluation criteria cover:

Leadership Information and analysis Strategic quality planning Human resource utilization Quality assurance of products and services Quality results Customer satisfaction

Page 24: Software Development Process Models

ISO 9000

A set of standards and guidelines for a quality assurance management system

ISO 9000-3 covers software development

Twenty elements are evaluated1. Management responsibility2. Quality system3. Contract review4. Design control

Page 25: Software Development Process Models

ISO 9000 (Cont’d)

Twenty elements (cont’d)5. Document control6. Purchasing7. Purchaser-supplier product8. Product identification and traceability9. Process control10. Inspection and testing11. Inspection, measuring, and test equipment12. Inspection and test status

Page 26: Software Development Process Models

ISO 9000 (Cont’d)

Twenty elements (cont’d)13. Control of nonconforming product14. Corrective action15. Handling, storage, packaging, and delivery16. Quality records17. Internal quality audits18. Training19. Servicing20. Statistical techniques

Page 27: Software Development Process Models

ISO 9000 Software Metrics Requirements Product Metrics: Measurements should be

used for the following purposes: To collect data and report metric values on a

regular basis To identify the current level of performance on

each metric To take remedial action if metric levels grow

worse or exceed established target levels To establish specific improvement goals in

terns if metrics

Page 28: Software Development Process Models

ISO 9000 Software Metrics Requirements (Cont’d) At a minimum, some metrics should be

used that represent Reported field failures Defects from customer viewpoint

Page 29: Software Development Process Models

ISO 9000 Software Metrics Requirements (Cont’d) Process Metrics:

Ask if in-process quality objectives are being met

Address how well development process is being carried out with check-points

And how effective the development process is at reducing the probability that faults are introduced or go undetected

Page 30: Software Development Process Models

Differences Between MBNQA and ISO 9000 MBNQA is focused on quality results and

customer satisfaction. ISO 9000 is focused on a quality

management system and process control – “say what you do, do what you say, and prove it”