0% found this document useful (0 votes)
15 views15 pages

Introduction to Agile

The document provides an introduction to Agile software development, outlining its principles, processes, and popular tools. Agile emphasizes flexibility, collaboration, and iterative progress, contrasting with the more rigid Waterfall methodology. It highlights the advantages of Agile, such as improved client interaction and adaptability, as well as its disadvantages, including unpredictability and potential conflicts with organizational culture.

Uploaded by

IramMokashi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views15 pages

Introduction to Agile

The document provides an introduction to Agile software development, outlining its principles, processes, and popular tools. Agile emphasizes flexibility, collaboration, and iterative progress, contrasting with the more rigid Waterfall methodology. It highlights the advantages of Agile, such as improved client interaction and adaptability, as well as its disadvantages, including unpredictability and potential conflicts with organizational culture.

Uploaded by

IramMokashi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 15

An Introduction to

Agile Software
Development

Iram Mokashi
24th November 2023
Agenda
1. What is Agile?
2. The Principles of Agile Project Management
3. How Does Agile Software Development Process
Work?
4. Popular Tools in Agile Software Development
5. Agile Vs. Waterfall
6. Advantages of Agile Software Development
7. Disadvantages of Agile Software Development
8. Summary
What is Agile?
• The word ‘agile’ refers to the ability to move
quickly and easily.
• An Agile approach enables project teams to
adapt faster and easier compared to other
project methodologies.
• Agile splits enormous software development
tasks into smaller, more manageable parts
called iterations.
• These pieces are built, tested, and deployed in
iterations.
• Iterations are short, time-boxed periods during
which you change your application’s features
and functionality. Most importantly, you can
implement these changes quickly.

A g i l e o r i g i n a t e d f ro m a g ro u p o f 1 7 t e c h ex p e r t s a i m i n g t o re v o l u t i o n i z e s o ft w a re
development.
T h e y c r a ft e d t h e A g i l e M a n i f e s t o — a c o n c i s e s e t o f v a l u e s a n d p r i n c i p l e s :

1. Individuals and interactions over processes and


tools
2. Working software over comprehensive
documentation
3. Customer collaboration over contract negotiation
4. Responding to change over following a plan
The Principles of Agile
Project Management
There are 12 principles which guide agile project management, as mentioned below.
Agile’s highest priority is to satisfy the customer through the early and continuous
delivery of crucial products and services.

1. Delivery of projects frequently, from a few weeks to a few months, with greater
preference to shorter timescales.
2. Embrace any changing requirements, even when it is late in project
development. Agile’s processes leverage change for a customer’s competitive
advantage
3. Developers and stakeholders must collaborate and work together through the
entire project.
4. Build your projects around motivated personnel. Accord them the support and
environment they need and trust that they will get everything done.
5. A face-to-face conversation is the most effi cient way of conveying information to
and within the development team.
6. A fi nal working product is the real measure of project success.
7.
5
Agile processes help promote sustainable development. The developers,
sponsors, and users must maintain the constant pace indefi nitely.
The Principles of Agile
Project Management
8. Agility is greatly enhanced through the continuous attention to good design and
technical excellence.
9. Simplicity, which is the art of maximizing the amount of incomplete work, is vital.
10. The best designs, requirements, and architectures come from self-organizing
teams.
11. At some regular intervals, the team should refl ect on how they can become more
productive, then adjusts and tunes its behavior appropriately.

6
How Does Agile Software
Development Process Work?

1. Define the 2. Create a


project: backlog:
The team, along with the customer, A backlog is a prioritized list of tasks that
defines the project's goals, objectives, need to be completed. The customer, product
and requirements. owner, and the team work together to create
the backlog.

3. Plan the sprint: 4. Execute the


sprint:
The team plans the sprint by selecting the The team works on completing
highest-priority tasks from the backlog and the tasks planned for the sprint,
determining how much work can be completed in with daily meetings to check
the upcoming sprint. progress and address any issues.
How Does Agile Software
Development Process Work?

5. Review and
6. Retrospect:
demo:
At the end of the sprint, the team The team retrospects on the sprint,
demonstrates the completed work to discussing what went well, what didn't, and
the customer and gets feedback. what can be improved for the next sprint.

8. Continuously
7. Repeat:
improve:
The process is repeated for each sprint until The team reflects on its
the project is completed. The product is progress and makes
incrementally developed and delivered to adjustments as necessary
the customer in small chunks. to improve processes, tools,
and communication for the
next sprint.
Popular Tools in Agile Software
Development

1. Extreme Programming 2. Kanban


 XP is built upon values, principles, and practices,  It is a method that’s used to design, manage,
and its goal is to allow small to mid-sized teams and improve the flow of systems.
to produce high-quality software and adapt to
evolving and changing requirements.  Kanban enables organizations to visualize
their flow of work and limit the amount of
 XP emphasizes the technical aspects of software work in progress.
development. Extreme programming is precise
about how engineers work since following  It is used in situations where work arrives
engineering practices allows teams to deliver unpredictably, and where it needs to be
high-quality code at a sustainable pace. deployed immediately without waiting for
 Extreme programming is, in a nutshell, about other work items.
good practices taken to an extreme.
Popular Tools in Agile Software
Development

3. Lean 4. Scrum
 It is a set of tools and principles that focuses  Scrum is an iterative and incremental framework
on identifying and removing waste to speed that helps teams deliver high-quality products in
up process development. a timely manner.
 It is based on the principles of transparency,
 Value is maximized, and waste is
inspection, and adaptation, and provides a
minimized. flexible and collaborative approach to project
 It is used in just about every industry that management.
produces waste in some form.  It is used by cross-functional teams that are
working on product development, and the work is
split into more than one 2-4 week iterations.
Agile Vs. Waterfall
Waterfall Agile

Agile is a lot more flexible and accounts for


Waterfall has a fixed timeline. The idea is
experimenting with different directions. Rather
Timeline that the start and finish of the project are
than a fixed timeline, the schedule adapts as
already mapped out from the beginning.
the project progresses.
Once the end goal is established,
Waterfall does not involve the client or
A fundamental part of Agile is including clients
Client Involvement project owner during the process, apart
in the project development at every step.
from specific check-ins or for
deliverables.
Waterfall is not as flexible as Agile
Flexibility is built into the Agile method. Agile
because each phase needs to be fully
Flexibility values short bursts of work, which are called
completed before moving on to the next
sprints.
phase.

Flexible.
Fixed.
Agile is open to adaptation, encourages
Budget The budget for projects using the
experimentation and welcomes changes of
Waterfall methodology is generally fixed.
direction, even in later phases of the project.
11
Advantages of Agile Software
Development

• Agile enables a large amount of collaboration and interaction between the client and the
project team.
• Improved transparency, and therefore a clearer understanding of the phases of the project
is present.
• Changes can refine and re-prioritize the product backlog.
• Enables the client to prioritize different features, allowing the team to ensure maximum
project value.
• The project is broken down into smaller units, providing high-quality development, testing,
and collaboration.
Disadvantages of Agile Software
Development

• Less predictable.
• Organizational cultures can conflict with agile values.
• Constant interaction takes more time and energy for everyone involved.
• Lack of necessary documentation.
• Projects easily fall off track.
Summary

• To summarize, Agile and Waterfall are two different management methodologies best
suited for different types of projects. If you clearly understand the project outcomes
from the beginning, Waterfall may be the best fit. Waterfall is a better method when a
project must meet strict regulations as it requires deliverables for each phase before
proceeding to the next one.

• Alternatively, Agile is better suited for teams that plan on moving fast, experimenting
with direction and don’t know how the final project will look before they start. Agile is
flexible and requires a collaborative and self-motivated team, plus frequent check-ins
with business owners and stakeholders about the progress.
Thank you

You might also like