When apps first became the ‘best thing since sliced bread’, every company wanted one just to get their brand out there and to compete with other businesses. But fast forward a few years: the high cost of app development and the ease with which responsive websites can be built, mean fewer companies are now releasing apps just for brand awareness.
Users have also matured – no longer satisfied with an app that only advertises a company’s products and services – they want it to do something useful. With so many apps available, users need a reason to download and install an app on their phone – they need it to improve their life. Users rely on apps like Uber, Airbnb, and banking apps in their day-to-day lives.
App Development Lifecycle
There are plenty of tutorials and “getting started” guides that cover the basics of how to build a mobile app. However, successful apps are built with a clear purpose in mind and delivered via an intuitive user experience. Experienced app developers work hand-in-hand with designers, testers and end-users in order to optimise the app experience.
1. Research your idea
You need to know your market! What will resonate with your users and why are they going to download your app? Understand the persona of someone who would download your app – what drives them; what challenges do they have; what problems are you attempting to solve for them? In this preliminary phase, you can borrow techniques from marketing and business strategy, like doing an audit of your market and a benchmark of your competitors.
With so many apps already available, not each-and-every one of them will be revolutionary, but your app must provide a better, or more efficient, alternative in order to be successful. As part of defining the market for your app, you should consider which platforms (e.g. iOS, Android) and even which devices (e.g. watch, phone, tablet) you need to support. For example, if you were building a fitness tracking app, you’d want to consider which smartwatches to support, in addition to building a mobile app.
Other technical decisions you’ll need to make upfront is whether to use a cross-platform framework to help reduce development costs and how much to invest in the back-end services that your app requires. Evaluating all these decisions as part of researching your idea will help prevent costs from blowing out during development.
2. Experience your User Experience
Once you have refined your idea, it is time to put it down on ‘paper’. Define the essential features of your app (i.e. the Minimum Viable Product) and envisage how users will experience your app.
Wireframe your app and start imagining how each feature will work. You can also create storyboards, or a roadmap, to map the flow through your app.
This phase can feel like a lot of ‘back and forth’ but don’t worry, time invested in these early stages will pay dividends when you get into development, reducing the time spent correcting, or reworking, features that haven’t had enough planning.
3. Validate your concept
Engaging early with potential users is a fantastic way to validate your idea. You can build a prototype of your app, that you can use to get feedback on how your app will work. Prototypes range from paper mock-ups that users can step through, through to semi-functioning apps where the user is able to interact and get an impression of how the app will function.
In parallel to prototyping your concept, you’ll want to invest in the user interface design. Essentially this is taking the wireframes and giving them a graphical makeover. This may range from a simple visual treatment that applies your brand (logo, theme colours etc), through to high fidelity visual designs that incorporate animations and transitions.
4. Develop your app
The development process for your app should follow an agile methodology and should consist of a series of small iterations, often referred to as ‘sprints’. Each iteration should define the features that are to be worked on. At the end of each iteration, you should be able to verify progress along the agreed development roadmap.
Increasingly various stakeholders in the app development process are encouraged to get involved. Whether it be attending the daily stand-up meetings, or providing feedback with each build, the reality is that the earlier you can start to incorporate feedback into the development process, the better the outcome for everyone.
The development schedule should co-ordinate the development of both the app and any associated back-end services. To avoid blocking the critical path, this may temporarily require developers from other teams to assist with the development of the app, or the back-end services, to reduce the risk of unnecessary delays.
5. Test and release your app
Last but not least, the testing phase should be done by engaging as many test users as possible. Whilst this phase is often mentioned towards the end of the app development process, testing is something that should happen in parallel to all development activities.
During testing, any feedback or issues should be triaged and handled appropriately. Feedback can include must-fix bugs or issues, enhancements and new feature requests. The triage process should not only identify what is a bug/issue, it should also prioritise each item for development.
As you get close to having a stable build of your app, it’s important to consider how you’re going to launch your app. Are you going to build a marketing campaign, or are you going to leverage an existing network of influencers who can help drive an audience to your app?
6. Planning for vNext and vNext-Next
Before you’ve even launched your app, you should be considering what comes next for the app – what’s going into the next version of the app (i.e. vNext) or the version after that (i.e. vNext-Next). This may be building out capabilities or adding efficiencies in the back-end services, or maybe there is a list of features that didn’t make the minimum viable product, which you can schedule for development over the coming months, or years.
The total cost of ownership of an app needs to be provisioned for, on an ongoing basis. This will allow for the planned, yet progressive, release of new features.
Mobile app vs Website – which one for my business?
With the first-ever app store opened by Apple over 10 years ago, app popularity has continued to grow. Everyone loves apps that help them in their everyday lives. Depending on the industry, your business could even appear outdated if you don’t have an app. However, developing an app just to be like everyone else is not a good enough reason. Developing an app is a considerable investment of money, time and effort. You should only consider building a mobile app to stay competitive within your market.
One consideration to keep in mind is that mobile apps and responsive website have a lot of similarities, and in fact, a website may be less complex to develop and be more accessible. Alternatively, a mobile app can also take advantage of the native functionality of the device like the camera or GPS. Furthermore, your customers will be able to engage with your app at any time, from anywhere, as your mobile app can be used offline.
Different types of apps
How much you invest in an app depends on several factors, like who is the audience and whether it’s your primary engagement with customers.
Apps can either be designed as enterprise or consumer applications.
An enterprise app, also referred to as a line-of-business app, is built with specific use-cases and narrow context. Enterprise apps are custom-designed solutions, for an organisation or an industry, developed with the specific goal of digitally transforming a business process. Companies can increase productivity and create efficiencies through enterprise apps by streamlining or automating business processes. This can reduce errors and increases accuracy, or it can empower a mobile workforce through the better management of, and accessibility to, timely data.
For long-term success, enterprise apps need to be high-performing, intuitive to use and custom-built with a company or industry’s specific function in mind to create a specialised solution. To this end, enterprise apps are often more complex and costly to develop than consumer apps but can provide benefits and revenues indirectly into a company through the efficiencies and cost-savings created over time.
Consumer apps are those that customers use to engage directly with your company and are built to serve or improve a certain aspect of an individual’s life. Consumer apps utilise user-centric designs to attract and retain users’ attention. The primary method of revenue generation in consumer apps is through in-app subscriptions, purchases and advertisements.
There are over 60 categories of those apps combined in the App Store and in Google Play Store. We can easily sub-classify those apps into 7 main types.
Lifestyle apps relating to fitness, dating, travel or even food.
Lifestyle apps saw the biggest growth in the recent years. We use them daily as a complementary product or service that is related to our social activities and interests. They help us find the restaurant we’ll eat at; book the ticket for the movie we’re going to see; or plan our next date.
Social media apps like Facebook, Instagram and Snapchat.
Increasingly, apps not considered a traditional social media platform are encompassing social networking functionality, such as share, likes and comments, to build community and keep users continually engaged with the app.
Utility apps like the calculator or weather apps.
We use them without really realising they’re an app. Most often, they’re already installed on your device. Utility apps are great tools that help you quickly solve or accomplish a simple problem or task.
Games/entertainment apps like Angry Birds, Candy Crush or Netflix.
Advances in technology over the years have transformed the once simple games on early generation mobile phones, into exciting, complex and highly graphical mobile games that are worthy competitors to computer games or Sony PlayStation games. The gaming category is extremely competitive, with gaming apps generating 82% of all mobile app revenue. Entertainment apps are differentiated from gaming apps because their sole focus is to keep the user occupied with their vast library of content. They can include text, audio and video content and provide endless hours of entertainment, allowing users to fill their time whether they’re at home, or jet-setting around the world.
Productivity apps like Xero, Evernote and Outlook.
Whilst they don’t sound exciting, when done right, productivity apps are one of the most indispensable app categories. These intuitive and purpose-driven apps help the user accomplish complex tasks quickly and efficiently, anything from accounting and project management, to sending an email.
News/information apps like Flipboard and Buzzfeed.
In this age of digital journalism, news apps disseminate news and information to mass audiences, helping users stay up to date with the latest content relevant to their interests.
Educational apps like Duolingo and Lumosity.
There’s an emerging trend for educational material to be disseminated via an app. Whether it’s a simple flash-card style app, or more complex study material, these apps are designed to let students’ study on the go, filling otherwise dead time, such as waiting for a bus.
What ways are there to build an app?
Before deciding to build an app, you need to consider the ways you can design and create it.
Web App vs Mobile App
Put simply, a web app is a website that has been optimised so that can be viewed on all smartphones and mobile devices. While they’re quicker and less expensive to develop, they’re also generally more static and have limited functionality. Primarily, web apps are created to help market a business and is typically focus on content distribution.
A mobile app runs on a mobile device and is built as an intuitive tool to achieve a specific function or purpose. They can work offline and are designed to take advantage of the device capabilities like the camera or the GPS.
Native or cross-platform?
If you decide to go down the mobile app development path, there are more decisions to be made on the way to build it. Do you want a native or cross-platform app?
A native app is one designed and developed for a specific device or platform like iOS , Android or Windows. It is coded in its native programming language – respectively Objective-C or Swift, Java and Kotlin, C# and XAML. It’s therefore optimised for that operating system and can natively access the device’s hardware. The drawback of building a native app is that if you then decide to publish an app for a different platform, you need to rebuild the entire app using the corresponding tools and code.
Cross-platform development allows you to develop once and publish across multiple platforms e.g. iOS, Android and Windows. Since you only need to develop the logic and user experience of the app once, cross-platform frameworks offer a considerable cost saving.
Cross-platform frameworks like Xamarin, React Native or Flutter let your app keep the same look and feel as a native app. It costs less in development resources and can be quicker to develop than having to build a native app for multiple platforms.
Build an App Strategy
Before you make the decision about building an app, it’s important to be clear about the purpose. Why are you looking to build an app? Keeping the answer to this question front of mind will help give you clarity whilst you plan your app strategy.
Work out the minimum viable functionality you require before you get started. Think about:
- What features are required in the first version?
- What features can ship in subsequent updates?
- What’s going to be the ongoing development process?
- How much can you invest both upfront and continuously in the app?
A common mistake is to commit to a large up-front investment into developing a fully featured and complex app containing all the functionality you can think of. Instead, think about the long-term investment you’re making – prioritise the minimum feature set to go into an initial release, followed by progressive investment into the highest priority features as determined by listening to feedback from your active users.
Built to Roam’s philosophy is to focus the initial development effort on a robust app that delivers your minimum viable product to the market. Beyond the initial release we’ll gather user feedback which will help to guide your investment in new features. It’s a process of ongoing development – investing and iterating at a rate that suits the company.
We partner with you for a long-term strategy of development and ongoing management.
Can we help you with your mobile app strategy?
Talk to us to find out how we can help.