0% found this document useful (0 votes)
10 views

Introduction to Agile Development

The document provides an overview of Agile methodologies, including its principles, manifesto, and various methods used in software development. It emphasizes the importance of collaboration, flexibility, and customer satisfaction in project management. Additionally, it discusses the advantages and disadvantages of Agile methods and outlines the phases involved in the Agile model.

Uploaded by

Raghul Yadhav K
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

Introduction to Agile Development

The document provides an overview of Agile methodologies, including its principles, manifesto, and various methods used in software development. It emphasizes the importance of collaboration, flexibility, and customer satisfaction in project management. Additionally, it discusses the advantages and disadvantages of Agile methods and outlines the phases involved in the Agile model.

Uploaded by

Raghul Yadhav K
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

UCS2734 :AGILE METHODOLOGIES

Introduction to Agile

Prepared by
Dr. S. Angel Deborah
Learning Objective
● To understand the basics of Agile, Agile manifestos and principles
● To understand Agile modeling
Outline
● What is agile?
● Real life examples of agile
● Agile manifesto
● Agile Principles
● Agile Methodology
● Agile Methods
● Agile Modelling
● Advantages & Disadvantages of Agile Method
What is agile?
● Agile is a process that allows a team to more efficiently manage a
project by breaking it down into several stages, each of which allows
for consistent collaboration with stakeholders to promote steady
improvements at every stage.
● In software development, agile practices involve discovering
requirements and developing solutions through the collaborative
effort of self-organizing and cross-functional teams and their
customer/end user.
Some of the real life examples of agile model:

● Restaurant orders:
○ Preparation of some of the food before opening the shop (sprint planning)
○ continuous delivery of orders (adhoc stories)
○ number of successful orders (velocity)
● cricket team:
○ Run rate (velocity)
○ team (scrum team self sufficient)
○ over (sprint length)
○ captain/ coach (scrum master)
Agile manifesto

We are uncovering better ways of developing software by doing it and helping


others to do it. Through this work we have come to value:
Individuals and interactions over processes and tools;
Working software over comprehensive documentation;
Customer collaboration over contract negotiation;
Responding to change over following a plan.
That is, while there is value in the items on the right, we value the items on the left more.
What are the 12 principles of agile?
● Customer satisfaction
● Early and continuous delivery
● Embrace change
● Frequent delivery
● Collaboration of businesses and developers
● Motivated individuals
● Face-to-face conversation
● Functional products
● Technical excellence
● Simplicity
● Self-organized teams
● Regulation, reflection and adjustment
Agility Principles - I
1. Our highest priority is to satisfy the customer through early and continuous delivery of
valuable software.
2. Welcome changing requirements, even late in development. Agile processes harness
change for the customer's competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a couple of months, with
a preference to the shorter timescale.
4. Business people and developers must work together daily throughout the project.
5. Build projects around motivated individuals. Give them the environment and support
they need, and trust them to get the job done.
6. The most efficient and effective method of conveying information to and within a
development team is face–to–face conversation.

8
Agility Principles - II
7. Working software is the primary measure of progress.
8. Agile processes promote sustainable development. The sponsors, developers, and
users should be able to maintain a constant pace indefinitely.
9. Continuous attention to technical excellence and good design enhances agility.
10. Simplicity – the art of maximizing the amount of work not done – is essential.
11. The best architectures, requirements, and designs emerge from self–organizing
teams.
12. At regular intervals, the team reflects on how to become more effective, then tunes
and adjusts its behavior accordingly.

9
Agile methodology
● Agile methodology is a type of project management process, mainly used for software
development, where demands and solutions evolve through the collaborative effort of
self-organizing and cross-functional teams and their customers.
● Agile software development refers to a group of software development methodologies
based on iterative development, where requirements and solutions evolve through
collaboration between self-organizing cross-functional teams.
● Agile methods or Agile processes generally promote a disciplined project management
process that encourages frequent inspection and adaptation, a leadership philosophy that
encourages teamwork, self-organization and accountability, a set of engineering best
practices intended to allow for rapid delivery of high-quality software, and a business
approach that aligns development with customer needs and company goals.
Examples of Agile Methodology

● Agile Scrum Methodology


● Lean Software Development
● Kanban
● Extreme Programming (XP)
● Crystal
● Dynamic Systems Development Method (DSDM)
● Feature Driven Development (FDD)
Agile Modelling
● "Agile process model" refers to a software development approach based on iterative
development.
● Agile methods break tasks into smaller iterations, or parts do not directly involve long term
planning.
● The project scope and requirements are laid down at the beginning of the development process.
● Plans regarding the number of iterations, the duration and the scope of each iteration are clearly
defined in advance.
● Each iteration is considered as a short time "frame" in the Agile process model, which typically
lasts from one to four weeks.
● The division of the entire project into smaller parts helps to minimize the project risk and to
reduce the overall project delivery time requirements.
Phases of Agile Model

Following are the phases in the Agile model are as follows:

1. Requirements gathering
2. Design the requirements
3. Construction/ iteration
4. Testing/ Quality assurance
5. Deployment
6. Feedback
Advantages & Disadvantages of Agile Method
Advantages:
1. Frequent Delivery
2. Face-to-Face Communication with clients.
3. Efficient design and fulfils the business requirement.
4. Anytime changes are acceptable.
5. It reduces total development time.
Disadvantages:
1. Due to the shortage of formal documents, it creates confusion and crucial decisions taken
throughout various phases can be misinterpreted at any time by different team members.
2. Due to the lack of proper documentation, once the project completes and the developers
allotted to another project, maintenance of the finished project can become a difficulty.
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 small.
Summary
● What is agile?
● Real life examples of agile
● Agile manifesto
● Agile Principles
● Agile Methodology
● Agile Methods
● Agile Modelling
● Advantages & Disadvantages of Agile Method
Check your understanding
● What is Agile Methodology ?
● What are different Agile methods?
Reference
1. Craig Larman, “Agile and Iterative Development: A Manager’s Guide”,Addison Wesley, 2004.

You might also like