It has been a number of years now that the 'agile' approach to software development has been widely accepted, not just by development teams but by sales and marketing experts.
Older project management approaches such as 'waterfall' have been left dead in the water - too inflexible, too slow and too much risk of ending up having built something which is no longer fit for purpose.
What is an agile approach?
With an agile approach, constant communication ensures that requirements are going to be met even as they change (as they almost always do), and you ensure the team doesn't get bogged down for extended periods of time. With a sensible 'sprint' cycle, the team works to frequent deadlines, concentrating on small parts of the project at a time and incrementally building the end product.
Develop an agile approach that works for your business
In the development team here at Passle, we have found that an agile approach has been crucial to being able to develop and maintain the application with the speed and flexibility required by our clients.
Like many teams, we've have taken on the principles of agile development and our own processes have evolved. We don't strictly follow 'scrum' or 'lean' methodologies, but our process takes principles from them in a way that works with the structure of our business.
The benefits of agile for us are huge, some of the most important for us at Passle:
- The efficiency of the development team is dramatically increased - you can achieve a lot in a short period of time
- The quality of work that is released is higher, as you are always communicating with other stakeholders to ensure the work being completed is in line with requirements
- The sprint cycle lends itself well to having nice procedures in place for the dev and testing teams to follow - development, code reviews, testing and deployment becomes a smooth process
- We can react quickly to changes in business requirements, and make changes accordingly
Tie this in with a Continuous integration (CI) strategy, where new work can be easily combined with old and you can make sure the latest end product is available, and you are constantly improving on what you are offering.
It is becoming increasingly common to hear non-technical people talk about agile in other work scenarios. This is something I very much encourage, I think there are many other fields where these principles could bring major benefits.