About the Author
Jamie Smith is a Senior Development and IT Manager, Agile Practitioner, Father and Triathlete. Currently working for Citi, Jamie is a delivery and development manager with over 10 years experience in a range of technologies, architectures and both front and back end systems. Jamie leads large-scale IT projects spanning multiple business sectors including Wealth, Institutional and Retail having previously worked for the BNY Mellon Company and NCR.
Being truly agile is very difficult. It’s easy to fall in to the trap of doing “agile things”, but really being agile and living the principles is a tough pursuit. Mike Cohn blogged a short but impactful post about it recently which provoked me to think about how easy it is to convince yourself you’re doing agile without really being it.
In traditional software development the benefits from being agile are deep and are spread (almost) evenly among the stakeholders of the development process. But there are many teams and companies that can’t, won’t or don’t know how to embrace it and so don’t get the benefits. But these teams do still survive. They develop software for their clients who accept and pay for their work. One day they’ll see other teams doing better wonder why. Then they’ll discover Agile and their journey will begin.
But that’s not true for Mobile development. Mobile app development teams who aren’t agile won’t survive. That’s because the environment in which mobile development takes place is a fast-paced, changeable and uncertain environment. The demands are dynamic and the entry costs are low. Companies are rapidly appearing and developing apps quicker than you can write a functional specification. How and where an app is used can’t be predicted, so how fast you can react to change will determine how successful a Mobile App team can be.
Take the team at Waracle for example. I met with them recently to talk about their adoption of development practises. The commonalities between Agile and Mobile App development are keenly understood by them. Here’s what we talked about:
Lean & Mobile: it’s the same right?
The principles of Agile and Lean fit very snugly together. That’s not new though. But Mobile App Development and Lean also are extremely well aligned. The ability to get something into the hands of your audience as quickly as possible then incrementally build out the experience based usage is as Lean as you can get. Eric Reis’s excellent book Lean Startup identifies these practices:
– Minimum Viable Product
– Continuous Deployment
– Split Testing
– Actionable Metrics
They are all key practices that the Waracle team embrace. And living the agile principles allows them to achieve that. Take the top two agile principles, they could have been written purely for mobile development:
“Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.”
“Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.”
The Fastest of feedback loops and Continuous Development
One of the areas that being agile deeply embraces is that of continuous feedback. For Mobile App development teams getting something to their customers and reacting to their needs and use is essential. That’s why short delivery cycles of something like scrum fits so neatly into their process. The ability to incrementally build out the application and optimise as you build is so necessary that it’s virtually essential.
Is being Agile a Marketing tool?
One area that we talked about, surprisingly for me was Agile being used as a marketing tool. People like “Agile” and it seems to encompass a feeling of fast, good and low-cost delivery. Their clients want to know that they’re “Agile” – but don’t understand their role in it. Portraying yourself as Agile may get you some business or at least your foot in the door, but it quickly unravels if you’re not being agile. Your client’s may not understand what to do or how to interact with you if you’re not clear about the development journey you expect. But how do you know if a team is really being agile or whether they’re doing “agile things”. I’ll answer that in my upcoming post called “5 things to ask your Agile team”.
You can’t be Mobile without being Agile
So where we finished the discussion was that you can’t be Mobile without being Agile. Your clients want it and your users demand it. So we’re back to where we started: being agile is very hard. Like we’ve said in our manifesto – it’s a pursuit of getting better and improvement. To get the profound benefits that come with agility it takes a lot of discipline and attention. For traditional software development it’s a mark of excellence and the benefits are great. For Mobile App development you won’t survive without it.