All Units Ppts Walker Royce
All Units Ppts Walker Royce
All Units Ppts Walker Royce
INTRODUCTION:
Essential activities :
o Formulating the scope of the project (capturing the
requirements and operational concept in an information
repository)
o Synthesizing the architecture (design trade-offs, problem space
ambiguities, and available solution-space assets are evaluated)
o Planning and preparing a business case (alternatives for risk
management, iteration planes, and cost/schedule/profitability
trade-offs are evaluated)
Essential activities :
o Elaborating the vision (establishing a high-fidelity understanding
of the critical use cases that drive architectural or planning
decisions)
o Elaborating the process and infrastructure (establishing the
construction process, the tools and process automation support)
o Elaborating the architecture and selecting components (lessons
learned from these activities may result in redesign of the
architecture)
Essential activities :
o Resource management, control, and process optimization
o Complete component development and testing against
evaluation criteria
o Assessment of the product releases against acceptance criteria
of the vision
Essential activities :
o Synchronization and integration of concurrent construction into
consistent deployment baselines
o Deployment-specific engineering (commercial packaging and
production, field personnel training)
1.Assessment of deployment baselines against the complete
vision and acceptance criteria in the requirements set
Management Set
Planning Artifacts Operational Artifacts
1.Work breakdown structure 5.Release descriptions
2.Bussines case 6.Status assessments
3.Release specifications 7.Software change order database
4.Software development plan 8.Deployment documents
9.Enviorement
Release Specifications
Typical release specification outline :
I. Iteration content
II. Measurable objectives
A. Evaluation criteria
B. Follow-through approach
1.Demonstration plan
A. Schedule of activities
B. Team responsibilities
2.Operational scenarios (use cases demonstrated)
A. Demonstration procedures
B. Traceability
Two importanttoforms
vision and business case :
of requirements
vision statement (or user need) - which captures the contract
between the development group and the buyer.
evaluation criteria defined as management-oriented requirements,
which may be represented by use cases, use case realizations
or structured text representations.
"Software Project Management" Walker 42/112
Royce
Part 2
Artifacts of the Process
Management Artifacts
Vision document supports the contract between the funding authority and
the development organization.
It is written from the users perspective, focusing on the essential features
of the system.
It should contain at least two appendixes the first appendix should describe
the operational concept using use cases,
the second should describe the change risks inherent in the vision statement.
Deployment
Design Process Component View
View View View
The use case view describes how the systems critical use cases are realized
by elements of the design model.
It is modeled statically using case diagrams,
and dynamically using any of the UML behavioral diagrams.
The design view addresses the basic structure and the functionality
of the solution.
The process view addresses the run-time collaboration issues involved in
executing the architecture on a distributed deployment model,
including the logical software network topology, interprocess communication
and state management.
The component view describes the architecturally significant elements of
the implementation set and addresses the software source code realization
of the system from perspective of the project's integrators and developers.
1. Management workflow: controlling the process and ensuring win conditions for all
stakeholders
2. Environment workflow: automating the process and evolving
the maintenance environment
1.Requirements workflow: analyzing the problem space and evolving
the requirements artifacts
2.Design workflow: modeling the solution and evolving the architecture and
design artifacts
3.Implementation workflow: programming the components and evolving
the implementation and deployment artifacts
4.Assessment workflow: assessing the trends in process and product quality
"Software Project
5.Deployment workflow: transitioning theManagement" Walkerto the user
end products 51/112
Royce
Part 2
Workflows of the Process
Software Process Workflows
Management
Requirements
Design
Implementation
Assessment
Deployment
Management Management
Requirements Requirements
Design Design
Implementation Implementation
Assessment Assessment
Deployment Deployment
Transition Phase
Management
Requirements
Design
Implementation
Assessment
Deployment
Environment 10%
Effort 5% 20% 65% 10%
Requirements 10%
Implementation 25%
The second guideline prescribes the allocation
Assessment 25%
of effort and schedule across the life-cycle phases
Deployment 5%
Total 100%
Backward-looking:
1. The lowest level WBS elements are elaborated into detailed tasks,
for which budgets and schedules are estimated by the responsible
WBS element manager.
2. Estimates are combined and integrated into higher level budgets
and milestones.
3. Comparisons are made with the top-down budgets and schedule milestones.
Gross differences are assessed and adjustments are made in order to converge
on agreement between the top-down and the bottom-up estimates.
Organization
Manager
Software Engineering Project Review
Process Authority Authority
Software Engineering
Infrastructure
Environment Authority
Life-Cycle Focus
Inception Elaboration Construction Transition
Architecture prototyping Architecture base lining Architecture maintenance Architecture maintenance
Make/buy trade-offs Primary scenario demonstration Multiple-component issue Multiple-component issue
Primary scenario definition Make/buy trade-offs base lining resolution resolution
Performance tuning Performance tuning
Architecture evaluation criteria
Quality improvements Quality improvements
definition
Artifacts Responsibilities
Design set Component design
Implementation set Component implementation
Deployment set Component stand-alone test
Component maintenance
Component documentation
Life-Cycle Focus
Inception Elaboration Construction Transition
Prototyping support Critical component design Component design Component maintenance
Make/buy trade-offs Critical component Component implementation Component documentation
implementation and test Component stand-alone test
Critical component base line Component maintenance
Software Software
management management
50% 10%
Software Software Software Software Software Software
architecture development assessment architecture development assessment
20% 20% 10% 50% 20% 20%
Inceptio Elaboration
n
Transition Constructio
Software Software
management n management
10% 10%
Software Software Software Software Software Software
architecture development assessment architecture development assessment
5% 35% 50% 10% 50% 30%
Tools
o Support individual process tasks such as design
consistency checking, text editing, etc.
Workbenches
o Support a process phase such as specification or design,
Normally include a number of integrated tools.
Environments
o Support all or a substantial part of an entire software
process. Normally include several integrated
workbenches.
Budget cost and expenditures Financial insight, plan vs. actuals, Cost per month, full-time staff per
management indicator month, percentage of budget expended
Staffing and team dynamics Resource plan vs. actuals, hiring rate, People per month added, people per
attrition rate month leaving
Breakage and modularity Convergence, software scrap, quality Reworked SLOC per change, by type, by
indicator release/component/subsystem
Rework and adoptability Convergence, software rework, quality Average hours per change, by type, by
indicator release/component/subsystem
Environment 5% 10%
Requirements 5% 10%
Deployment 5% 5%
Software experts hold widely varying opinions about software economics and its
manifestation in software cost estimation models:
source lines of code function points
productivity quality
measures VERSUS measures
Java C++
Some of todays popular software cost models are not well matched
to an iterative software process focused an architecture-first approach
Many cost estimators are still using a conventional process experience
base to estimate a modern project profile
A next-generation software cost model should explicitly separate
architectural engineering from application production,
just as an architecture-first process does.
Two major improvements in next-generation software
cost estimation models:
Separation of the engineering stage from the production stage
will force estimators to differentiate between architectural scale and implementation
size.
Rigorous design notations such as UML will offer an opportunity
to define units of measure for scale that are more standardized and
therefore can be automated and tracked.
"Software Project Management" Walker 91/112
Royce
Part 4
Next-Generation Software Economics
Modern Software Economics
Aim.
Select a critical project. Staff it with the right team
of complementary resources and demand improved results.
Fire.
Execute the organizational and project-level plans with vigor and
follow-through.