SE Models Q & A #8. Question:Give a description of prototyping model. Answer: - This is a working system and the objective of the model is to develop those ideas which are tested regarding a new system and could be used again. ... Prototype model provide the design which gives the thoughts how system did the works.
2. Spiral Model
In 1988 Boehm developed the spiral model as
an iterative model which includes risk
analysis and risk management.
1. Build some software
2. See if it meets customer requirements
3. If no goto 1 else stop.
3. Each cycle follows a waterfall model by:
1. Determining objectives
2. Specifying constraints
3. Generating alternatives
4. Identifying risks
5. Resolving risks
6. Developing next-level product
7. Planning next cycle
Spiral Model
6. Advantages
1. Realism: the model accurately reflects the
iterative nature of software development on
projects with unclear requirements
2. Flexible: incoporates the advantages of the
waterfal and rapid prototyping methods
3. Comprehensive model decreases risk
4. Good project visibility.
7. Disadvantages
1. Needs technical expertise in risk analysis to
really work
2. Model is poorly understood by non-technical
management, hence not so widely used
3. Complicated model, needs competent
professional management. High
administrative overhead.
9. Change In Projects
Changes From Requirements
Customers Learn from the Solution
Business Environment and Conditions Change
Business Processes are Re-engineered
Changes From Technology
Tools/Platform Release New Versions
Actual Tool/Platform Capabilities May Vary from Plans
Changes From People
Interactions are Complex
Individual Behavior is Unpredictable
10. Agile Processes
Extreme Programming
Scrum
Lean Development
DSDM
Crystal
Adaptive Software Development
Feature-Driven Development
11. XP Extreme Programming
Programming in pairs
Test driven development
Continuous planning, change , delivery
Continuous collaboration with customer
No overtime!
13. Advantages
Lightweight methods suit small-medium size
projects
Produces good team cohesion
Emphasises final product
Iterative
Test based approach to requirements and
quality assurance
14. Disadvantages
Difficult to scale up to large projects where
documentation is essential
Needs experience and skill if not to degenerate
into code-and-fix
Programming pairs is costly
Test case construction is a difficult and
specialised skill.
15. Synchronize-and-Stabilize
Model
Microsoft’s life cycle model
Requirements: Interview numerous potential
clients for the package and extract a list of
features of highest priority to the clients.
Draw up specifications
Divide the work into three or four builds.
The 1st build: Most critical features.
The 2nd build: The next most critical features.
Each build is carried out by a number of small teams
working in parallel.
16. Synchronize-and-Stabilize
Model
Synchronize at the end of each day:
Put the partially completed components
together and test and debug the resulting
product.
Stabilize at the end of each build:
Fix remaining faults and no further changes will
be made to the specifications
17. Advantages:
The repeated synchronization step ensures that
the various components always work together.
The regular execution of the partially
constructed product makes the developers gain
early insight into the operation of the product
and modify the requirements if necessary during
the course of a build.