Software process
Roadmap
Who does?
• Software engineers
• Managers
• Software requested people
Importance
• Stability
• Control
Process flow
describes how the framework activities and the actions
and tasks that occur within each framework activity are
organized with respect to sequence and time
• linear process flow – sequence
• Iterative process flow- repeatition
• Evolutionary process flow – circular
• Parallel – acts parallel
DEFINING A FRAMEWORK ACTIVITY
• How does a framework activity change as the nature of
the project changes?
• phone conversation- 1. Make contact with
stakeholder via telephone.
• 2. Discuss requirements and develop notes.
• 3. Organize notes into a brief written statement of
requirements.
• 4. Email to stakeholder for review and approval.
IDENTIFYING A TASK SET
• eactual work to be done to accomplish the objectives
of a software engineering action.
• For example, elicitation (more commonly called
“requirements gathering”) is an important software
engineering action that occurs during the
communication activity
small, relatively simple project
• 1. Make a list of stakeholders for the project.
• 2. Invite all stakeholders to an informal meeting.
• 3. Ask each stakeholder to make a list of features and functions
required.
• 4. Discuss requirements and build a final list.
• 5. Prioritize requirements.
• 6. Note areas of uncertainty.
a larger, more complex software
project,
• 1. Make a list of stakeholders for the project.
• 2. Interview each stakeholder separately to determine overall wants and
needs.
• 3. Build a preliminary list of functions and features based on stakeholder
input.
• 4. Schedule a series of facilitated application specifi - cation meetings.
• 5. Conduct meetings.
• 6. Produce informal user scenarios as part of each meeting.
• 7. Refine user scenarios based on stakeholder feedback.
• 8. Build a revised list of stakeholder requirements.
• 9. Use quality function deployment techniques to prioritize
requirements.
• 10. Package requirements so that they can be delivered
incrementally.
• 11. Note constraints and restrictions that will be placed on
the system.
• 12. Discuss methods for validating the system.
What is a process pattern?
• process-related problem that is encountered during
software engineering work,
• identifies the environment in which the problem has
been encountered, and suggests one or more proven
solutions to the problem.
• Ambler [Amb98] has proposed a template for describing
a process pattern:
• Pattern Name.
• Forces. The environment in which the pattern is
encountered
• Types: Stage pattern= EstablishingCommunication
• Task pattern= RequirementsGathering
• Phase pattern= models
Initial Context
• (1) What organizational or team-related activities have
already occurred?
• (2) What is the entry state for the process?
• (3) What software engineering information or project
information already exists?
software process assessment
• Standard CMMI Assessment Method for Process
Improvement (SCAMPI)—
• CMM-Based Appraisal for Internal Process Improvement
(CBA IPI)—
• SPICE (ISO/IEC15504)
• ISO 9001:2000 for Software—