The Agile software development approach stems from the Agile Manifesto, which focuses on delivering great software through collaboration, iteration and flexibility.
Why Agile is a good thing
Agile differs from traditional approaches by promoting frequent collaboration between stakeholders (external clients or other internal teams) and facilitating change. Traditionally when a software solution is scoped at the start of a project (and is estimated and costed), it leaves little room for change. This leads to delivery of a product that may not solve the initial problem.
The longer a problem is worked on, the better the understanding of the scope that is usually achieved. Agile allows periodic re-evaluations of what is being created, ensuring the end result solves the problem for all stakeholders.
The benefit to our customers comes in the form of:
Ongoing involvement to ensure that the products made are continuing to solve real problems.
Higher-quality final products because smaller iterations and feedback cycles ensure that defects are found and fixed quickly.
How Agile is leveraged at Smartrak
There are a few different methodologies that help us develop processes to facilitate Agile. Smartrak makes use of both SCRUM and KANBAN. SCRUM is used for larger projects. It enables improved tracking, prediction and release management. KANBAN is used for ongoing development work, such as support or R&D investigations.
Agile has led to a cultural change at Smartrak. We use the process that best suits a project, which can be changed when needed. Even the more traditional Waterfall approach is used when suited.
Issues with an Agile approach
Agile provides a great platform for alterations, however, it risks 'scope creep', and additional time and cost. SCRUM helps facilitate course correction through periodic work periods (sprints). Each course correction (e.g. feature change, technology hurdle) is assessed to ensure the project meets the business needs, and the business stakeholders are involved along the whole process.
Smartrak is committed to continuous improvement, striving to deliver great software solutions that solve real problems while providing great experiences for those we work with.