Agile Software Development - Detailed Notes (Hinglish)
1. Agile Software Development
Agile ek software development methodology hai jo fast, flexible aur feedback-driven hoti hai. Agile ka main
goal hai ki customer ko jaldi aur useful software diya jaye.
Example: Agar ek food delivery app banana ho, toh Agile mein pehle 'Login', 'Browse Food', 'Add to Cart'
features banaye jaate hain, feedback ke baad aur features add hote hain.
2. Agile Manifesto
4 Core Values:
1. Individuals & Interactions > Tools & Processes
2. Working Software > Documentation
3. Customer Collaboration > Contract Negotiation
4. Responding to Change > Following a Plan
12 Principles mein quick delivery, continuous feedback, motivated teams, aur face-to-face communication
jaise points hain.
3. Agile Frameworks
Scrum: 2-4 week sprints, roles - Product Owner, Scrum Master, Developers. Daily standup hota hai.
Kanban: Visual board (To Do -> In Progress -> Done). Continuous delivery.
XP: Pair programming, Test Driven Development (TDD), Refactoring focus.
4. Refactoring
Refactoring ka matlab hai code ko clean aur maintainable banana bina uske output ko change kiye.
Need: Code readable, bugs easily detectable, performance improve.
Techniques: Rename Variable, Extract Method, Replace Magic Number, Simplify Conditionals.
Example: Magic number 3.14 ko PI constant se replace karna.
Agile Software Development - Detailed Notes (Hinglish)
5. Continuous Integration (CI)
CI ka matlab hai developers frequently code merge karte hain aur automated tests se verify karte hain.
Benefits: Bugs early milte hain, conflicts kam hote hain.
Example: GitHub Actions ka use karke har commit pe test run karwana.
6. Automated Build Tools
Build tools software ko compile, test, aur deploy karne mein help karte hain.
Popular tools: Maven, Gradle (Java), Ant (XML-based), Make (C/C++).
Example: Java project ka auto-build Maven se.
7. Version Control Systems (VCS)
VCS code ke versions track karta hai.
Types: Centralized (SVN), Distributed (Git).
Benefits: Rollback, collaboration, history tracking.
Example: GitHub par branch banakar team ka parallel kaam.
8. Current Research in Agile
1. Scaling Agile - SAFe framework
2. AI integration - bug prediction, task estimation
3. Agile + DevOps - full automation
4. Agile in education/marketing
5. Human factors - team motivation, communication research.
Conclusion
Agile fast aur flexible software banane ka best approach hai. Refactoring, CI, VCS jaise tools ise powerful
Agile Software Development - Detailed Notes (Hinglish)
banate hain.
Aaj Agile ek mindset ban chuka hai jo har field mein use ho raha hai.