5 Questions to Ask Before Building an App
Goals, platforms, capabilities, budget, & release
At Lickability, we’ve helped lots of folks build and ship great apps. Because of this, many times when people meet with us for the first time, they ask us if there’s anything they’re forgetting when thinking about starting work on their 1.0.
Here are 5 of the most important questions we think you should ask yourself before starting to build your app.
What are your goals?
First and foremost, you should think about your goals for the app, as these goals will drive many of the other decisions you’ll have to make down the road.
Is the purpose of the app to make money right away, maybe by selling access to a product, service, or experience? Or is the goal to simply acquire users in order to validate the idea and prove product market fit? Are you looking to develop a prototype, launch an MVP and iterate on your idea (maybe even in a private beta), or launch a fully polished 1.0?
Setting realistic and obtainable goals at the start of your app-building journey will give you a solid foundation on which to make future decisions and make many other questions clearer to answer.
What platforms will you support?
For some folks, the answer here may seem easy…support all the platforms! But, depending on the goals you’ve established when answering the previous question, that may not be the right answer for your project.
When thinking about mobile apps, there are two main players: iOS and Android. But with this simple choice comes many other decision points, such as whether to write the apps natively or use a cross-platform technology. For folks that are starting from scratch, our recommendation is to pick a single platform to nail the experience first. This is usually the quickest and least expensive option, and allows you to get your product out in the world to start getting feedback from users.
If one of your goals is to reach as many people as possible at launch, then supporting both platforms out of the gate may be best. If this is the case, you’ll have a choice to make about how the app is created. If performance and polish are important to achieving your goal, writing the app natively for each platform is your best choice, as it lets you take advantage of everything the hardware and system OS has to offer. If cost and speed are the main factor, taking advantage of a cross-platform technology (in short, one codebase for both platforms) may be the right call. However, a word of caution we like to make our clients aware of is that using cross-platform technologies is not as simple as getting two apps for the price of one. You’ll still have to consider differences in design across supported devices, and you’ll need some native code to make specific features work on each platform.
In addition to the mobile platform you choose, you may want to evaluate if supporting other platforms for tablets and wearables makes sense. Finally, don’t forget the other technologies in the stack that will power your app—a content management system to add content to the app, a backend for user accounts, and user analytics and crash reporting to monitor performance.
What can you do yourself and what do you need help with?
Building a mobile app from scratch is hard work. It would be wise to perform a self-evaluation of what your capabilities are, both in skill and in available time. This will help you put together a clear list of what work you can take care of in-house and what help you’ll need to seek out.
Some services to keep in mind:
- Frontend & Backend Development
- Project Management
- Product Management
- Customer Support
- Marketing/Social Media
This process also leads well into the next important question…
What is your budget?
One of the most difficult (and most important) questions to answer revolves around the triple constraints: time, cost, and scope. This project management triangle applies to any project you could ever undertake—from redoing a kitchen sink in your house to building the next Facebook.
Time can be reduced by adding more engineers to the project (and adding cost) or reducing scope. One thing to keep in mind here is that there are diminishing returns on adding engineers to lower the development time, as only so much work can be done in parallel.
Scope will largely be determined by the goals for the app. As much as we may want to include every feature possible, the reality is you might have to make some difficult decisions here. However, don’t forget that you can always add more features later in the app’s roadmap.
Mobile app development is expensive, so keeping costs in check is an important factor. Generally, reducing scope is the most effective way to reduce costs, but increasing development time can also be a good way to save a little bit of money.
Putting together your budget is also a good time to think about your funding. There are several options to fund a project, that all carry their own pros and cons. You could raise venture capital funds, crowdfund your idea on platforms such as Kickstarter, look for angel investors, seek out funding from friends & family, or bootstrap the project yourself to name a few possible solutions.
What are your plans after the app is released?
Finally, take some time to think about your post-launch plan. Software is never perfect and always changing, so what will your plan be for maintenance & bug fixes? When users finally get to play with your app, they will have feedback. How will you address this feedback and provide support for customers who need it? Are you prepared to support your app if it explodes in popularity? What about additional feature development, whether that be items on your roadmap or user requested features? Do you plan on taking over ownership of the app, hiring a full-time team, or continuing to use a partner?
Answering these questions should put you well on your way to bringing your idea to life. Whether you need help answering these questions yourself, or you are ready to get started, we’d love to chat with you and help however we can!
Want help building & shipping an iOS app? We can help! Get in touch.