The document outlines various software development methodologies, emphasizing their frameworks for planning and controlling the development process. Key methodologies include the Waterfall model, Prototype model, Incremental model, Spiral model, RAD model, and V-model, each with distinct advantages and disadvantages. It also highlights their roles within the systems development life cycle and the significance of user involvement and risk management.
Overview of software development methodologies as frameworks for planning and controlling development processes within the system development life cycle.
Introduction to various software development methodologies including Waterfall, Prototype, Incremental, Spiral, RAD and V-Model.
Describes the linear and rigid Waterfall model, highlighting its simplicity and limitations in handling uncertainty and risk.
Explanation of the Prototype Model focusing on requirement gathering through prototypes, with benefits of early error detection but risks of increased complexity.
Details the Incremental Model where requirements are divided into manageable builds with multiple development cycles.
Explains the Spiral Model emphasizing risk analysis, iteration, and combination of waterfall and prototyping techniques for complex projects.
Description of the RAD model emphasizing parallel prototype development, minimal planning, and phases including business and data modeling.
The V-Model is an extension of the Waterfall model, illustrating the relationship of development and testing phases throughout the project.
A list of resources and references for additional information on software development methodologies.
What is SoftwareDevelopment 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 the systems
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.
Software Application Development CompanySource: http://www.computerhope.com
3.
Waterfall Model
Prototype Model
Incremental Model
Spiral Model
RAD Model
V-Model
Methodologies
Source: http://www.itinfo.am/eng/software-development-methodologies/ Software Application Development Company
4.
It isconsidered 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.
Waterfall Model
Source: http://istqbexamcertification.com/what-is-waterfall-model-
advantages-disadvantages-and-when-to-use-it/
Software Application Development Company
5.
In itinstead 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.
Prototype Model
Source: http://www.itinfo.am/eng/software-development-methodologies/ Software Application Development Company
6.
Advantages:
1. Usersare 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.
Prototype Model
Source: http://www.itinfo.am/eng/software-development-methodologies/ Software Application Development Company
7.
In itthe 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.
Incremental Model
Source: http://www.itinfo.am/eng/software-development-methodologies/ Software Application Development Company
8.
It issimilar 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.
Spiral Model
Source: http://noop.nl/2008/07/the-definitive-list-of-software-development-
methodologies.html
Software Application Development Company
9.
• In itthe 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.
Spiral Model
Source: http://noop.nl/2008/07/the-definitive-list-of-software-development-
methodologies.html
Software Application Development Company
10.
It isa 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.
RAD Model
Source: http://istqbexamcertification.com/what-is-rad-model-advantages-
disadvantages-and-when-to-use-it/
Software Application Development Company
11.
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.
Phases in the RAD Model
Source: http://istqbexamcertification.com/what-is-rad-model-advantages-
disadvantages-and-when-to-use-it/
Software Application Development Company
12.
The V-modelis 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
V-Model
Source: http://www.itinfo.am/eng/software-development-methodologies/ Software Application Development Company