Agile Principles
The 12 Principles of Agile Development
- Customer satisfaction by early and continuous delivery of valuable software.
- Welcome changing requirements, even in late development.
- Deliver working software frequently (weeks rather than months)
- Close, daily cooperation between business people and developers
- Projects are built around motivated individuals, who should be trusted
- Face-to-face conversation is the best form of communication (co-location)
- Working software is the primary measure of progress
- Sustainable development, able to maintain a constant pace
- Continuous attention to technical excellence and good design
- Simplicity—the art of maximizing the amount of work not done—is essential
- Best architectures, requirements, and designs emerge from self-organizing teams
- Regularly, the team reflects on how to become more effective, and adjusts accordingly
In regards to software development, you will hear "Agile Methodology" mentioned. By it's nature, Agile is a set of Principles to work to, rather than a strict methodology, so really you should talk about "Agile Principles".
Agile - able to move quickly and easily.
Methodology - a system of methods used in a particular area of study or activity.
Agile is a set of principles to work to, rather than a methodology with set methods.
Continuous improvement.
Break Work Down
When work is broken down into small, manageable chunks, it becomes much easier to visualise and prioritise.
Measure and Adapt
Measure the results of what you are doing to see what improvements you are making. It is only by measuring that you know something is having an effect. Adapt what you are doing according to whether it is working.
Collaborate
You can't do everything by yourself, collaboration is key.
Encourage Feedback
Encourage feedback so that you can make continuous improvements.
Celebrate Your Successes
Take a moment to celebrate your successes. This will help to keep you motivated and engaged.
Most Important Aspects of Agile (My Opinion)
Continuous software delivery.
Collaboration between the business stakeholders and developers throughout the project.
Accommodate changes to requirements throughout the development process.
Enable face-to-face interactions.
Simplicity.
Gathering feedback and responding to it quickly.
Scrum
Daily Standups
Fixed-length Sprints
Product Demos
Retrospectives
Extreme Programming
Test-driven Development
Pair Programming
Further Resources
Overview of Agile Methodology from the Zenkit Blog.
Visit LowPrices.co.uk for Your UK Shopping
|