software life cycle models for presentation (2010)
TRANSCRIPT
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 1/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 2/62
SOFTWARE LIFE CYCLE
A life cycle model defines the phases, milestones,deliverables, and evaluation criteria of the software
development process. These form the basis of the work
breakdown structure (WBS), used for project planning
and management.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 3/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
Process interrelationships
IEEE 1074 standard (UML act
diagram, adapted from[IEEE
1074-1995]]. As suggested by
picture, dependencies amo
processes and activities
complex and seldom allow
sequential execution of proc
Process interrelationships
IEEE 1074 standard (UML act
diagram, adapted from [IEEE Std. 1074-1995]]. As su
by this picture, dependencies
processes and activities
complex and seldom allow
sequential execution of proc
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 4/62
Simple life cycles may have only three phases, Design, Development,
Maintenance; while complex life cycles may include 20 or more pha
Generally, software life cycles include the phases shown in Figure
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
Requirements
Design
Implementation
Testing
Deployment
Maintenan
Common Life Cycle
phases
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 5/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
Common Life Cycle Phases
Requirements
Design
Implementation
Testing
Deployment
Maintenance
Consists of analyzing the
problem or need for which thesoftware is being developed. This
analysis, a systems engineering
activity, develops and specifies
requirements, stating what thesoftware must do. In addition to
stated requirements,
requirements are derived from
higher-level requirements and
statements of need
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 6/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
The software structure is defined.
Technical approaches are chosen aproblems are solved conceptually.
phase is often divided into a
Preliminary Design Phase and a
Detailed Design Phase. In thepreliminary design the initial softw
architecture is developed. In the
detailed design, functional module
defined, along with user interfaces
interfaces between modules.
Common Life Cycle Phases
Requirements
Design
Implementation
Testing
Deployment
Maintenance
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 7/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
(sometimes called the Developmen
Phase) is where the programmingcoding takes place to execute the
software design. This phase is ofte
iterative, with unit and integration
testing being performed after asoftware build, and the results use
another round of programming.
Common Life Cycle Phases
Requirements
Design
Implementation
Testing
Deployment
Maintenance
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 8/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
Testing is often split into three sep
phases: Unit Testing, IntegrationTesting, and Acceptance Testing. T
first two may be part of a repeated
cycle of coding and testing, while
acceptance testing verifiesrequirements compliance.
Common Life Cycle Phases
Requirements
Design
Implementation
Testing
Deployment
Maintenance
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 9/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
The software is installed in th
intended system and users ar
trained in its operation. At th
point the software developme
effort is considered complete
Common Life Cycle Phases
Requirements
Design
Implementation
Testing
Deployment
Maintenance
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 10/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
1
Fixing errors and modifying or upgradin
software to provide additional functional
such as enabling the software to work wicomputing platforms. This phase costs fa
in time and effort than the original devel
Software maintainers must relearn the o
software code to understand what was do
then make changes to specific modules to
produce the desired effect without interfe
with rest of the software. It’s much easier
change requirements earlier than it is to
software code later. This also means that
software should be developed with maint
in mind
Common Life Cycle Phases
Requirements
Design
Implementation
Testing
Deployment
Maintenance
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 11/62
Life cycle Models
Build-and-fix modelWaterfall modelV-Shaped Model
Spiral modelSawtooth modelSharktooth Model
Unified Software Development Process
Issue-Based Life Cycle ModelThe Incremental Model
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
1
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 12/62
Build-And-Fix Model
The earliest approach
• Write code
• Fix it to eliminate any errors that have been detected, toenhance existing functionality, or to add new features
• Source of difficulties and deficiencies
• impossible to predict
•impossible to manage
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
1
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 13/62
Build-And-Fix Model Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
1
Build First
version
Modify until
client is satisfied
Maintenance
Phase
Retirement
Development
Maintenance
The easiest way to develop software
The most expensive way for maintena
(i.e., maintenance nightmare)
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 14/62
Build-And-Fix Model
• The product is implemented without requirements or specifications,or any attempt at design.
• The developers simply throw code together and rework it as manytimes as necessary to satisfy the client.
•
It is used in small project and is totally unsatisfactory for products ofany reasonable size.• It is the worst model for developing a project. The product is built
without proper specifications and design steps. In essence, theproduct is built and modified as many times as possible until itsatisfies the client.
• The cost of using this approach is greater than if specifications are
drawn up and a design is carefully developed. Software engineers arestrongly discouraged from using this development approach
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
1
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 15/62
Waterfall Model
This is the most common and classic of life cycle models, a
referred to as a linear-sequential life cycle model. It is ver
simple to understand and use. In a waterfall model, eachphase must be completed in its entirety before the next ph
can begin. At the end of each phase, a review takes place t
determine if the project is on the right path and whether o
not to continue or discard the project. Unlike what Imentioned in the general model, phases do not overlap in a
waterfall model.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
1
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 16/62
SNS COLLEGE OF TECHNOLOGY
Waterfall
Model
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 17/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
1
Requirements
Phase
Specification
Phase
Design
Phase
Implementation phase
Integration phase
Maintenance
Retirement
Changed Requirem
Waterfall Model
Development
Maintenance
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 18/62
Advantages
• Simple and easy to use.
•Easy to manage due to the rigidity of the model – eachphase has specific deliverables and a review process.
• Phases are processed and completed one at a time.
• Works well for smaller projects where requirements
are very well understood.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
1
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 19/62
Disadvantages
• Adjusting scope during the life cycle can kill a project
• No working software is produced until late during the
life cycle.• High amounts of risk and uncertainty.
• Poor model for complex and object-oriented projects.
• Poor model for long and ongoing projects.
•
Poor model where requirements are at a moderate tohigh risk of changing.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
1
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 20/62
V-Shaped Model
Just like the waterfall model, the V-Shaped life cycle is a sequential path oexecution of processes. Each phase must be completed before the next phase beginsTesting is emphasized in this model more so than the waterfall model though. The tprocedures are developed early in the life cycle before any coding is done, during eathe phases preceding implementation.
Requirements begin the life cycle model just like the waterfall model. Befdevelopment is started, a system test plan is created. The test plan focuses on meetifunctionality specified in the requirements gathering.
The high-level design phase focuses on system architecture and design. Aintegration test plan is created in this phase as well in order to test the pieces of thesoftware systems ability to work together.
The low-level design phase is where the actual software components are
designed, and unit tests are created in this phase as well.The implementation phase is, again, where all coding takes place. Once c
is complete, the path of execution continues up the right side of the V where the testdeveloped earlier are now put to use.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 21/62
V-Shaped Model Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 22/62
V-Shaped Model
In many aspects, the waterfall model and its variants aresimplistic abstractions of the software development process
The weakness of these models is that they assume that afteran activity is finished and reviewed the associated work product can be baselined. Such an idealized model is onlyappropriate if the specification of the requirements is of high level of assurance and does not change during
development. In practice, system development rarelyconforms to this ideal model.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 23/62
Advantages
• Simple and easy to use.
• Each phase has specific deliverables.
• Higher chance of success over the waterfall model due
to the development of test plans early on during the
life cycle.
• Works well for small projects where requirements are
easily understood.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 24/62
Disadvantages
• Very rigid, like the waterfall model.
• Little flexibility and adjusting scope is difficult and
expensive.• Software is developed during the implementation
phase, so no early prototypes of the software are
produced.
•Model doesn’t provide a clear path for problemsfound during testing phases.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 25/62
Spiral Model
The spiral model is similar to the incremental model, with more emphasesplaced on risk analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation. A software project repeatedly passesthrough these phases in iterations (called Spirals in this model). The baselinspiral, starting in the planning phase, requirements are gathered and risk isassessed. Each subsequent spirals builds on the baseline spiral.
Requirements are gathered during the planning phase. In the risk analysis phase, a process is undertaken to identify risk and alternate solutionA prototype is produced at the end of the risk analysis phase.
Software is produced in the engineering phase, along with testing
the end of the phase. The evaluation phase allows the customer to evaluate toutput of the project to date before the project continues to the next spiral.
In the spiral model, the angular componentrepresents progress, and the radius of the spiral represents cost.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 26/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2
Developers explore
alternatives, define
constraints, and
identify objectives.
Spiral Model
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 27/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2
Developers manage
risks associated
with the solutions
defined
during the first
phase
Spiral Model
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 28/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2
Developers realize
and
validate a prototype
or the part of the
system associated
with the risks
addressed in this
round.
Spiral Model
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 29/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
2Spiral Model
Focuses on the
planning of the next
round based on the
results produced inthe current round. The
last phase of the
round is usually
conducted as a
review involving the
project participants,
including developers,
clients, and users.
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 30/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 31/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 32/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 33/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 34/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 35/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 36/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 37/62
• The spiral model proposed by Boehm is an iterative model with th
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 38/62
Spiral Model
• The spiral model proposed by Boehm is an iterative model with thfollowing activities• Determine objectives and constraints
• Evaluate Alternatives
• Identify risks• Resolve risks by assigning priorities to risks
• Develop a series of prototypes for the identified risks starting with thhighest risk.
• Use a waterfall model for each prototype development (“cycle”)
• If a risk has successfully been resolved, evaluate the results of the “cyand plan the next round
• If a certain risk cannot be resolved, terminate the project immediately
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
3
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 39/62
Advantages
• Provides early indication of insurmountable risks, without
much cost
• Users see the system early because of rapid prototyping tools
• Critical high-risk functions are developed first
• The design does not have to be perfect
• Users can be closely tied to all lifecycle steps
• Early and frequent feedback from users
• Cumulative costs assessed frequently
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
3
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 40/62
Disadvantages
• Time spent for evaluating risks too large for small or low-risk projects
• Time spent planning, resetting objectives, doing risk analysis andprototyping may be excessive
• The model is complex
• Risk assessment expertise is required
• Spiral may continue indefinitely
• Developers must be reassigned during non-development phaseactivities
•May be hard to define objective, verifiable milestones that indicatereadiness to proceed through the next iteration
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
4
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 41/62
Sawtooth Model Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
4
Client’s Understanding
Developer’s Understanding
RequirementsElicitation
Implementation
SystemDesign
ObjectDesign
RequirementsAnalysis
Unit Test
PrototypeDemonstration 2 A
SysteIntegra
& Te
Integration& Test
PrototypeDemonstration 1
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 42/62
The life cycle models we described until now emphasize themanagement of software developers. They do not address theneeds of the customer or the user. The waterfall model, the V
model and the spiral model all assume that the softwarerequirements will not change drastically during the duration of the project and that it is sufficient to show progress according tothe development plan. The drawback of this approach is that theclient and the user do not see a running system before the client
acceptance test, and thus, cannot correct any requirementproblems.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
4Sawtooth Model
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 43/62
Sharktooth Model Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
4
User’s Understanding
System RequirementsElicitation
Implementation
System Design
ObjectDesign
Requirements Analysis
UnitTest
PrototypeDemo 1
PrototypeDemo 2
D
DesignReview
Cl Acc
SysteIntegr& Tes
ComponenIntegrat& Test
Manager’s Understanding
Developer’s Understanding
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 44/62
The shark tooth model is a refinement of the sawtooth model. Inaddition to the client demonstrations (large teeth) management reviewsand demonstrations are introduced as well (small teeth).
For example, large teeth can include a functional prototypeand a user interface mock-up. The former demonstrates the feasibility othe functions that will be implemented in the system, whereas the latterillustrates the layout (or look and feel) of the user interface. Small teethcan include a system integration prototype that demonstrates theinteraction between the components of the system. Such an integration
prototype can be built as soon as the components are selected and neednot implement any functionality
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
4Sharktooth Model
E tit t d lif l i f th
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 45/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
4
Use case model
Analysis model
Design model
Implementation
model
Deployment
model
Test model
specified by
realized by
distributed by
implemented by
verified by
Unified Software
Development Process
Entity-centered life cycle view of the
of the Unified Process (UML class d
the dependencies depict traceability. T
dependencies between all models. O
dependencies between the use case m
the other models are shown
[Jacobson et al., 1999].
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 46/62
The Unified Software Development Process (also called theUnified Process) is a life cycle model proposed by Booch,Jacobson, and Rumbaugh [Jacobson et al., 1999]. Similar to
Boehm’s spiral model, a project consists of several cycles, eachof which ends with the delivery of a product to the customer.Each cycle consists four phases: Inception, Elaboration,Construction, and Transition. Each phase itself consists of anumber of iterations. Each iteration addresses a set of related use
cases or mitigates some of the risks identified at the beginning ofthe iteration.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
4
Unified Software
Development Process
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 47/62
Issue-Based Life Cycle ModelWednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
4
i1:Issue
status={Closed}
i2:Issue
status = {Open}
i3:Issue
status = {Open}
i5:Issue
status = {Open}
i5:Issue
status={Closed}
i6:Iss
status =
Snapshot o
issue base (U
diagram). Is
i5 have been
whereas all o
are stillDependenc
issues indica
resolution o
can const
alternati
dependen
In the following we describe an entity-centered life cycle model, called the
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 48/62
g y y
issue-based life cycle model that aims at dealing with frequent changes. This
model is based on the rationale behind the system as an issue model (see
Chapter 8, Rationale Management). Each project starts with a set of issues. If
the project starts from scratch, these issues are drawn from the project
manager’s experience or from a standard template. In a re-engineering or
interface project, issues may be available from the issue model of the previous
project. If the project has a long history, the rationale should be well populated.
Examples of issues are “How do we set up the initial teams?”, “Should the
mechanic have access to driver-specific information“, “What is the appropriate
middleware?” or “What software architecture shall we use?”, “What should weuse as implementation language”? All issues are stored in an issue base that is
accessible to all project participants
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
4Issue-Based Life Cycle Model
• It combines elements of the waterfall model applied in an
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 49/62
The Incremental Model
• It combines elements of the waterfall model applied in aniterative fashion
• It delivers a series of releases, called increments, that provideprogressively more functionality for customer as each
increment is delivered• When it is used, the first increment is often a core product.
That is, basic requirements are addressed, but manysupplementary features remain undelivered
• The core product is used by customer. As a result, a plan is
developed for next increment
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY4
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 50/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY5
The Incremental Model
• This model focuses on the delivery of an operational
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 51/62
The Incremental Model
This model focuses on the delivery of an operational
product with each increment
• Incremental development is particularly useful when
staffing is unavailable for a complete implementation bythe business deadline. Early increments can be
implemented with fewer people, and additional staff can
be added to later increments
•Increments can be planned to manage technical risks
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY5
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 52/62
Advantages
• It generates working software quickly and early duringthe software life cycle.
• Flexibility is more and less costly.
• Testing and debugging becomes easier during a smalleriteration.
• Risk can be managed more easily because they can beidentified easily during iteration.
• Early increments can be implemented with fewer people.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY5
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 53/62
• Each phase of an iteration is rigid and do not overlap each
other.• Problems may arise pertaining to system architecture
because not all requirements are gathered up front for the
entire software life cycle.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY5Disadvantages
• RAD (Rapid Application Development) is an incremental SW
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 54/62
The RAD Model
process model that emphasizes a short development cycle
• RAD model is a “high-speed” adaptation of the waterfallmodel, in which rapid development is achieved by using a
component-based construction approach• If a business application can be modularized in a way that
enables each major function to be completed in less than 3months, it is a candidate for RAD
• Each major function can be addressed by a separate RAD team and
then integrated to form a whole
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY5
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 55/62
The RAD ModelWednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
5
A il ft d l t i f ft d l t
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 56/62
Agile Software Development
Agile software development is a group of software developmentmethodologies based on iterative and incremental development,where requirements and solutions evolve through collaborationbetween self-organizing, cross-functional teams. It promotesadaptive planning, evolutionary development and delivery, atime-boxed iterative approach, and encourages rapid and flexibleresponse to change. It is a conceptual framework that promotesforeseen interactions throughout the development cycle. The Agile Manifesto[1] introduced the term in 2001. Agilemanagement methods can also be applied in other developmentprojects than software development.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY5
Agile methods break tasks into small incremen
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 57/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY5 Agile Software Development
minimal planning, and do not directly involve l
planning. Iterations are short time frames (time
that typically last from one to four weeks. Each
involves a team working through a full softwar
development cycle including planning, requirem
analysis, design, coding, unit testing, and accep
testing when a working product is demonstrated
stakeholders. This minimizes overall risk and a
project to adapt to changes quickly. Stakeholde
produce documentation as required. An iteratio
not add enough functionality to warrant a markrelease, but the goal is to have an available rele
minimal bugs) at the end of each iteration.[9] M
iterations may be required to release a product
features.
− “Spiral Model as a Tool for Evolutionary Acquisition” www.stsc.hill.af.mil/crosstalk/2001/may/boehm.asp
− “Prototypes: Tools That Can Be Used and Misused” www.stsc.hill.af.mil/crosstalk/1994/jan/xt94d01g.asp
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 58/62
Reference :Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
5
− “Extreme Methodologies for an Extreme World” www.stsc.hill.af.mil/crosstalk/2001/jun/leishman.asp
− “Balancing Discipline and Flexibility With the Spiral Model and MBASE”
www.stsc.hill.af.mil/crosstalk/2001/dec/boehm.asp
− “Customizing the Software Process to Support Avionics Systems Enhancements”
www.stsc.hill.af.mil/crosstalk/2001/sep/donzelli.asp
− “Tailoring a Software Process for Software Project Plans Part 1: Context and Making Tailoring Decisions”
www.stsc.hill.af.mil/crosstalk/1996/apr/tailorin.asp
− “Tailoring a Software Process for Software Project Plans Part 2: Documenting the Project's Defined Software
Process” www.stsc.hill.af.mil/crosstalk/1996/may/tailorin.asp
− “MIL-STD-498: What's New and Some Real Lessons Learned”
www.stsc.hill.af.mil/crosstalk/1996/mar/lesslear.asp
DeGrace, Peter and Stahl, Leslie, Wicked Problems, Righteous Solutions: A Catalogue of Modern Software
engineering
Paradigms, Yourdon Press.Department of Energy (DOE) Software Engineering Methodology, Chapter 2:
http://cio.doe.gov/sqse/sem_toc.htm
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 59/62
And that’s it. If you have any input,
especially your views on advantages anddisadvantages of any particular model,
feel free to leave them in the comments
and I can add them to my copy.
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
5
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 60/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
6
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 61/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
6
8/3/2019 Software Life Cycle Models for Presentation (2010)
http://slidepdf.com/reader/full/software-life-cycle-models-for-presentation-2010 62/62
Wednesday, May 02, 20SNS COLLEGE OF TECHNOLOGY
6