Agile is a collection of values and principles hence Agile’s the real utility is giving people a common foundation for making decisions about the best way to develop software effectively and to deliver on time.
The 12 Principles of Agile
Below are the 12 Principles of Agile, which I feel are very important to follow/apply to any given software production. As delivering cost-effective, bug-free and on-time software is one of the main objectives for any software production cycle.
- Our highest priority is to
satisfy the customer through early and continuous delivery of valuable software.
- Welcome changing requirements,
even late in development. Agile processes harness change for the customer’s
- Deliver working software
frequently, from a couple of weeks to a couple of months, with a preference to
the shorter timescale.
- Business people and developers
must work together daily throughout the project.
- Build projects around motivated
individuals. Give them the environment and support they need, and trust them to
get the job done.
- The most efficient and effective
method of conveying information to and within a development team is
- Work software is the primary measure of progress.
- Agile processes promote
sustainable development. The sponsors, developers and users should be able to
maintain a constant pace indefinitely.
- Continuous attention to technical
excellence and good design enhances agility.
- Simplicity the art of maximising
the amount of work not done is essential.
- The best architectures, requirements
and designs emerge from self-organising teams.
- At regular intervals, the team reflects
on how to become more effective then tunes and adjusts its behaviour accordingly.