SPM Chapter12
SPM Chapter12
CHAPTER
Objectives
0
Select Project
1 Identify project
2
Identify project
scope and objective infrastructure
3
Analyze project
characteristics
4 Identify the
Review products and activities
5 Estimate effort
for activity
For each activity
Lower level detail
6 Identify
activity risks
9 Execute plan 8
Review/publicize plan
Three specifications:
• A functional specification
• A quality (or attribute) specification
• A resource specification
• Correctness
• Reliability
• Efficiency
• Integrity
• Usability
• Maintainability
• Testability
• Flexibility
• Portability
• Reusability
• Interoperability
• Scale
• Test
• Worst
• Plan
• Best
• Now
Reliability
• Availability
• Mean time between failures
• Failure on demand
• Support activity
Maintainability
• Flexibility plus
• New quality diagnosability
(average time to diagnose a fault)
Extendibility
• Quality of flexibility
• Productivity needed to incorporate a new feature
into an existing system expressed as a percentage
of the normal productivity when developing the
software from scratch
ERROR
• The later the error is found the more rework at more stages of
development will be needed. An error in the specification found
in testing will mean rework at all the stages between
specification and testing.
• The general tendency is for each successive stage of
development to be more detailed and less able to absorb
change.
ERROR
• Entry requirements
• Implementation requirements
• Exit requirements
• BS EB ISO 9001:2000
• An overview of BS EB ISO 9001:2000 QMS
requirements
• Capability process models
• Assessing software products
• Increasing visibility
• Procedural structure
• Checking intermediate stages
Inspections
Inspection means that when a piece of work is completed, copies of
the work are distributed to co-workers who then examine the work
nothing defects.
• It is a very effective way of removing superficial errors;
• It motivates developers to produce better structured and self-
explanatory software because they know that other people will
be criticizing it;
• It helps spread good programming practices as the participants
discuss the advantages and disadvantages of specific pieces of
code;
• It can enhance team spirit.
• A specification team
• A development team
• A certification team
Formal methods