You are on page 1of 13

Software

Development
iFour Consultancy
Methodologies(Part-1)

What is Software Development


Methodology ?
It is the framework used to plan, control and

structure the process of developing the


information system.
Software Development is considered a subset of
thesystems development life cycle.
It includes the pre-definition of deliverables,
artifacts created and completed by a project team
for development or maintenance of the
application.

Source: http://www.computerhope.com

Software Application Development

Methodologies
Waterfall Model
Prototype Model
Incremental Model
Spiral Model
RAD Model
V-Model

Source: http://www.itinfo.am/eng/software-development-methodologies/

Software Application Development

Waterfall Model
It is considered as the classic approach to the system development life

cycle.
Describes a development method that is linear and rigid.
Advantages:

1. This model is simple and easy to understand and use.


2. Allows for managerial control & departmentalization.
Disadvantages:
1. High amounts of uncertainty and risk.

. Poor model for ongoing and large projects.

Source: http://istqbexamcertification.com/what-is-waterfall-model-advantagesdisadvantages-and-when-to-use-it/

Software Application Development

Prototype Model
In it instead of freezing the requirements before a design or coding can

proceed, the throw away prototype is built to understand all the


requirements.
This prototype is developed based on all the currently known
requirements.

Source: http://www.itinfo.am/eng/software-development-methodologies/

Software Application Development

Prototype Model
Advantages:

1. Users are actively involved in


the development.
2. Errors can be detected much
earlier.
Disadvantages:
1. Leads to implementing and then
repairing way of building systems.
2. This methodology may increase
the complexity of the system.
Source: http://www.itinfo.am/eng/software-development-methodologies/

Software Application Development

Incremental Model
In it the whole requirement is divided into many builds.
Many development cycles take place which makes the life cycle a multi-

waterfall cycle. The cycles are divided up into smaller and more easily
manageable modules.
Each subsequent release of the module adds function to previous
release.

Source: http://www.itinfo.am/eng/software-development-methodologies/

Software Application Development

Spiral Model
It is similar to the incremental

model, but more emphasis is


placed on risk analysis.
The software project repeatedly
passes through these phases in
iterations (called Spirals).
Each subsequent spirals is build
on the baseline spiral.

Source: http://noop.nl/2008/07/the-definitive-list-of-software-developmentmethodologies.html

Software Application Development

Spiral Model
In it the elements of design and

prototyping-in-stages
are
combined.
The features of the waterfall
model
and
prototyping
are
combined in it.
It is usually intended for large,
complex and expensive projects.
It has advantages of top-down
and bottom-up concepts.
Source: http://noop.nl/2008/07/the-definitive-list-of-software-developmentmethodologies.html

Software Application Development

RAD Model
It is a type of incremental model.
RAD

model
components
or
functions
are
developed
in
parallel as if they were mini
projects.
The developments in it are time
boxed, delivered and assembled
into the working prototype.
It includes minimal planning and
fast prototyping.

Source: http://istqbexamcertification.com/what-is-rad-model-advantagesdisadvantages-and-when-to-use-it/

Software Application Development

Phases in the RAD Model


Business modeling:The flow of information

is identified between various business


functions.
Data modeling:To define data objects,
needed for the business.
Process modeling:Data objects defined in
data modeling are converted to achieve
business objectives.
Application
generation:Tools
that
are
automated are used to convert process
models into code and the actual system.
Testing and turnover:New components and
interfaces are tested.
Source: http://istqbexamcertification.com/what-is-rad-model-advantagesdisadvantages-and-when-to-use-it/

Software Application Development

V-Model
The V-model is an extension of

Waterfall model.
It
shows
the
relationships
between development phases
and test phases
It provides the Time and project
completeness vs. The Level of
Abstraction

Source: http://www.itinfo.am/eng/software-development-methodologies/

Software Application Development

References
http://www.computerhope.com
http://www.itinfo.am/eng/software-development-methodologies/
http://en.wikipedia.org/wiki/Software_development_process
http://searchsoftwarequality.techtarget.com/answer/Differences-in-Agile

-and-traditional-software-project-management
http://noop.nl/2008/07/the-definitive-list-of-software-development-metho
dologies.html
http://istqbexamcertification.com/what-is-waterfall-model-advantages-d
isadvantages-and-when-to-use-it/
http://istqbexamcertification.com/what-is-rad-model-advantages-disadva
ntages-and-when-to-use-it/
Software Application Development