Академический Документы
Профессиональный Документы
Культура Документы
PROCESS MODELS
(PROJECT LIFE CYCLE MODELS)
Requirement
analysis, design
Integration &
system testing
Maintenance
Requirement analysis 2%
Design 12%
Coding & unit testing 8%
Int. & system testing 20%
Maintenance 58%
Design
Testing
Feasibility study
Coding
Effort
Time
Software Process Models 15
ITERATIVE WATERFALL MODEL
Feasibility
study.
Requirement
Analysis &
specification
Design
Coding &
unit testing
Integration &
system testing
Maintenance
Customer evaluation of
prototype
Accepted by customer
Design
Implement
(Coding)
Test
Maintain
Software Process Models 20
Prototyping Model
Need for a prototype in software development :
A C
A A
B B
C
Maintenance
Incremental Model
It combines linear sequential model with prototyping.
Each linear sequence produces a deliverable
‘increment’ of the software.
• Often bases on Functional Completeness
• The first increment is often a core product.
Useful when staffing is unavailable for a complete
implementation.
Software Process Models 27
c
Advantages :
Generates working software quickly and early during the
software life cycle.
C
More flexible – exact number of phase is not fixed.
Easier to test and debug during a smaller iteration.
Easier to manage risk because risks are identified and
handled during each iteration.
Advantages
Short development time.
Cost reduction due to software reuse and component-
based construction.
Drawbacks
For large projects, RAD requires sufficient human
resources to create the right number of RAD teams.
RAD requires a high level of commitment to rapid-
fire activities.
RAD requires developers and customers who are
committed to the schedule.
Not appropriate projects with high technical risk and
new technologies.
Evolutionary model:
Suitable for large problems that can be decomposed into a
set of modules for incremental development and delivery.
Widely used for object-oriented development project.
Customer feels the product is getting developed and get
adjusted to the new product.
Budget allocation by phases is possible.
Prototyping model:
Good for projects having no well-defined user
requirements.
Popular for user-interface part of the project. Product is
immediately visible.
Software Process Models 45
COMPARISON OF DIFFERENT LIFE CYCLE MODELS
Spiral model:
Meta model as it encompasses all other life cycle models.
Risk handling is inherently in-built.
Suitable for development of technically challenging
software products.
Model is more complex than others.