Advantages and disadvantages of Agile Model SDLC

By Prof. Fazal Rehman Shamil
Last modified on September 14th, 2021

Agile Model in software engineering, agile model advantages, and disadvantages, when to use the agile model.

What is an agile model?

The agile model is a combination of both incremental and iterative models and promotes more involvement of customers during software development. The agile basic purpose is to be rapid in all activities.

agile model
                                                    Figure: agile model

The software is divided into small components. Each component is developed and validated by the customer if there is any problem in the software component then another iteration is performed on the component. Here iteration means that design, coding, and testing are performed again and again until accurate the development of accurate software components.

When the first component is ready and fulfills the customer requirements then another component of the same software is developed in increment 2. Similarly, different iterations of design, code, and test are possible for component 2 of the software in increment 2.

What are the advantages of the agile model?

  1. Supports customer involvement and customer satisfaction
  2. Strong communication of the software team with the customer.
  3. Focus on user and customer
  4. Rapid development
  5. Allows changes easily
  6. Cost-saving
  7. Promotes team works
  8. Fast delivery
  9. Little planning required

What are the disadvantages of the agile model?

  • Lack of documentation is a problem if the software team is changed and software needs to be maintained after some years.
  • Senior and highly paid developers are required because they are the only persons who can take correct decisions by having an eye for a little documentation.
  • It does not have full support for documentation and design.

When to use the agile model?

  • When frequent changes are required
  • When a highly qualified and experienced team is available
  • When a customer is ready to have a meeting with a software team all the time.
  • When project size is large.

What are the different agile methodologies?

  • Extreme Programming (XP)
  • Scrum
  • Crystal
  • Agile Modeling (AM)
  • Dynamic Systems Development Method (DSDM)
  • Feature Driven Development (FDD)
  • Adaptive Software Development (ASD)

Extreme Programming

Work on high quality and immediate requirements.

Communication

Feedback

Simplicity: Don’t try to add new innovations, just and just try to complete the task as soon as possible with simple steps.

Extreme Programming Simplicity
Extreme Programming Simplicity

courage

respect

Scrum and Sprint

Scrum is an agile project management methodology, so it is used for software projects that need to be completed within 1 to 4 weeks. The scrum team guides the sprint team members to complete the project according to customer needs.

The scrum team with the consent of the product owner prepares the product backlog.

A Sprint is an agile project management framework(methodology) that strictly follows the time to complete the project.

The sprint team prepares the spring backlog according to the scrum backlog.

scrum and sprint diagram in agile methodology

scrum and sprint in agile model

Product backlog VS Sprint backlog

Product backlogproduct backlog

The product backlog can be an information table indicating the priority list of all the requirements given by the user. The team Manager or sometimes the CEO of the software house prepares the product backlog. He prioritizes the requirements based on the customer’s feedback or by keeping in view his personal experience.  The functional requirements are represented with user stories.

product backlog

Sprint backlog

sprint backlog
sprint backlog

The sprint backlog is the subset of the product backlog. The team Manager or sometimes the CEO of the software house sets the sprint’s goal for the team. The scrum team picks the user stories from the product backlog fulfilling those goals.

 

 

 

 

product backlog vs sprint backlog agile
product backlog vs sprint backlog agile

Example of Product backlog/scrum backlog and spring backlogProduct backlog VS Sprint backlog in sprint scrum agile model

 

Feature Driven Development (FDD)

FDD is an agile methodology to focus on the designing & building of software features.

The five steps are:

  1. Develop an overall model
  2. Build a features list
  3. Plan by feature
  4. Design by feature
  5. Build by feature
Feature Driven Development (FDD)
Feature Driven Development (FDD)

Example of  FDD

FDD is possible for product features or for small task features.

For example, “View all open tasks”, “Online Payment of University fee”, or “killing the enemy in the game.”

More MCQs on Software Process Models

  1. Iterative Model MCQs
  2. Spiral Model MCQs
  3. incremental Model MCQs
  4. Software Process Models MCQs

Computer Science Repeated MCQs Book Download

Prof.Fazal Rehman Shamil (Available for Professional Discussions)
1. Message on Facebook page for discussions,
2. Video lectures on Youtube
3. Email is only for Advertisement/business enquiries.