0% found this document useful (0 votes)
85 views4 pages

A Comparative Analysis of Different Types of Models in SDLC: SE-307.02 14IT066

The document discusses different software development life cycle (SDLC) models. It describes the original waterfall model, which is a sequential model where each phase must be completed before moving to the next. Key disadvantages are that it is difficult to go back to previous phases and the client may not provide clear requirements upfront. The document also discusses the iterative waterfall model, which breaks the project into smaller iterations that allow for feedback between phases and earlier demonstration of results.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
85 views4 pages

A Comparative Analysis of Different Types of Models in SDLC: SE-307.02 14IT066

The document discusses different software development life cycle (SDLC) models. It describes the original waterfall model, which is a sequential model where each phase must be completed before moving to the next. Key disadvantages are that it is difficult to go back to previous phases and the client may not provide clear requirements upfront. The document also discusses the iterative waterfall model, which breaks the project into smaller iterations that allow for feedback between phases and earlier demonstration of results.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

SE-307.

02
14IT066

Prof.Bimal h. Patel

A Comparative Analysis of different types of


models in SDLC
Hardip Parmar Department of Information Technology
Department of Information Technology Chandubhai S.Patel Institute of Technology
Chandubhai S.Patel Institute of Technology [email protected]
[email protected]
Software development teams, taking into account its goals
and the scale of a particular project, and have a number of
I INTRODUCTION well-established software development models to choose
from. Therefore, even though there are number of models
each software Development Company adopts the best-
A software development process, also known as a suited model, which facilitates the software development
software development life cycle (SDLC), is a structure process and boosts the productivity of its team members.
imposed on the development of a software product. It is There are four types of Model are:
often considered as a subset of system development life 1 Waterfall
cycle. There are several models for such processes, each 2 Iterative
describing approaches to a variety of activities that take 3 Prototype
place during the process.
4 Spiral.
Software Engineering (SE) is the application of a systematic,
disciplined, quantifiable approach to the development, operation,
and maintenance of software, and the study of these approaches;
II. PHASES OF SDLC
that is, the application of engineering to software because it
integrates significant mathematics, computer science and Problem solving in software consists of these activities:
practices whose origins are in Engineering. Various processes Understanding the problem
and methodologies have been developed over the last few Deciding a plan for a solution
decades to imp rove software quality, with varying degrees of Coding the planned solution
success. However, it is widely agreed that no single approach Testing the actual program
that will prevent project overruns and failures in all cases. For large systems, each activity can be extremely
Software projects that are large, complicated, poorly-specified, complex and methodologies and procedures are needed to
and involve unfamiliar aspects, are still particularly vulnerable to perform it efficiently and correctly. Furthermore, each of
large, unanticipated problems.
the basic activities itself may be so large that it cannot be
handled in single step and must be broken into smaller
steps. For example, design of a large software system is
A software development process is a structure imposed on always broken into multiple, distinct design phases,
the development of a software product. There are several starting from a very high level design specifying only the
models for such processes, each describing approaches to components in the system to a detailed design where the
a variety of tasks or activities that take place during the logic of the components is specified. The basic activities
process. It aims to be the standard that defines all the or phases to be performed for developing software system
tasks required for developing and maintaining software. are
Software Engineering processes are composed of many Determination of Systems Requirements
activities, notably the following: Design of system
Requirements Analysis , Development (coding) of software
Specification
Software architecture System Testing
Implementation
Testing
Documentation
Training and Support
aintenance

Fig1. Software Development Life Cycle

III. SOFTWARE DEVELOPMENT MODELS

Department of Information Technology Page 1


SE-307.02
14IT066

A) Original Waterfall Model


3 Disadvantage of original water model:
The Waterfall model is a conventional, linear, The biggest disadvantage of the waterfall model
sequentional or traditional waterfall software life cycle is one of its greatest advantages. You cannot go
model. It is a sequential development approach, in which back a step; if the design phase has gone wrong,
development is seen as flowing steadily downwards things can get very complicated in the
through the phases of requirements analysis, design, implementation phase.
implementation, testing (validation), integration, and Often, the client is not very clear of what he
maintenance. exactly wants from the software. Any changes
that he mentions in between may cause a lot of
1 Basic Principles confusion.
Project is divided into sequential phases, with Small changes or errors that arise in the completed
some overlap and splash back acceptable software may cause a lot of problems .
between phases. Another major disadvantage of the waterfall
model is that, until the final stage of the
Emphasis is on planning, time schedules, target development cycle is
dates, budgets and implementation of an entire
system at one time. Complete, a working model of the software does
not lie in the hands of the client.
Tight control is maintained over the life of the
project via extensive written documentation, B Iterative Waterfall Model
formal reviews, and approval/signoff by the user
and information technology management 1 Basic Principles
occurring at the end of most phases before
beginning the next phase. The problems with the Waterfall Model created a
demand for a new method of developing systems
2 Advantage of original water model: which could provide faster results, require less up-
front informat ion and offer greater flexibility.
Each stage has well defined deliverable or
milestone. Iterative model, the project is divided into small
It is simple to use and understand. parts. This allows the development team to
t acts as template into which methods for demonstrate results earlier on in the process and
analysis, design, code test and maintenance can obtain valuable feedback fro m system users.
be placed.
each iteration is actually a mini-Waterfall
process with the feedback from one phase
providing vital

Information for the design of the next phase

Fig2. Original Waterfall Model

Fig3. Iterative waterfall model


It is much better model of the software process.
It allows feedback to proceeding stages.
It can be used for project wherein the
2 Advantages- requirements are not well understood.

Department of Information Technology Page 2


SE-307.02
14IT066
3)Disadvantages-
It is not easy to manage this model. 2 Advantages-
No clear milestones in the development process. Early visibility of the prototype gives users an
No stage is really finished. idea of what the final system looks like
Encourages active participation among users and
C) Prototyping Model producer.
Enables a higher output for user.
Software prototyping is the development approach of Cost effective (Development costs reduced)
activities during software development, the creation of Increases system development speed
prototypes, i.e., incomplete versions of the software Assists to identify any problems with the efficacy
program being developed. of earlier design, requirements analysis and
1) Basic Principles coding activities .
Not a standalone, complete development
methodology, but rather an approach to handling 3Disadvantages-
selected parts of a larger, more traditional Possibility of causing systems to be left
development methodology. unfinished.
Attempts to reduce inherent project risk by Possibility of implementing systems before they
breaking a project into smaller segments and are ready.
providing more ease-of-change during the Producer might produce a system inadequate for
development process. overall organization needs.
User is involved throughout the development Often lack flexibility.
process, which increases the likelihood of user Not suitable for large applications.
acceptance of the final implementation. Project management difficulties.
Small-scale mock-ups of the system are
developed following an iterative modification D) Spiral Model
process until the Prototype evolves to meet
the users requirement .
The spiral model is a software development process
While most prototypes are developed with the combining elements of both design and prototyping -in-
expectation that they will be discarded, it is stages, in an effort to combine advantages of top -down
possible in some cases to evolve from prototype and bottom up concepts. It is a meta-model, a model that
to working system.
can be used by other models.
A basic understanding of the fundamental
business problem is necessary to avoid solving
the wrong problem. 1Basic Principles
Focus is on risk assessment and on minimizing
project risk by breaking a project into smaller
segments and providing more ease-of-change
during the development process, as well as
providing the opportunity to evaluate risks and
weigh consideration of project continuation
throughout the life cycle.
Each cycle involves a progression through the
same sequence of steps, for each part of the
product and for each of its levels of elaboration,
from an overall concept-of-operation document
down to the coding of each individual program.
Each trip around the spiral traverses four basic
Fig4. Prototype Model quadrants: (1) determine objectives, alternatives, and
constraints of the iteration; (2) evaluate
alternatives; Identify and resolve risks; (3)
develop and verify deliverables from the
iteration; and (4) plan the next iteration.
Begin each cycle with an identification of
stakeholders and their win conditions, and end
each cycle with review and commitment.

Department of Information Technology Page 3


SE-307.02
14IT066

Every time a new prototype is obtained ,it is


revaluated again and again by the customer
.so more customer involvement is there.
Better productivity through reuse
capabilities.
Proper control over cost,time and
manpower requirement for a project work.
Errors are eliminated in early phases of
project development only.
Fig 5 Spiral model

3) Disadvantages-
This model requires risk identification, its
projection, risk assessment and risk
management which is not an easy task.
Cost and time estimations are also not very
easy.
This model is not suitable for smaller
project as then the cost of risk analysis is
greater than cost of the entire project.

IV. Comparative Analysis of Four Models

Features Original water fall Iterative water fall Prototyping model Spiral model

Requirement Beginning Beginning Frequently Beginning


Specification Changed
Understanding Well Understood Not Well Not Well Well Understood
Requirements understood understood
Cost Low Low High Expensive

Availability of No Yes yes yes


reuseable component
Complexity of Simple simple complex complex
system
Risk Analysis Only at beginning No Risk Analysis No Risk Analysis yes
User Involvement in Only at beginning Intermediate High High
all phases of SDLC
Guarantee of Less High Good High
Success
Overlapping Phases No overlapping No Overlapping Yes Overlapping Yes Overlapping
Implementation time long Less Less Depends on project

Flexibility Rigid Less Flexible Highly Flexible Flexible

Table:1 Comparison of four models


change. It is an iterative approach to software development
V.CONCLUSION where variables like requirements, designing, building,
testing etc. run parallel to each other, in smaller timeframes
Agile model is best among all models.Agile is a called Sprints. In Agile software development methodology,
development method that is quick and responds swiftly to project requirements are not defined upfront, but evolve
naturally through collaboration with clients.
Department of Information Technology Page 4

You might also like