Building apps isn’t easy... in fact it’s bloody difficult to build one successfully. It requires know-how, hard work, and above all, experience.
But getting the experience required comes at the price of making mistakes early on and then applying the lessons learned.
Having built over 2,000 mobile apps in the last 11 years, AtomicMedia has acquired that experience (and possibly one or two mistakes along the way).
With so many apps under our belt - all for varying companies and industries - we’ve seen certain lessons come up again and again.
In this series we’ll sum up the 10 most important lessons we’ve learned from the many years we’ve been building apps - I hope you’ve brought a notepad!
How to plan
The planning stage of a project is an easy stage to neglect, particularly if you’ve been given a short turnaround time, the project seems on the surface to be a simple one, or if you’ve completed similar projects in the past. But as the old saying goes: Fail to prepare, Prepare to fail; and this is certainly true when it comes to app development.
Mobile app technology is constantly evolving, meaning the same thing you did last time will almost certainly not work out the same the next time you try it. There are so many variables to consider, from a client, user and development perspective, that it’s essential to plan effectively in order to ensure a smooth-running project and quality end product. And, as we learned the hard way over 20 years ago, failing to plan can lead to a seemingly simple project spiralling out of control and your development team having to pull an all-nighter to get the app in the app store in time for the deadline.
Over the years, we’ve fine-tuned our planning process, discovering fresh considerations as we encounter new, unforeseen hurdles. Each project is now meticulously planned and carefully considered in order to ensure a smooth and timely development schedule. Here are some of the things we, and our clients at our suggestion, consider when planning the development of a mobile app.
Before embarking on the project, it is essential to know how much time we have to spend on the project and for the client to agree to that amount. This ensures you do not get to the end of the project and realise you still need five days of development time that wasn’t budgeted.
The agreed budget will also determine the complexity of the project. If you’re hoping to deliver a complicated Augmented Reality app that the client doesn’t have the budget for, you need to refine the solution and find something else that delivers the requirements but doesn’t cost as much money.
What is required from the app and what features need to be included? It’s very easy to look at the brief superficially, think it looks very similar to another project we’ve done and simply replicate that but with a few tweaks. However there is no one-size-fits-all approach to app development. Understanding the full scope of the app from the outset will ensure the end product fully meets the requirements of the client. It will also ensure no development time is wasted on whistles and bells that the client hasn’t asked for.
The 5-day design sprint
We strongly believe for some complex apps, in order to get the UX and UI right, a sound understanding is essential. We believe a design sprint is paramount to ensuring the app offers a real benefit to the end user and that they get what they want from the app.
The design sprint is a five-day process for answering critical project questions regarding the app through design, prototyping, and testing ideas with customers.
Working together in a design sprint team, you can shortcut the endless-debate cycle and compress months of time into 5 days. Instead of waiting to launch an MVP to understand if an app is any good, you’ll get a really clear idea from a realistic prototype. The sprint gives you a superpower: You can fast-forward into the future to see your finished app and customer reactions, before making any expensive commitments.
Before we start any project, we assign project roles and responsibilities and lines of reporting, ensuring each task within the project has somebody accountable - our side and client side. This provides the Project Manager for both teams with an overview of whom to speak to regarding each element of the project as well as ensuring that everyone in the team understands their delivery requirements and to whom they are reporting for each element of the development.
We have adopted an Agile method of project management, which is currently the industry gold standard adopted by digital development teams. Under this methodology, the development is separated into individual stages called sprints, with each sprint completed and tested before moving on to the next stage. This allows us to identify and address issues with the development as we’re going along, leading to fewer issues with the completed pre-launch version of the app.
Good planning means a successful app
Good planning may add a week or so to the start of the whole schedule, but in the long run it can save weeks of additional development time required to put right issues which should have been addressed from the start. It's therefore a vital stage of the development process and one which we at AtomicMedia take very seriously in order to save our clients pain and money.
Look out for Lesson 2 coming soon...