AGILE
Agile is a project management and software development
approach that emphasizes flexibility, collaboration,
and customer satisfaction.
Key Principles of Agile (from the Agile
Manifesto):
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.
Why Agile is Important?
• adapt quickly to change, deliver value faster, and
improve collaboration.
• How Agile Works
• by breaking down large projects into small,
manageable parts (iterations) and delivering value
frequently.
• It focuses on continuous improvement,
collaboration, and flexibility
Agile Workflow
• Define the Product Vision & Backlog
• The Product Owner gathers requirements from
stakeholders and customers.
• A Product Backlog (list of features and tasks) is
created and prioritized based on business value.
• Plan a Sprint (Iteration)
• The team selects high-priority tasks to complete in a
short cycle (usually 2 weeks).
• Sprint goals are set, and tasks are broken into User
Stories (e.g., "As a user, I want to reset my password
easily").
• Execute the Sprint (Build & Develop)
• The team works on assigned tasks while holding daily
stand-up meetings to discuss progress and
challenges.
• Work is tracked using Scrum boards (To Do → In
Progress → Testing → Done).
• Test & Review
• Features are tested continuously to catch bugs early.
• At the end of the sprint, a Sprint Review is conducted
where the team presents completed work to
stakeholders.
• Get Feedback & Improve (Retrospective)
• A Sprint Retrospective helps the team reflect on what
went well and what can be improved.
• Feedback is incorporated into the next sprint for
continuous improvement.
• Release & Repeat
• After several sprints, the product is released as an MVP
(Minimum Viable Product) or update.
• The process repeats, continuously refining the product
based on customer needs.
Example: Developing an E-
commerce Website)
• Sprint 1: Create homepage & login feature.
🔹 Sprint 2: Add product catalog & search functionality.
🔹 Sprint 3: Develop shopping cart & checkout process.
🔹 Sprint 4: Implement payment gateway & user
reviews.
🔹 Sprint 5: Test, optimize, and release MVP.
• Enhancements & New Features
• After launching the MVP, the team collects user
feedback and analyzes performance. New sprints focus
on:
✅ Fixing bugs and improving website speed
✅ Adding filters for better product search
✅ Implementing wishlist & saved items
✅ Enhancing mobile responsiveness
• Continuous Integration & Deployment (CI/CD)
• New features are continuously developed, tested,
and deployed using Agile.
• Updates are pushed frequently instead of waiting
months for a major release
User Feedback & Prioritization
•Customer support, reviews, and analytics
help identify pain points.
•The Product Backlog is updated with
new priorities (e.g., customers request
“One-Click Checkout”).
•The team refines user stories for future
sprints.
• Scaling & Business Growth
• Agile helps scale the e-commerce platform by
integrating:
🔹 AI-powered recommendations for personalized
shopping
🔹 Loyalty programs & discounts
🔹 Multiple payment options (UPI, crypto, wallets)
🔹 Global expansion (multi-language & currency
support)
• Security & Performance Upgrades
• Regular security audits and patches
• Load balancing for handling high traffic
• Optimizing backend for faster checkout & payments
Agile processes compare to Conventional
(Waterfall) software processes in terms of the
cost of change throughout the development
schedule progress.
•X-Axis (Development Schedule Progress)
•Represents the progress of the project over time, from the initial stages to completion.
•Y-Axis (Development Cost)
•Represents the cost of making changes during the development process.
• Black Curve (Cost of Change in Conventional
Processes - Waterfall)In traditional software
development (like Waterfall), changes become
exponentially more expensive as the project progresses.
• In the early stages, making changes is cheap, but as the
project nears completion, changing core features can be
very costly (due to rework, redesign, and delays).
• Blue Curve (Cost of Change in Agile Processes)
• In Agile development, changes are incorporated
incrementally and iteratively throughout the project.
• Since testing, feedback, and adjustments happen
continuously, the cost of change increases at a
much slower rate compared to traditional methods.
• Dashed Line (Idealized Cost of Change in Agile)
• Ideally, Agile aims to keep the cost of change almost
constant throughout the project.
• While this is not always perfectly achievable, Agile
significantly reduces late-stage change costs
compared to Waterfall.
• Agility Principles The Agile Alliance (see [Agi03],
[Fow01]) defi nes 12 agility principles for those who
want to achieve agility:
• 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.
• 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.
• 7. Working software is the primary measure of
progress.
• 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.
• Scrum is an Agile framework that helps teams
develop, deliver, and sustain complex products through
iterative and incremental work cycles called
Sprints.
• It focuses on flexibility, collaboration, continuous
improvement, and delivering value quickly.
• Scrum is widely used in software development, but it
is also applied in marketing, HR, and business
operations.
• How Scrum Works (Process Flow)
• 1️⃣Product Backlog (Planning the Work)
• The Product Owner creates and maintains a Product
Backlog, which is a list of features, bug fixes, and
improvements.
• Items are prioritized based on business value and
customer needs.
• Sprint Planning (Deciding What to Do)
• The Scrum Team selects high-priority backlog items to
complete in a Sprint (usually 1-4 weeks).
• The team breaks the items into smaller tasks and defines a
Sprint Goal.
• 3️⃣Sprint Execution (Building & Developing)
• The team works on the selected tasks, following the Scrum
values of focus, openness, and commitment.
• Daily Stand-up Meetings (Daily Scrum) are held to discuss:
✅ What was done yesterday?
✅ What will be done today?
✅ Any blockers or challenges?
• Sprint Review (Demo & Feedback)
• The team presents a working product increment to
stakeholders and customers.
• Feedback is gathered to refine the next Sprint.
• 5️⃣Sprint Retrospective (Improvement Meeting)
• The team reflects on:
✅ What went well?
✅ What didn’t go well?
✅ What can be improved in the next Sprint?
• Actionable improvements are implemented in the next
Sprint.
• Key Roles in Scrum
• Scrum defines three major roles:
1.👤 Product Owner
1.Owns the Product Backlog and prioritizes tasks.
2.Acts as the voice of the customer.
• Scrum MasterActs as a coach & facilitator for the team.
• Removes obstacles and ensures Scrum principles are
followed.
• 💻 Development TeamSelf-organizing team that builds
the product. Includes developers, designers, testers,
etc.
• Scrum Artifacts (Key Components)
• ✅ Product Backlog – List of all tasks, features, and
improvements.
✅ Sprint Backlog – Subset of Product Backlog selected
for the Sprint.
✅ Increment – The completed, potentially shippable
product at the end of a Sprint.
• Scrum Events (Meetings)
• 📅 Sprint Planning – Define the work for the Sprint.
📅 Daily Scrum (Stand-up) – Short (15 min) meeting
for progress updates.
📅 Sprint Review – Present work to stakeholders & get
feedback.
📅 Sprint Retrospective – Improve the next Sprint
based on lessons learned.
• Why Use Scrum?
• ✅ Faster delivery with small, working increments.
✅ Quick adaptability to changing requirements.
✅ High customer involvement for continuous
feedback.
✅ Transparent progress tracking with Scrum boards
(Kanban-style).
✅ Continuous improvement via retrospectives.
Real-Time Example of Scrum:
Developing a Food Delivery App 🍔📱
• Scrum Team Setup
• Product Owner: Defines the app features (e.g., order
tracking, payment system).
• Scrum Master: Ensures the Scrum process runs
smoothly.
• Development Team: Designers, developers, and
testers who build the app.
• Scrum Process in Action
• Step 1️⃣: Product Backlog (Feature List)
• The Product Owner creates a Product Backlog with all
the major app features:
✅ User Registration & Login
✅ Restaurant Listings & Search
✅ Menu Display & Food Ordering
✅ Cart & Checkout Process
✅ Payment Integration
✅ Order Tracking in Real-Time
✅ Push Notifications for Updates
• Sprint Planning (Sprint 1 - 2 Weeks)
• The Scrum Team selects high-priority tasks for Sprint
1 (2 weeks):
• User Registration & Login
• Restaurant Listings & Search
• The team breaks each feature into smaller tasks:
📌 Create database for users
📌 Design login screen
📌 Implement search functionality
📌 Develop API to fetch restaurant data
• Daily Scrum (Daily Stand-ups)
• Every morning (15-minute meeting):
Developer 1: "Yesterday, I set up the user login API.
Today, I'll integrate Google login."
Developer 2: "I'm working on the restaurant search
feature but need help with filtering options."
🚀 Scrum Master: "I’ll help resolve the filtering issue.
Let’s focus on delivering by Friday."
• Sprint Review (End of Sprint 1)
• The team demos the completed features to
stakeholders.
• The Product Owner tests the login & search and
provides feedback.
• Stakeholders request minor UI improvements for the
next Sprint.
• Sprint Retrospective (Lessons Learned)
• The team discusses:
✅ What went well? – Login & search were completed
on time.
❌ What went wrong? – Search filters took longer than
expected.
📌 Action for next Sprint: Improve time estimates for
complex tasks.
• Continuous Sprints Until the App is Ready for
Release 🚀
• Each Sprint adds new functionality while refining the
existing features based on user feedback.
• 📌 After a few Sprints, the Minimum Viable Product
(MVP) is launched.
📌 Post-launch, Scrum continues with updates, bug
fixes, and new feature development.
• Final Takeaway
• 📌 Scrum helps deliver the Food Delivery App in
small, working increments rather than waiting
months for a final product.
📌 The app evolves based on user feedback and
business priorities.
📌 The team continuously improves speed, quality, and
efficiency with every Sprint.