App development projects come in various shapes and sizes – but there are usually some common stages of work that will help you to navigate through the process.
In this guide, we’ve set out the stages of app development in a linear order:
- Defining your idea
- Ongoing work
This is the usual order of development work. However, it’s quite possible that your project will diverge from this blueprint.
Sometimes you may need to circle back to previous stages of the journey. For example, the Testing stage can reveal issues which will need to be resolved through further design or development work. And when we reach the final stage – ‘Ongoing work’ – activity from each stage will become part of the routine work of maintaining the app.
Stage #1: Defining your idea
Perhaps you’re developing an app for your team members or existing customers – or maybe your app will be the core product of a new business. Whatever the market for your app, you need to know exactly what it will do.
Start by defining the app’s ‘value proposition’. How will the app provide value to users.
The most successful apps tend to have very clear value propositions – e.g. ‘Candy Crush Saga is a fun and accessible game’; ‘Uber lets you order a taxi using your phone’.
Write a succinct value proposition that captures the core purpose of your planned app.
When your app idea is sufficiently well defined for the first stages of development, you can assemble the team who will work on the app. It’s likely you’ll take one of three approaches:
- Work with an agency. Choose an app development agency which meets your project requirements.
- Employ a team of app developers. If you choose this approach, first make sure you have enough app expertise in your HR team to make good hires.
- The ‘apptrepreneur’ approach (for startups). Assemble a small team of co-founders, including a team member who will lead on development.
We can think of each person involved in building the app as a stakeholder. All of the stakeholders must agree on how the app will be developed, and what exactly the project will deliver. You may choose to write these agreements into contracts or by creating a well defined project brief.
Stage #2: Discovery
The active work of app development begins with investigations into how the app will function. We call this stage ‘Discovery’, because the focus is literally to discover what the app will entail and how it will serve its users.
This stage should start with the discovery team asking you lots of questions about what you want from your app. In particular, you’ll discuss how a user will use the app, and why. The process will touch upon factors including:
- Clear user objectives (or ‘user stories’) – what the user accomplishes by using the app.
- User journey mapping – the steps a user takes, from loading the app to reaching their objective.
- Target audience/audience personas
- Unique value of the app/USPs
- Key competitors
Think carefully about each factor, and try to put time and research into your responses.
Once the development team has nailed down enough key information about your aims for the app, they can start prototyping some assets to show how the app idea could work. These might include:
- Wireframes – 2D screens showing the planned layout of key frames of the app
- Hifi prototypes – a rich app prototype which offers something close to the user experience of the finished app
- PoC (proofs of concept) – demonstrations of specific technical features of the planned app
The prototype assets can be used to help all project stakeholders – from developers and designers to investors and management – to understand the project. This is a great opportunity to share the premise with the target audience to get early feedback before the development cycle.
Stage #3: Design
This is the stage of app development where we design the app’s user interface (UI), which means the interactive parts of the app. At the same time, we consider the app’s user experience (UX), which refers to the quality of experience a person has when they use the app.
The creatives on your team will create designs including:
- UI Components
- Screen designs
- Animations (e.g. load screens)
- Copy (the words that guide people while they use the app)
This will take into account your existing branding and brand guidelines (if you have them). And it’s likely that you’ll also take inspiration from other brands’ apps which you admire.
The team should also carefully craft the user journeys of people using the app – planning how the user can get from A to B (or C, D, Etc.) as smoothly as possible.
Throughout the Design stage, it’s important to factor in the app’s use cases, current UI/UX trends, and human-computer interaction (HCI) best practices.
Stage #4: Development
The Development stage is where we turn the app design into the first full, working version of your app.
How we get there will depend on your work methodology. At The Distance, we use a tailored process based partly on the techniques of agile project management, which delivers development work in an activity cycle made up of relatively small ‘releases’. The tasks identified as most valuable to the project are prioritised in each release.
During each cycle, the development team produces code that will form the app, working closely with the testing team who will later fully review the launch version of the app (Stage #5: Testing). All of the stakeholders review the release, and contribute their feedback and ideas to feed into the next cycle of development.
Initial development culminates with the completion of the first full iteration of the app – although there’ll be room for much more development work after testing and launch (Stage #7: Ongoing work).
Stage #5: Testing
Before an app launches to its audience, it should go through a rigorous testing process – sometimes referred to as Quality Control (QC).
Every user-facing feature of the app will need to be tested. This includes all of the frontend features that users will interact with – the UI – and also the backend features that your team will work with, such as the app’s content management system (CMS).
While some aspects of app QC can be automated, much of the work is still done manually, in order to accurately reflect human critical values.
The QC analysts who do all this manual testing may belong to the same agency as your developers – or they could be sourced from a third party. The former option helps with communication between developers and the QC team, whereas the latter option provides the benefit of a fresh perspective.
By the end of the QC process, your team may have flagged errors, bugs, inconsistencies and areas for improvement in the app’s UI and UX. It’s important to catch potential problems like these before they can cause bad experiences for real users – the people who you want to retain and encourage to give good ratings and referrals for the app.
Many app development projects will cycle through the Development and Testing stages multiple times before progressing to Launch.
Stage #6: Launch
You have a few different options when it comes to launching your app. You might launch on any combination of the following:
- Apple’s App Store (for iOS users)
- Google Play Store (for Android users)
- Enterprise Distribution (launching independently of the app stores)
If you’re going to use Apple and/or Google’s app stores, it will often be a good idea to soft-launch the app as a beta version via Apple Test Flight (iOS) and/or Google Play Beta (Android) first.
When the time comes to fully launch your app, your choice of launch platform(s) should consider your audience. Which platforms do they use?
For example, if your app needs to reach a diverse mix of customers, it makes sense to launch on both Apple’s App Store and the Google Play Store, at least. Or, if your app is for internal use and all of your colleagues have company-issued iPhones, you could launch solely on Apple’s App Store.
Some apps are launched on one platform initially, before adding other platforms later. For example, Instagram was available only for iOS for the first year-and-a-half of its existence.
Launch also involves marketing the app to new prospective users (or if it’s for internal company use, communicating about it with team members). This is a whole subject in itself, but briefly, your methods might include:
- Creating a landing page or website to promote the app.
- PR, including reaching out to journalists, and publishing press releases
- Social media advertising
- SEO and paid search advertising
- App store optimisation (ASO) – the process of optimising your app store listings, with the aim of attracting downloads from high-value, highly-relevant users
With all this work completed, you should allow yourself a moment of celebration!
But don’t celebrate too hard, as there’s still lots of work ahead.
Stage #7: Ongoing work
Developing an app is a long-term project. Post-launch, the focus shifts to ongoing maintenance, improvement, and evolution of the app so that it can adapt as user needs inevitably change over time.
Routine maintenance is often the most important aspect of ongoing work. Even the best apps need regular upkeep to ensure they perform at their best. Sometimes, this will mean fixing bugs in the code that runs the app.
At other times, changes are made to ensure the app works properly with the other technologies in its ecosystem, including:
- Operating systems (OS). New versions of iOS and Android are launched regularly – sometimes as often as annually. Changes to an app are often required to ensure compatibility with new OS.
- Third-party software. Many apps use third-party softwares such as payment providers or Google Maps (integrated via API) as part of their service offering. When a third-party makes a change, your app might need to make some changes too.
- Privacy and security updates. Your app will need to be updated from time-to-time, to accommodate changes in privacy and security regulations or standards.
And if you’re seeking to grow an app as a business in itself, it’ll be particularly important to keep developing the app for a number of years.
How to navigate the stages of app development
App development is complicated – especially during the initial build of the app. It’s highly advisable to have a project manager in place who can steer the development process and keep everyone on-board with your chosen work methodology.
You might employ your own project manager to deliver your app project – or you might use the project management capacity within your chosen app development agency. Both options have their merits. Using your own project manager maximises the ‘voice’ of your company within the project, while using a project manager from the agency’s side ensures that a high level of app development expertise goes into decisions on how the project is managed.
Whether or not you use a project manager, be sure to bear in mind the stages of app development which we’ve outlined in this guide. Each phase is indispensable to any successful app project. And having that broad-brush plan in-place will give every stakeholder a feel for how far they’ve come, and what still needs to be done in order to deliver a great app.
If you are interested in seeing your app idea become a reality, get in touch and speak to one of our experienced team members. They will provide you with advice and guidance and get the ball rolling on your business’ exciting new app project.