In the last post I shared my thoughts on how some of the principles advanced by the lean startup movement can be applied to an analytics & planning program. In today’s post, I would like to take this train of thought a step further and apply some of the principles from agile development. As a quick background, agile development is a group of software development methodologies based on iterative and incremental development. The term came into formal use with the publishing of the Agile Manifesto in 2001, although the ideas of being lightweight and adaptive have a strong link to the early days of software development.
So, how does a software development methodology relate to the development of analytics & planning applications? Let’s take a look at the manifesto itself:
“We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.”
Let’s look at each of these concepts in terms of how they apply them to the development of analytics & planning applications.
- individuals and interactions over processes and tools – For an application development team to be successful, we believe that self-organization and motivation are important, as are interactions like co-location (where possible). If we can mobilize a team that works interactively with our clients then we typically produce our best work.
- working software over comprehensive documentation – As part of how we work with our clients, we continually emphasize working application modules rather than just presenting documents to clients in meetings. Being able to touch and feel a dashboard, a report, an input template, or an ad hoc analysis environment is worth more than words on a page.
- customer collaboration over contract negotiation – A key tenant to building successful analytics & planning applications is to have tight, continuous stakeholder involvement. The applications we are building are management tools and need to reflect the unique needs of each client. Metrics are only effective if they are used and this only happens through collaboration.
- responding to change over following a plan – Agile development is focused on quick responses to change and continuous development. This approach allows our teams to embrace change to make the applications more compelling / viral and to start small and deliver increased value over time.
We believe that through the application of agile software development methodologies to analytics & planning applications you can better align your efforts with the cadence and changing needs of the business. It allows you to start small and quickly and consistently deliver new modules rather than taking a big bang / high failure approach. Simply put, we believe it is a better way.