International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
SURVEY ON SOFTWARE DEVELOPMENTPROCESSING MODELS
Nancy Bindal1, Aanchal Mehta2
1
Assistant Professor, Department of CSE, Maharishi Markandeshwar University, Mullana, Ambala, Haryana, India
2
M.Tech Research Scholar, Department of CSE, MMU, Mullana, Ambala, Haryana, India
ABSTRACT:
Software development process is concerned with
production of software. Software cycles a process
used by a systems analyst to develop an
information
system,
including
software
productivity, cost, and overall quality.
Keywords:
Software Engineering, Life cycles models
I INTRODUCTION
Software engineering is the process of creating
new systems. Some methodologies use to develop
systems. The concept generally refers to software
product and information systems. In software
engineering concept underpins many kinds of
software development methodologies. These
methodologies work on framework of system for
planning and controlling software system.
Software development process is concerned with
production of software. Software cycle is a
process used by a systems analyst to develop an
information
system,
including
software
productivity, cost, and overall quality. Software
cycles are representation of a software process. It
presents some particular perspective. A software
cycle is either prescriptive or descriptive.
Software cycles should deal with system design,
creation and maintenance .software cycles work
on strategies to produce a software system A
software life cycle models a standardized format
for planning organizing, and running [1]
II SOFTWARE LIFE CYCLE MODELS
1. System development life cycle
2. Waterfall model.
ISSN – 2394-0573
3.
4.
5.
6.
7.
8.
9.
Iterative model.
V-shaped model.
Spiral model.
Incremental Method
prototyping model
The Big Bang Model.
System development life cycle
III SDLC:
Any information system project fallows a logical
series of development phases these are known as
system development life cycle. SDLC is process
creating and altering systems.
Planning
The
goal of planning is to costs, personnel
requirements and quality assurance of the software
developed .one must know what the problem is
before it can be solved. The analyst first task is to
prepare state next problem then reviews it with the
users for accuracy.
All Rights Reserved © 2014 IJEETE
Page 100
International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
Analysis
is a detail study of the various operation
performed by a system & their relationships with
inside & outside of the system during analysis
data is collected on the available files ,decisions
points transaction handled by present system
.analysis gathers requirements for the system .
This stage given detailed study of the needs of the
organization.
Design
The term design describe of find system the
process by which it is develop it refers to the
technical specification that with be applied in
implementing the candidate system it also include
the construction of program & program testing.
because of some unexpected input values into the
system. Changes in the system could affect the
software operations. Maintance is continued to
bring the new system to standard.
Advantage
1. SDLC cycle end of each stage allowing
maximum management control.
2. Progress of this system is measurable.
3. SDLC documentation produces the system
requirements can be traced back to stated business
4.
SDLC requires sign-off requirements.
Disadvantage
1. SDLC is Time consuming.
Development
2. SDLC never uses never backward loop.
Development is concerned with the production of
software. The covers a wide range of
methodologies and tools created for the purpose.
The general approaches for organizing a project
into activities. This phase supported management
of software development.
3. Software that follows the SDLC program is it
encourages stiff implementation instead of
creativity.
4. They gave large difficulty responding to
changes [3]
INTEGRATION AND TESTING
IV WATERFALL MODEL
This phase is different unit are integrated
.integration testing is performed after units testing.
the verifying consistency and completeness of
modules. Check the validating the performance of
the system.
Implementation
it is concern with user trainer side preparation ,
file conversion when the candidate system is link
to
terminals
or
remote
sides
the
telecommunication network & test of the network
along with system are also included under
implementation.
The waterfall model the common and classic life
cycle model which introduced by Winston
Royce. In Software Engineering to ensure
success of the project. In "The Waterfall"
approach, the whole process of software
development is divided into separate phases. In
Waterfall model, typically, the outcome of one
phase acts as the input for the next phase
sequentially. It referred as a linear –sequential
life cycle model. The project is right path
whether or not to continue then discard software.
Following is a diagrammatic representation of
different phases of waterfall model
Maintenance
System definitely undergo changed it when
delivered to the customer. Change could happen
ISSN – 2394-0573
All Rights Reserved © 2014 IJEETE
Page 101
International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
All the units developed entire system tested for
any faults and failures. Validating their operation
and specifications .software is distinguishing
attribute of system indicating the degree of
excellence. The product is verification in the
customer environment and market.
Maintenance
The sequential phases in Waterfall model are:
Requirement
Software is always is large system work with
requirements for all systems elements the
software is essential when software interface
with such elements are hardware people and
resources .the system is re-engineered and
spruced up. The requirement team studies the
methodologies of the system.
Design
In defined the design includes use age of existing
components. They represent “how “phase
programming languages, application, architecture,
algorithms, structures are established. Design
describes to implement the requirements. Design
phase could be expansive to solve later stage of
the software system
Implementation
The code is generated, the program testing
begins. This phase deals with issues of quality,
performance, and debuggers. They use testing
tools that are made own development operations
implementation phase overlap testing phase act as
a system whole.
Verification
ISSN – 2394-0573
There are some short issues are come client
environment. To fix some issues patches are
released. Also to en some better versions are
released. Maintenance is done when changes into
customer environment.
Maintenance reaches
with
changing accommodate process. All these
phases are cascaded to each other in which
progress is seen as flowing steadily downwards
(like a waterfall) through the phases. The next
phase is started only after the define set of goals
are achieved for previous phase and it is signed
off, so the name "Waterfall Model". [4]
Advantages
This model is simple and easy to use.
This model work on series of stage.
In this model phases are completed one at a
time. Phases do not overlap.
Waterfall model works well and understood
smaller projects.
Disadvantages
In this waterfall approach High amounts of
risk and uncertainty.
No working software is produced for complex
problems.
The model is difficult to change once are
prepared
Inflexible partitioning held in software during
life cycle.[5]
V ITERATIVE MODEL:
Iterative model is any combination of
both iterative design or iterative method .iterative
process describe software process cycles of
All Rights Reserved © 2014 IJEETE
Page 102
International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
activates of software .The key idea behind this
cycles to solve problem through iterations .each
iterative identify some problem and solve these
issues. This method is developing a system
through repeated cycles and in smaller part of a
time.
Iterative
involves
redesign
and
implementation to be simple, straightforward, and
modular, supporting that stage or task added to
project control list.
current requirements are reviewed, and changes
additions to requirements propose. Decision made
whether
software
will
be
discarded.
Testing
Even point will be reached when the requirements
are complete and the software can be delivered the
testing is done to software is ready according to
the requirements of the users. [6]
Advantages
1. The model accurate reflects iterative nature of
software’s on project with unclear requirements.
2. It is flexible as it incorporates advantage of
waterfall and rapid prototyping methods,
3. Good project visibility in the project.
4. The model is a comprehensive and decreases
risk in software.
Requirement
In this phase software are analyzed. The result
given requirements phase produces a complete
and final specification of requirements. The
specification is process establishing what services
are required for software.
Design & Development
In design solution for software is designed which
meets requirements they extension of the
existing. Describes features and operations in
detail, including screen layouts, rules, process
diagrams, pseudo code and Documentation. The
development phase refers to developed software
generation. The first pass is initial development
cycle. Life of product stops existing software
evolve next generation by sequence of inception,
elaboration, construction and transition phase
develop a software.
Implementation
The software is implemented for solving
problems. A phase, is software is evaluated,
ISSN – 2394-0573
Disadvantages
1. It needs technical expert to solve risk analysis
.
2. The model is not understood by non –technical
management.
3. In this model each phase is rigid with no
overlaps.
4. This model is a complicated model that needs
competent professional management. [7]
VI V-SHAPED MODEL
V- Model means Verification and Validation
model. It called V-shaped represent like waterfall
model, this cycle is a sequential path of execution
of processes. Each phase must complete before
next phase begins. Testing emphasize more than
waterfall model. Testing procedure is developed
in cycle prior any coding done .each phase
preceding implementation. It modified U-shaped
model.
Diagram of V-model:
All Rights Reserved © 2014 IJEETE
Page 103
International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
Coding
This is the bottom of V-Shape model. Module
design is converted into code by developers.
Testing
In this phase different unit are integrated than
overall system is tested .testing is performed all
units of components.[8]
Advantage
1. It is very simple and easy to use.
The various phases of the V-model are as follows:
Requirements
BRS and SRS begin cycle model like waterfall
model. in this model before development is
started, a system test planning is created. The
test plan focuses on meeting the functionality
specified in the requirements gathering.
2. Each phase
deliverables.
this
model
have
specific
3. It works welled understood for small projects
where requirements are easily handled.
4.high chances for success there than other models
due to development of test plans during the cycle
process.
The high-level design (HLD)
Disadvantage
Phase focuses a software architecture and design.
It provides overview of solution, platform,
software and service. Any plan is created this
phase as well order to test pieces of the software
systems ability to work together.
1. This model is very rigid like other models.
2. Flexibility and adjusting scope is difficult and
much more expansive.
3. Model not provide clear path for problems
that are found on the testing phase
The low-level design (LLD)
Phase in which actual software components are
designed. It defines the logic for each and every
component of the software Class diagram with all
methods and relation comes under LLD.
Component tests are created in phase as well.
4. The prototypes of software are produced
.because developed started in implementation
phase.[9]
Implementation:
The spiral model is same to incremental model.
This is a risk-driven process model generator for
software’s. Based upon unique risk patterns of a
given for software .In development process
represented as spiral rather a sequence of activities
Implementation phase where all coding takes
place. Once coding is complete, the path of
execution continues up right side of the V where
the test plans developed now put to use.
ISSN – 2394-0573
VII SPIRAL MODEL
All Rights Reserved © 2014 IJEETE
Page 104
International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
with backtracking each loop. In which no fixed
phases for as specification and design loops in the
process .A software repeatedly passes through
phases in iterations called spirals in this model.
This model combines adding features of
prototyping and waterfall model and is advantages
for large, complex, and expensive software’s.
next prototype thus, comprises development plan,
integration plan, and test plan.
Evaluation phase
This phase allows customer to evaluate output of
the software to date before the processing
continues to the next spiral. This model is each
phases are completed by a review conducted by
users. This includes review of all intermediate
software, which developed during the phases.
Plan for next evaluation and resources required for
this phases. [10].
Advantages
Planning Phase
All objective are gathered during this phase
.special requirements are identified this phase.
Each phase of quadrant come with identifying the
goals for that process, it determines alternatives,
they are possible accomplishing those goals.
Risk Analysis:
The process is undertaken identify risk and
alternate solutions. A prototype is produced at
end of risk analysis phase. If any risk found during
risk analysis then alternate solutions are
implemented. Development process of the
software
depends
on
remaining
risks.
Quadrant develops the final software while
considering risks can be occurring. Risk analysis
considers time and effort to be devoted to each
phase activity such as planning, quality assurance,
verification, and testing.
Engineering Phase
Software is developed in this phase, along
with testing point at the end of phase. Hence this
phase development and testing is done. A
processing phase plans next step and planning for
ISSN – 2394-0573
They produced high amount of risk analysis
hence, avoidance of Risk enhanced.
They Good for large and-critical software’s.
Additional requirements are also added at later
date.
Strong approval and documentation control in
this model..
Disadvantages
They Can costly evaluation model to use.
Risk analysis require highly specific expertise
to solve major problems
Spiral model
doesn’t specified for small
software .
software success is highly dependent on risk
analysis phase.[11]
VIII INCREMENTAL MODEL
This model applies linear sequences staggered
progress applied. In incremental model whole
process is divided into various builds. Multiple
development phases take place here, making the
cycle a“multi-level” cycle. Cycles are divided up
into smaller, more easily managed modules. Each
module go through different phases such as
requirements, design, implementation and testing
phases. Software should break into separate sub
phases. Each sub phases
are released of the
module add function to previous release. The
All Rights Reserved © 2014 IJEETE
Page 105
International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
process continues till complete software is
achieved. The software as finished when it
satisfies all its requirements . This allows partial
utilization of software and avoids a long time
This model
helps ease traumatic effect
introducing a completely new product all at
nce[12].
assess impact and risk new features link and create
and improve development of model.
Implementation
Incremental methodology is generally test and
debug in implementation phase. relatively
smaller changes are made during each increment.
This allows targeted and rigorous testing of each
element within the overall software. Using the
Incremental methodology even after
first
increment expectation product is ready .This
means all phases must be tested and passed. This
phase can link Test Cases to Requirements to
establish coverage; however, can also use simple
approach of testing and all Test Cases directly
passed.
Testing
Requirements
and
analysis
Incremental model
usually a short list of
requirements that need to be defined and then
quickly converted into processing
model
provides a Requirement Management module that
allows create and track requirements. Whether
Releases
software
increments .can easily
organized your requirements in the way that give
works best for environment. And analysis the
software modules.
After each increment, regression testing be
conducted. During this testing, faulty elements of
software can be quickly identified few changes
are see single increment. In testing against specific
Test Cases , Test Case folders Test Suites can be
used . for specific new features .Test cases are
executed against different Platforms or
Configurations. Test cases can be copied quickly
from one cycle to the next for testing process.
Advantages
Design
Due to requirement set and design cycle quickly
build cases from the requirements so that
increment component can easily delivered on
time to the client when software design is
prepared. allows make easily design That
provides functional coverage for design module
that you can quickly review As progress and new
increments are created design phase is time to
ISSN – 2394-0573
This model Generates working software
quickly during software life cycle.
This model is more flexible ,less costly to
change scope and requirements.
It is easier to test and debug during a smaller
changing process.
This model easy to manage risk , they risky
piece identified quickly.
Disadvantage
This model
Needs good planning ,
structure and design. Needs a clear and
All Rights Reserved © 2014 IJEETE
Page 106
International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
complete processing of the whole system
before broken down and built incrementally.
In this model iteration processing is very
rigid and they doesn’t overlap.
This model arise problem in architecture .in
processing all requirements not gathered
up.[13]
IX PROTOTYPE MODEL
The prototype model is developing a small
prototype and followed by mini –waterfall
process ,First to gather requirements .then
,first prototype is reviewed in subsequent
loops .the team performs further requirements
, design , implementations and review .The
prototyping approach used requirement
gathering in the analysis phase to capture the
exact requirement of proposed system. After
the requirements are frozen, the remaining
phases of the development process needs to
executed a complete development of software
system. Prototyping is the process of quickly
putting together a working software order to
test various aspects of design, ideas or features
and gathered user feedback. The prototyping
serves to clarify models,
which gives an idea of the user. A quick design
helps in developing the model.
Build prototype
Information collect from design is modified to
form first prototype, which represents the working
model of the required software.
Engineer product
the requirements are completely, they accepts
final prototype. The final system is evaluated
thoroughly maintenance and for preventing
large-scale failures and minimizing downtime.
Refining prototype
the user evaluates prototype and not satisfied, the
current prototype is refined to requirements. a new
prototype is developed with information provided
by the user. The new prototype is evaluated same
as previous prototype. This process continues
until all the requirements specified by the user .
user is satisfied with the new prototype, a final
product is developed on the basis of final
prototype.
Customer evaluation
the proposed system is presented by user for
evaluation prototype to checks strengths and
weaknesses such as something is to added or
removed. Comments and suggestions are collected
from the evolution and provide by the user.
Requirements
Advantages
A model begins with requirements
and
requirements of system are defined and accurate
in details. The user is interviewee give order to
know the requirements of the software.
Quick design
requirements are done , a quick design for the
software is created. It is not a write design and
includes only the important operation of system,
ISSN – 2394-0573
This model is very useful and give good
result for gathering requirements.
This. model Helps in reducing risks link with
software.
Errors are detected faster.
Provides a model the process, enabling
assessment and increasing user's confidence.
Disadvantages
All Rights Reserved © 2014 IJEETE
Page 107
International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
1. Leads implementing and repairing way of
building software.
Advantage
This is a simple and good learning model.
2. this methodology may increase complexity of
the software may expand beyond plans.
Little and no planning required this model
3.Incomplete application may cause not used
full software was designed
4.this model is very time consuming and
expensive [14]
Easy to manage and easy to create in some
time.
Very few resources required and not heavy
work load
Disadvantage
X BIG BANG MODEL
Big bang model focus all possible resources in
software .This model is ideal for small projects
with one or two developers working together.
also useful for academic projects. The Big- Bang
Model like a cosmological model. it named
after namely one which we put huge amounts of
matter are put together, the outcome is either
perfect software or not. The beauty of model is
simple There is made
with little planning,
scheduling, or formal development process. All
the effort of this model is spent developing and
writing code. This model approach by small
projects, since the developer does requirement
analysis, writes code and develops software. Also
developers need to understand requirements and
develop the software , there is no formal testing
phase this model, if testing occurs before release
final product. The lack of a formal testing phase
is cause for massive failure ratio this Model[15]
Very High risk and uncertainty.
Can move to very expensive if requirements
are misunderstood
Not a good model complex and object-oriented
projects.
Poor model are more required for long and
ongoing projects.[16]
CONCLUSION
IN processing life cycle models Decide
development Process They Work on model
Strategies . In this paper various life cycles
studied like SDLC, Waterfall model., Iterative
model, V-shaped model, Spiral model,
Incremental Method, prototyping model ,The Big
Bang Model. We overview Different models
methodologies and defined advantages
and
disadvantages.
REFERENCES
1.
Retrieved 17 July 2014 Selecting A
Development Approach
2. FOLDOC.Retrieved 2013-06-14.
"Systems
Development Life Cycle from".
3. Software Development Life Cycle (SDLC),
Power Point, – Powered by Google Docs
4. Benington,
Herbert
D.
(1
October
1983). "Production of Large Computer
Programs".IEEE Annals of the History of
ISSN – 2394-0573
All Rights Reserved © 2014 IJEETE
Page 108
International Journal of Exploring Emerging Trends in Engineering (IJEETE)
Vol. 02, Issue 03, MAY-JUN, 2015 Pg. 100-109 WWW.IJEETE.COM
Computing (IEEE
Educational
Activities
Department) 5 (4):
350–
361. doi:10.1109/MAHC.1983.10102.
Retrieved 2011-03-21.
5. Office of Naval Research, Dept. of the
Navy, OCLC 10794738 United States. Navy
Mathematical Computing Advisory Panel. (29
June
1956),Symposium
on
advanced
programming methods for digital computers,
[Washington, D.C.]:
6. Dr. Alistair Cockburn (May 2008). "Using
Both
Incremental
and
Iterative
Development". STSC
CrossTalk (USAF Software
Technology
Support Center) 21 (5): 27–30. ISSN 21601593. Retrieved 2011-07-20
7. Craig Larman, Victor R. Basili (June
2003). "Iterative
and
Incremental
Development: A Brief History". IEEE
Computer. doi:10.1109/MC.2003.1204375. IS
SN 0018-9162. Retrieved 2009-01-10.
8. Clarus Concept of Operations. Publication
No. FHWA-JPO-05-072, Federal Highway
Administration (FHWA), 2005
9. Kevin Forsberg and Harold Mooz, “The
Relationship of System Engineering to the
Project Cycle,” in Proceedings of the First
Annual Symposium of National Council on
System Engineering, October 1991: 57–65.
10. "A Spiral Model of Software Development and
Enhancement", ACM SIGSOFT Software
Engineering Notes, ACM, 11(4):14-24,
August 1986
11. Pressman,
Roger
(2010). Software
Engineering: A Practitioner's Approach.
Boston:
McGraw
Hill.
pp. 41–
42. ISBN 9780073375977.
12. Smith MF Software Prototyping: Adoption,
Practice and Management. McGraw-Hill,
London (1991).
ISSN – 2394-0573
13. Dewar, Robert B. K.; Fisher Jr., Gerald A.;
Schonberg, Edmond; Froelich, Robert; Bryant,
Stephen; Goss, Clinton F.; Burke, Michael
(November 1980). "The NYU Ada Translator
and Interpreter"
14. ACM SIGPLAN Notices - Proceedings of the
ACM-SIGPLAN Symposium on the Ada
Programming
Language 15 (11):
ACM
SIGPLAN Notices
15. Jseph Silk (2009). Horizons of Cosmology.
Templeton Press. p. 208. Jseph Silk (2009)
16. Simon Singh (2005). Big Bang: The Origin of
the Universe. Harper Perennial. p. 560. Simon
Singh (2005). Big Bang
AUTHOR’S BIBLIOGRAPHY
Nancy Bindal received his
B.Tech. degree in Information
Technology Engineering from
JIET , Jind, Haryana in 2011 and
M.Tech in CSE from R.N.C.E.T,
Madlauda, Panipat, Haryana in
2014 , Currently working as
Assistant Professor in MMEC , Mullana ,
Haryana.
Aanchal mehta had done
B.TECH(CSE)
From
Shri
sukhmani
Institute
of
Engineering and Technology
Derabassi
and
Pursuing
M.TECH(CSE)From Maharishi
Markandeshwar University Mullana in India .
All Rights Reserved © 2014 IJEETE
Page 109