Professional Documents
Culture Documents
JIGJIGA University
Software Process Management
Hand-out of Chapter 3
Process planning
Planning Objectives:
• To provide a framework that allows a software manager to make an estimate of
resources, cost, and schedule.
• Project outcomes should be bounded by 'best case' and 'worst case' scenarios.
• Estimates should be updated as the project progresses
• data to be processed or produced
• control parameters
• function
• performance
• constraints
• external interfaces
• reliability
Process planning is important to identify whether the following issues are achieved or not.
1. Major milestones –provide visibility to system wide issues, synchronize the management
and engineering perspectives and verify that the aims of the phase have been achieved.
2. Minor milestones – iteration-focused events, conducted to review the content of
iteration in detail and to authorize continued work.
3. Status assessments – periodic events provide management with frequent and regular
insight into the progress being made.
The purpose is not only to demonstrate how well a project is performing but also to
achieve:
Synchronize stakeholder expectations and achieve concurrence on three
evolving perspectives: the requirements, the design, and the plan.
Synchronize related artifacts into a consistent and balanced state.
Identify the important risks, issues, and out-of-tolerance conditions.
Perform a global assessment for the whole lifecycle, not just the current
situation of an individual perspective or intermediate product.
Milestones must have well-defined expectations and provide noticeable
results.
WORK BREAKDOWN STRUCTURE (WBS)
The Work Breakdown Structure (WBS) is the foundation for project planning
and control.
It is the connecting point for work and cost estimates, schedule information,
actual work effort/cost expenditures, and accountability.
It must exist before the project manager can plan these related and vital
aspects of the project, and they all must be planned before the project
manager will be able to measure progress and
Variance from plan.
In order to perform this vital function, the WBS is at its core a hierarchy of
deliverables or tangible outcomes.
A good WBS and its synchronization with the process framework are critical
factors in software project success.
The development of a WBS is dependent on the project management style,
organizational culture, customer preference, financial constraints, and
several other hard-to-define, project specific parameters.
A WBS is simply a hierarchy of elements that decomposes the project plan
into the discrete work.
A WBS provides the following information structure:
A description of all significant work
A clear task decomposition for assignment of responsibilities
A framework for scheduling, budgeting, and expenditure tracking.
CONVENTION WBS ISSUES:
Conventional WBSs are prematurely structured around the product design.
A concrete planning foundation has been set that is difficult and expensive to
change.
A WBS is the architecture for the financial plan.
Just as software architectures need to encapsulate components that are
likely to change, so must planning architectures.
To couple the plan tightly to the product structure may make sense if both
are reasonably mature.
However, a looser coupling is desirable if either the plan or the architecture is
subject to change.
Conventional WBSs are prematurely decomposed, planned, and budgeted in
either too little or too much detail.
Large projects tend to be under planned, and small projects tend to be over
planned.
In general, a WBS elaborated to at least two or three levels makes sense.
For large-scale systems, additional levels may be necessary in later phases of
the life cycle.
The basic problem with planning too much detail at the outset is that the
detail does not evolve with the level of fidelity in the plan.
Conventional WBSs are project-specific, and cross-project comparisons are
usually difficult or impossible.
Some of the following simple questions, which are critical to any
organizational process improvement program, cannot be answered by most
project teams that use conventional WBSs:
What is the ratio of productive activities (requirements, design,
implementation, assessment, deployment) to overhead activities
(management, environment)?
What is the percentage of effort expended in rework activities?
What is the percentage of cost expended in software capital
equipment (the environment expenditure)?
What is the ratio of productive testing versus (unproductive)
integration?
What is the cost of release N (as a basis for planning release N+1)?
EVOLUTIONARY WBSs
An evolutionary WBS should organize the planning elements around the
process framework rather than the product framework.