Professional Documents
Culture Documents
Process
Whats Up?!
G. Booch: The bad news is that the expansion of the
software systems in size, complexity, distribution, and
importance pushes the limits of what we in the software
industry know how to develop. Trying to advance legacy
systems to more modern technology brings its own set
of technical and organizational problems. Compounding
the problem is that businesses continue to demand
increased productivity and improved quality with faster
development and demployment. Additionally, the supply
of qualified development personnel is not keeping pace
with demand.
The net result is that building and maintaining software
is hard and getting harder; building quality software in a
repeatable and predictable is harder still.
Wrong Assumption 2:
We Can Get the Design Right on Paper before Proceeding
An iteration is a complete
development loop resulting
in a release (internal or
external) of an executable
product, a subset of the
final product under
development, which grows
incrementally from iteration
to iteration to become the
final system.
Use-Case-Driven Development
Process Configuration
Tools Support
LCO
Inception
Inception
Time
Preliminary
Iteration
Internal
Release
Product sufficiently
mature for customers
to use
Architecture
baselined
LCA
Elaboration
Elaboration
Acceptance
or end of life
IOC
Construction
Construction
PR
Transition
Transition
Final
Release
Duration of an Iteration
Major Artifacts
Stakeholder
Requests
Supplementary
Specification
Use-Case
Model
Risk
List
Business
Case
Vision
Software
Development
Plan
Glossary
Software
Architecture
Document
Test
Plan
Deployment
Plan
Software
Requirements
Specification
Product
Analysis
Model
Design
Model
Implementation
Model
Requirements
Requirements
Analysis
Analysis&&
Design
Design
Implementation
Implementation
Business
Use-Case Model
Use-Case
Model
Design
Model
Implementation
Model
Business
Domain Model
Use-Case
Model
Design
Model
Implementation
Model
Business
Process Model
Design
Model
Test
Test
Test Suite