The document discusses the Agile software development model. It states that Agile is an iterative and incremental process where the entire application is divided into modules, with each module developed, tested, and implemented separately to obtain customer feedback. Some key Agile principles mentioned include adaptive planning, frequent delivery of working software, customer collaboration, and responding to changing requirements. The document also compares Agile to traditional models like waterfall, noting that Agile uses adaptive development and close customer interaction, while traditional models rely more on upfront planning and documentation.
4. AGILE MODEL
Agile SDLC model is a combination of
iterative and incremental process models.
The whole application is divided into
modules.
Each module is developed and tested,each
module is implemented separately on real
time and gain feedback from customers
and once attaining customer satisfaction
we move on next module development.
5.
6. In agile the tasks are divided to time boxes
(small time frames).
There are several agile software
development methods available.
Although each of them has a unique
approach, they share the values and visions
described by the agile manifesto.
They all involve permanent communication,
planning, testing and integration. They help
develop good software.
7. • Some of the agile software development
methodologies are: Adaptive Software
Development (ASD) etc…
Following are the Agile Manifesto principles:
Individuals and interactions
Working software
Customer collaboration
Responding to change
8. ADVANTAGES OF AGILE MODEL
Resource requirements are minimum.
Suitable for fixed or changing
requirements
Good model for environments that change
steadily.
Little or no planning required
Easy to manage
9. DISADVANTAGES OF AGILE
MODEL
Depends heavily on customer interaction,
so if customer is not clear, team can be
driven in the wrong direction.
Transfer of technology to new team
members may be quite challenging due to
lack of documentation.
More management effort is required for
monitoring and control activites.
11. Traditional Software
Engineering Approach
The waterfall model represents the traditional
software engineering approach. The basic idea is to
separate the project into sequential phases based
on engineering activities: planning, design,
implementation, testing, operation and
maintenance.
The waterfall model is commonly used
advantageously in areas where requirements,
services and processes can be described relatively
accurately in the planning phase.
Some other models in traditional approach such
as:
12. Exploratory programming
Prototyping
Incremental development
Formal transformation
Extreme programming
Component Reuse
Fountain Model
Spiral Model etc…
14. AGILE VS TRADITIONAL MODEL
Agile is based on the adaptive software
development methods where as the traditional
SDLC models like waterfall model is based on
predictive approach.
Predictive teams in the traditional SDLC models
usually work with detailed planning and have a
complete forecast of the exact tasks and features to
be delivered in the next few months or during the
product life cycle.
Predictive methods entirely depend on the
requirement analysis and planning done in the
beginning of cycle.
15. There is feature driven development and
the team adapts to the changing product
requirements dynamically.
The product is tested very frequently,
through the release iterations, minimizing
the risk of any major failures in future.
Customer interaction is the backbone of
Agile methodology, and open
communication with minimum
documentation are the typical features of
Agile development environment.
16. The agile teams work in close collaboration
with each other and are most often located
in the same geographical location.
Agile uses adaptive approach where there is
no detailed planning and there is clarity on
future tasks only in respect of what features
need to be developed.