About Agile
Agile software development is a programming and project management approach that provides: - Rapid delivery of production quality code through a higher quality
of communication and focus - A communication model which earns a rare level of trust between
management and development teams - Fully tested and documented, production-quality code delivered
incrementally like clockwork - Delivery cycles typically of only 2 to 4 weeks.
Key Concepts - Agile is an umbrella term for the ideas, principles and practices of an evolving collection of people. Their shared goal is to improve the software development process which is widely understood to be dysfunctional. Agile commonly includes Lean, Scrum, XP and other popular categories. For more information see The Agile Alliance; The Agile Manifesto.
- Lean is a term derived from the Toyota Production System (TPS) which has evolved over many decades and today is the envy of all industries. Lean software development (SWD) is included under the Agile umbrella as a foundation discipline. Lean focuses on value, flow, elimination of waste, optimizing the whole, continuous improvement and more. For it's application to software development, see the works of Mary and Tom Poppendieck. Their latest book is "Implementing Lean Software Development: From concept to Cash".
- Scrum, a metaphor from the game of Rugby, is a framework for communication and focus among members of a cross-functional, self-organizing and self-managing creative team; and between that team and those paying for their creativity - the other stakeholders. Those stake holders include business management and customers.
- Extreme Programming (XP) was developed by Kent Beck and others. XP is a widely recognized Agile category comparable only to Scrum in worldwide recognition. It focuses primarily on best engineering practices done in an iterative and incremental way. This includes continuous, integration, testing, code review, code simplification, and much more. A good resource for getting started with XP is: Extreme Programming: A gentle introduction.
|
|
|
|
|
|