Professional Documents
Culture Documents
Cmu 2
Cmu 2
Requirements
definition
System and
software design
Implementation
and unit testing
Integration and
system testing
Operation and
maintenance
Concurrent
activities
Initial
Specification version
Outline Intermediate
description Development versions
Final
Validation version
Requirements Requirements
specification refinement Adapt
components
Software Integrate
evaluation Components system
available Develop new
components
² Requirements specification
² Software discovery and evaluation
² Requirements refinement
² Application system configuration
² Component adaptation and integration
Requirements
elicitation and
analysis
Requirements
specification
Requirements
validation
System
descriptions
User and system
requirements
Requirements
document
Design inputs
Design activities
Database design
Design outputs
Component Acceptance
System testing
testing testing
² Component testing
§ Individual components are tested independently;
§ Components may be functions or objects or coherent groupings
of these entities.
² System testing
§ Testing of the system as a whole. Testing of emergent properties
is particularly important.
² Customer testing
§ Testing with customer data to check that the system meets the
customer’s needs.
Existing New
systems system
Establish Define
prototype prototype Develop Evaluate
objectives functionality prototype prototype
² Incremental development
§ Develop the system in increments and evaluate each increment
before proceeding to the development of the next increment;
§ Normal approach used in agile methods;
§ Evaluation done by user/customer proxy.
² Incremental delivery
§ Deploy an increment for use by end-users;
§ More realistic evaluation about practical use of software;
§ Difficult to implement for replacement systems as increments
have less functionality than the system being replaced.
System
incomplete?
Validate Integrate Validate Deploy
increment increment system increment
System
complete?
Final
system
Measure
Change Analyze
² Process measurement
§ You measure one or more attributes of the software process or
product. These measurements forms a baseline that helps you
decide if process improvements have been effective.
² Process analysis
§ The current process is assessed, and process weaknesses and
bottlenecks are identified. Process models (sometimes called
process maps) that describe the process may be developed.
² Process change
§ Process changes are proposed to address some of the identified
process weaknesses. These are introduced and the cycle
resumes to collect data about the effectiveness of the changes.
Level 5
Optimizing
Level 4
Quantitatively
managed
Level 3
Defined
Level 2
Managed
Level 1
Initial
² Initial
§ Essentially uncontrolled
² Repeatable
§ Product management procedures defined and used
² Defined
§ Process management procedures and strategies defined
and used
² Managed
§ Quality management strategies defined and used
² Optimising
§ Process improvement strategies defined and used
30/10/2014 Chapter 2 Software Processes 55
Key points