Agile methodology – what’s the fuss? Your users are communicating without you being part of the conversation. Direct messages, tweets, posts and pics are moving across the internet like atoms in constant brownian motion. An incredibly complex web of information flows that cause your users to act in ways that no one can predict. For you as an app publisher that’s amazing but also scary! Today we’re exploring why you should insist on agile methodology for your next mobile project.
The old approach to app development of specifying, designing, developing and testing everything you think you need up front just won’t work any longer. Looking at Dave Snowden’s Cynefin framework can help explain what’s happening to the world of mobile app development.
The framework defines five domains:
Simple/Obvious — where cause and effect are apparent. When X happens, do Y.
Complicated — where cause-and-effect are related, but that relationship has many more steps and moving parts. These situations tend to require experts and more in-depth analysis to know what to do.
Complex — where there are causes and effects, but they’re entangled in ways that can’t be predictably separated, even by experts. Here you’re looking for empirical patterns while engaging in trial-and-error sense-making.
Chaotic — where there are no patterns between cause and effect.
Disorder — when you don’t yet know which of the four categories above describes your current situation.
For example, building a Ferrari is complicated. I can’t do it but a suitably trained mechanic could.
The weather and climate are complex. Predicting exactly what the weather will be like to any degree of accuracy requires huge models that can be studied in supercomputers and even then it can be wrong locally. It’s impossible to plan a BBQ in Scotland and know it’s going to be sunny.
The whole process of mobile app development has moved from Complicated Domain to a Complex Domain as our users take on information from sources beyond your control and start acting together in ways that you are not privy to. The approach we need to apply changes from listening to experts telling you how your app will be used up front in the development cycle to a model where you release an experiment as soon as possible and measure how it’s being used after the fact.
Building Analytics into your app is becoming standard to measure how your users are actually using your software. But sifting through all that raw data looking for answers is no easy task and you should consider hiring an expert to assist with on-going data services as part of your mobile application budget.
To be a success the supporting development approach needs to keep up with the lessons learnt from the application analytics data. Agile software development with it’s short feedback cycles and regular deliverables is designed to tackle Complex Domain problems.
The same is true for the type of partnership you have with your mobile provider. These days you need a partner in your mobile app provider. Someone who will tend and help grow your app from a tiny MVP to where you need it to be.