1 Software Process Models Flashcards
Code and fix leads to…
badly structured code non systematic improvements no real team work, as tasks can not be planned missing design and documentation complications in maintenance
Software Development Process
Waterfall model Spiral model V model RUP Agile methods
SDP Def
A description of a process from some particular perspective
Recommendations and guidelines for
-which activieties are to be carried out
-who has to carry out what
-which products are to be built until when
-which techniques and tools are to be used
Waterfall Model Phases
Planung Definition Entwurf Implementierung Testen Abnahme Einsatz u. Wartung
WM Disadvantages
Infelxible partitioning of the project into distinct stages
Insensitive to changing customer requirements
High-risk due to “big bang” integration
WM Applicability
Only feasible when requirements are well understood
Requires lot of exp. with dev. techniques and tools
Not well suited for complex and unprecedented projects
V-Model Modeling & Design Activities
Users expectiations User requirements Requirements specification System design Component specifications Component design Component Implementation -> TESTING
V-model Testing
MODELING
- > Executable components
- > Executable system
- > Usable system
- > Deployed system
Spiral model
I. Objective Setting (Determine objectives, alternatives, constraints)
II. Risk assessment and reduction (Evaluate alternatives, identify & resolve risks)
III. Implementation and validation (Develop, verify next-level product)
IV. Planning (Plan next phases)
Iterative Development
Project split into short fixed length mini-projects = iterations
Outcome of each is a tested, integrated executable PARTIAL system
ID Key Aspects
Typical assumtions:
- Successive enlargement -> incremental developement
- Successive refinement, cyclic feedback and adaptation -> evolutionary and adaptive development
Terms oftren used interchangeably with ID
- Iterative & Incremental Development IID
- Evolutionary Development
- Adaptive Development
An Increment
Each increment contains part of the req. funcitonality
Risk driven iterative development (riskiest features first)
client drive iterative development (client chooses)
normally combination of both is recommendet
ID Advantages
Early rather than late attetntion for high risks
early visible progress
early feedback
managed complexity
exp from iterations can be used to improve process itself
ID Disadvantages
Additional overhead involved in planning and integr.
refactoring may be needed as additional requirements are addressed
cost estimation is claimed to be harder
Rational Unified Process (RUP)
Disciplined approach to assing tasks and responsibilities within an organization in order to develop specific products
Roles -> Who?
-Defines a set of skills and responsibilities
Activities/Tasks -> How?
- Describes work packages that need to be carried out by a role
- Implementation in disciplines (aka workflows) in each iteration
Artifacts/Work Products -> What?
-Result of a task, eg, models and documents