Transcript Document

Eleventh Lecture Hour
9:30 – 10:20 am, Saturday,
September 16
Software Management Disciplines
Iterative Process Planning
(from Part III, Chapter 10 of Royce’ book)
Review –The Four Parts of the
Course
• Software Management
Renaissance
– The conventional software
management process.
– Five improvements to make
the waterfall process work.
• A Software Management
Process Framework
– Phases
– Artifacts
– Workflows
– Checkpoints
• Software Management
Disciplines
– Planning
– Organization
– Automation
– Process control and
instrumentation
– Tailoring
• Looking Ahead
– Modern project profiles
– Next-generation software
economics
– Modern process transitions
Review - Typical Minor
Milestones
Review - Checkpoints
Review - Summary for
Checkpoints of the Process
• Checkpoints provide for control of the
development process.
• Major Milestones are the Objectives, Architecture,
Initial Operational Capability, and the Product
Release Milestones.
• Minor Milestones are for iteration readiness and
iteration results reviews.
• Periodic Assessment Reviews are for focusing
management attention on the health of the project.
Part III – Software Management
Disciplines
–
–
–
–
–
Planning
Organization
Automation
Process control and instrumentation
Tailoring
Topic for Today
Iterative Process Planning
•
•
•
•
•
Work Breakdown Structures (WBS)
Planning Guidelines
The Cost and Schedule Estimating Process
The Iterative Planning Process
Pragmatic Planning
Conventional
WBS
Problems With Conventional
WBS
• No way to track ratio of productive activities to
overhead activities.
• No tracking of percentage of effort expended in
rework.
• No tracking of percentage of cost expended in
software capital equipment.
• Noo tracking of productive testing versus
unproductive integration.
• No tracking of cost of release N as a basis for
planning release N+1.
Recommended WBS
• First Level
– Workflows for WBS elements. Can be
allocated to single teams.
• Second Level
– Defined for each phase of the life cycle.
• Third Level
– Focus on the activities that produce the artifacts
of each phase.
Work Breakdown Structure
WBS (cont’d)
Tailoring of the WBS
• Scale
– Larger projects have more levels.
• Organizational Structure
– Subcontractors or associate contractors require additional
management subelements.
• Degree of Custom Development
– Fully custom requires more in design and implementation to
manage risks.
• Business Context
– Large contractual projects generally require additional levels for
management and accounting purposes.
• Precedent Experience
– Projects should exploit existing work and WBS development.
WBS Budgeting
Effort and Schedule By Phase
Iterations
• Inception stage
– Prototypes, critical use
cases, existing components,
custom component
prototypes.
• Elaboration stage
– Architecture, initialization,
scenarios, peak load
conditions, worst case
control flow, fault tolerance.
• Construction stage
– Alpha and beta releases,
execution of all critical
cases, 95% of capabilities
demonstrated.
• Transition stage
– Resolve all defects,
incorporate beta feedback,
incorporate performance
improvements.
Evolution of Planning
Cost and Schedule Estimating
Steps – Top Down
1. Software project manager characterizes overall
size, process, environment, people and quality.
2. Software manager makes a macro-level
estimate of effort and schedule using software cost
estimation model.
3. Software manager partitions the effort in toplevel WBS.
4. Subproject managers decompose each WBS
elemnt into lower levels.
Cost and Schedule Estimating
Steps – Bottom Up
1. Lower level WBS elements are elaborating
into detailed tasks by responsible WBS
element managers.
2. Estimates are combined and integrated into
higher level WBS elements.
3. Comparisons are made with the top down
budgets and schedule milestones. Large
differences are reconciled to converge on
agreements.
Planning Balance Across LifeCycle
General Observations
• Top down budgets and schedules tend to be
overly optimistic.
• Bottom up budgets and schedules tend to be
overly pessimistic.
• During Engineering Stages, top down
estimates dominate. During Production
Stages, bottom up estimates dominate.
Final Comments on Planning
• The book emphasizes three perspectives:
– Planning, requirements, architecture.
• The end products with these perspectives are a
software development plan, a requirements
specification, and an architecture description
document.
• On most successful projects, these thhree products
are not very important once they have been
produced.
– Rarely used by performers on a day-to-day basis, they
are not very interesting to the end user, and the paper is
just the tip of the iceberg with respect to the details that
underlie them.
Final Comments on Planning
(cont’d)
• HOWEVER,
– The act of planning is extremely important to project
success.
– It provides a framework and forcing function for
making decisions.
– It ensures buy-in by stakeholders and performers.
– It transforms subjective, generic process frameworks
into objective processes.
• Finally, plans are not just for managers. An open
and visible planning process results in more
ownership among all team members who execute
the plan.
Assignment for Next Class
Meeting
• Read Chapter 10 of Royce’ book, on iterative process
planning.
– Learn and discuss the similarities and the differences of top-level
organization of a conventional WBS and the top-level organization
of a modern WBS.
– Learn and discuss the similarities and the differences between the
four steps for a top-down cost and schedule estimate and the three
steps for a bottom-up cost and schedule estimate.
– Learn and discuss the similarities and the differences of the
contents of the iterations in each of the four development phases.