Main pillars of Agile to Remember
- Short Deliveries
- Team Empowerment
- Customer Interaction
- Self-Correction
Agile tools and techniques
- Agile tools and techniques
- Communications
- Planning, monitoring, and adapting
- Agile estimation
- Agile analysis and design
- Product quality
- Soft skills negotiation
- Value-based prioritization
- Risk management
- Metrics
- Value stream analysis
Agile Knowledge and Skills
- Agile Manifesto values and principles Active listening
- Brainstorming techniques
- Building empowered teams
- Coaching and mentoring within teams
- Feedback techniques for product Incremental delivery Knowledge sharing
- Leadership tools and techniques
- Prioritization
- Problem-solving strategies, tools, and techniques Value-based decomposition and prioritization
Individuals and Interactions over Process and tools
- Projects are initiated by People
- Projects are done by people
- Projects are accepted by people
- Definition of ‘done’ is negotiated by people
Agile Manifesto Values
We are uncovering better ways of developing software by doing it and helping others 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
Working Software over comprehensive documentation
- Software projects are initiated to create valuable, high quality software
- Although documentation may be necessary for future maintenance, but comprehensive documentation without software is valueless
- Agile Manifesto emphasizes on working software over comprehensive documentation
Customer Collaboration over contract negotiation
- Recognize at the start that things are going to change
- Requires flexible contracts
- Trusting relationship with customers
Responding to Change over following a plan
- Initial plan may change in software development
- Develop flexibility in plan, so that it can be changed
- Change plans as requirement changes
Principles behind the Agile Manifesto
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.
7. Working software is the primary measure of progress. Agile processes promote sustainable development.
8. 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.
Agile Methods
- Scrum
- XP (eXtreme Programming)
- Lean
- Kanban
- Feature Driven Development (FDD)
- Dynamic Systems Development Method (DSDM)
- Crystal
- Agile Unified Process (AUP)