The agile development method
Agile development is a flashy term for developing a system in a common-sense way: start with the highest priority features, avoid taking on too many different features at the same time, keep each development phase short and re-evaluate frequently.
Agile development is popular today because it works and delivers results quickly.
Your requirements are ordered by priority and bundled together into separate phases (called sprints). A sprint is usually completed in 3-6 weeks, which depends on project size and client’s preference. Once completed it will be tested and uploaded. You and the development team will then evaluate what features to include in the next sprint. The benefits are:
- You can test the system frequently: get new ideas and align features with actual business goals.
- End users get to enjoy new features quickly, boosting the client’s ability to stay ahead of competition.
- Developers get motivated by the quick pace, progress and frequent releases.
- The team is forced to develop an easily scalable system. It saves time when adding new features.
Most work at LiteBreeze is carried out in iterations of around 300 man hour sprints, but can range from 150 up to 1000 hours depending on project size. Together with the client we are forced to select the most important features. We’ve found that this pushes development forward quickly. Time is not wasted on medium-priority features that may change or be discarded anyway.
Agile development means that a fixed estimate or price cannot be set for a large set of requirements.
During project maintenance, and if you only need a few hours of work done every now and then, then this concept will not really be applied.