Unit 1
🎯 Unit 1 Overview
Unit 1 explains the fundamentals of Agile software development. It covers Agile introduction,
Agile Manifesto, Agile principles, stakeholders, challenges and overview of Agile models such as
Scrum, Extreme Programming, Feature Driven Development, Crystal, Kanban and Lean Software Development.
Exam Tip: Agile Manifesto, Agile Principles, Scrum, XP, Kanban and Lean Software Development are very important for RGPV exams.
📘 Introduction to Agile
Agile is an iterative and incremental software development approach. It focuses on delivering
working software quickly, accepting changing requirements and improving continuously through feedback.
Why Agile is Needed?
- Traditional models are slow for changing requirements.
- Customer feedback is required throughout development.
- Software should be delivered in small working parts.
- Teams need flexibility and faster response to change.
📜 Agile Manifesto
Agile Manifesto defines the core values of Agile software development.
| Agile Values |
Meaning |
| Individuals and interactions over processes and tools |
People and communication are more important than rigid processes. |
| Working software over comprehensive documentation |
Functional software is more valuable than excessive documents. |
| Customer collaboration over contract negotiation |
Continuous customer involvement improves product quality. |
| Responding to change over following a plan |
Agile welcomes requirement changes even late in development. |
✅ Agile Principles
- Customer satisfaction through early and continuous delivery.
- Welcome changing requirements.
- Deliver working software frequently.
- Business people and developers work together.
- Build projects around motivated individuals.
- Face-to-face communication is most effective.
- Working software is the primary measure of progress.
- Maintain sustainable development pace.
- Continuous attention to technical excellence.
- Simplicity is essential.
- Self-organizing teams create best designs.
- Teams regularly reflect and improve.
👥 Stakeholders in Agile
Stakeholders are people who are directly or indirectly involved in the software project.
Customer
Provides requirements and feedback.
Product Owner
Manages product backlog and priorities.
Development Team
Builds and tests working software.
Scrum Master
Guides team and removes obstacles.
Management
Provides resources and business support.
End Users
Use the final product and provide real feedback.
⚠️ Challenges in Agile
- Frequent requirement changes
- Lack of customer involvement
- Poor communication
- Difficulty in estimation
- Team coordination issues
- Resistance to Agile culture
- Incomplete documentation
- Managing distributed teams
🏃 Scrum
Scrum is an Agile framework used to develop software in short iterations called sprints.
Main Elements of Scrum
- Roles: Product Owner, Scrum Master, Development Team
- Artifacts: Product Backlog, Sprint Backlog, Increment
- Events: Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective
Scrum is one of the most commonly used Agile frameworks.
⚡ Extreme Programming
Extreme Programming is an Agile method that focuses on high-quality software and customer satisfaction.
XP Practices
- Pair programming
- Test driven development
- Continuous integration
- Small releases
- Simple design
- Refactoring
- Collective code ownership
🧩 Feature Driven Development
Feature Driven Development is an Agile model focused on designing and building software features.
Steps of FDD
- Develop overall model.
- Build feature list.
- Plan by feature.
- Design by feature.
- Build by feature.
💎 Crystal Methodology
Crystal is a family of Agile methods that focuses on people, communication and project size.
Different Crystal methods are used based on team size and project criticality.
Features
- People-centric approach
- Frequent delivery
- Reflective improvement
- Close communication
- Flexible process
📌 Kanban
Kanban is a visual workflow management method used to improve efficiency and reduce waste.
Kanban Board Columns
- To Do
- In Progress
- Testing
- Done
Benefits
- Visualizes work
- Limits work in progress
- Improves flow
- Reduces delays
🌱 Lean Software Development
Lean Software Development focuses on eliminating waste and delivering value quickly.
Lean Principles
- Eliminate waste
- Build quality in
- Create knowledge
- Defer commitment
- Deliver fast
- Respect people
- Optimize the whole
⚖️ Agile vs Traditional Model
| Agile Model |
Traditional Model |
| Iterative and incremental |
Sequential development |
| Welcomes changes |
Changes are difficult |
| Frequent customer feedback |
Customer involved mainly at start/end |
| Working software delivered frequently |
Software delivered near the end |
| Flexible planning |
Fixed planning |
📊 Agile Models Summary
| Model |
Main Focus |
| Scrum |
Sprints, roles, events and backlog management |
| Extreme Programming |
Engineering practices and code quality |
| Feature Driven Development |
Feature-based planning and delivery |
| Crystal |
People, communication and flexibility |
| Kanban |
Visual workflow and work-in-progress control |
| Lean |
Waste reduction and fast value delivery |
⭐ Important Questions
- What is Agile Software Development? Explain its advantages.
- Explain Agile Manifesto and its four values.
- Explain twelve principles of Agile methodology.
- Compare Agile and traditional software development models.
- Explain stakeholders and challenges in Agile projects.
- Explain Scrum framework.
- What is Extreme Programming? Explain XP practices.
- Explain Feature Driven Development.
- Write short note on Crystal methodology.
- Explain Kanban and Lean Software Development.
📌 PYQ Analysis
| Topic |
Exam Importance |
| Agile Manifesto |
Very High |
| Agile Principles |
High |
| Scrum Framework |
Very High |
| Extreme Programming |
High |
| Kanban |
Medium |
| Lean Software Development |
Medium |
| FDD and Crystal |
Medium |
🔥 Last Minute Revision
- Agile = iterative and incremental development.
- Agile Manifesto = 4 values and 12 principles.
- Scrum works in sprints.
- Scrum roles = Product Owner, Scrum Master, Development Team.
- XP focuses on engineering practices.
- FDD focuses on features.
- Crystal focuses on people and communication.
- Kanban visualizes workflow.
- Lean eliminates waste and delivers value fast.