Explain various Software Development process models ?
https://www.computersprofessor.com/2017/09/explain-various-software-development.html
Software Development
Paradigm :
The software development
paradigm helps a developer to select a strategy to develop the software. A
software development paradigm has its own set of tools, methods, and
procedures, which are expressed clearly and defines software development life
cycle. A few of software development paradigms or process models are defined as
follows:
Waterfall Model :
Waterfall model is the simplest model of software development paradigm.
All the phases of SDLC will function one after another in linear manner. That
is, when the first phase is finished then only the second phase will start and
so on.
This model assumes that
everything is carried out and taken place perfectly as planned in the previous
stage and there is no need to think about the past issues that may arise in the
next phase. This model does not work smoothly if there are some issues left at
the previous step. The sequential nature of model does not allow us to go back
and undo or redo our actions.
This model is
best suited when developers already have designed and developed similar
software in the past and are aware of all its domains.
Iterative Model :
This
model leads the software development process in iterations. It projects the
process of development in cyclic manner repeating every step after every cycle
of SDLC process.
The software is
first developed on very small scale and all the steps are followed which are
taken into consideration. Then, on every next iteration, more features and
modules are designed, coded, tested, and added to the software. Every cycle
produces a software, which is complete in itself and has more features and
capabilities than that of the previous one.
After each iteration,
the management team can do work on risk management and prepare for the next
iteration. Because a cycle includes small portion of whole software process, it
is easier to manage the development process but it consumes more resources.
Spiral Model:
Spiral
model is a combination of both, iterative model and one of the SDLC model. It
can be seen as if you choose one SDLC model and combined it with cyclic process
(iterative model).
This model considers risk, which often goes
un-noticed by most other models. The model starts with determining objectives
and constraints of the software at the start of one iteration. Next phase is of
prototyping the software. This includes risk analysis. Then one standard SDLC
model is used to build the software. In the fourth phase of the plan of next
iteration is prepared.
V – model :
The
major drawback of waterfall model is we move to the next stage only when the
previous one is finished and there was no chance to go back if something is found
wrong in later stages. V-Model provides means of testing of software at each
stage in reverse manner.
At every stage,
test plans and test cases are created to verify and validate the product
according to the requirement of that stage. For example, in requirement
gathering stage the test team prepares all the test cases in correspondence to
the requirements. Later, when the product is developed and is ready for
testing, test cases of this stage verify the software against its validity
towards requirements at this stage. This makes both verification and validation
go in parallel. This model is also known as verification and validation model.