This is the second most common question after “How Much Does It Cost to Build a Mobile App.”
You know what? Coding is hard, especially when building a platform.
It will usually take 3 to 4 months to successfully develop an app that is ready for public release. When I say develop, I mean the engineering part of the process. This timeframe doesn’t include the product definition or design stages of building a mobile app.
Factors such as the composition of your development team and what development methodology you use will impact your timeframe.
A key assumption I’m making is that your mobile app will be integrated with a back end server through APIs. The APIs and infrastructure could already exist or could be built in parallel.
Generally, if you are building out both a back end and the front end (consumer part of the app) at the same time, you want your back end team to start first. By giving them a head start, they can firm up their endpoints and APIs in advance of the front end team starting development.
Back end engineering typically consists of the following activities:
Front end engineering typically consists of the following activities:
(Source: Kinvey)
With iterative software development and an appropriately prioritized minimal viable product, 3 to 4 months should provide sufficient time to release a product you’re proud of to your community and network.
A 3 to 4 month timeline is appealing, but not easy to pull off. Here are a few key assumptions that you need to fulfill:
You need the right team in place for mobile app development to go smoothly. The product manager and designer(s) should be creating documentation before development begins. This is not included in the 3-4 month development timeline mentioned above. The upfront design phase could vary from a few weeks to a few months depending upon your preference of development process. You also need your product manager to be working out of a tool like Pivotal, creating specific user stories that your developers will be programming.
User stories are usually templated as follows, “As a <type of user>, I want <some goal> so that <some reason>.”
You should engage a quality assurance analyst to identify bugs as you code.
If you are developing the front end of your mobile app along with the back end infrastructure, it’s important that you prioritize what functionality you build. Give your back end engineer a head start so that your front end engineer can build functional code. If the back end isn’t well defined and isn’t functional, it’ll render the efforts of your front end engineer less efficient.
Integrating with third-party technology are always an unknown in any mobile app development cycle. Documentation will tell you how things should work; however, very often technology products don’t function to spec.
You can write tester code to make calls into the 3rd party endpoints and see what data you receive. This type of testing can will give you a better understanding of whether or not the technology works properly.
But, that also will only do so much. There will always be unknowns that crop out of nowhere when integrating 3rd party technologies into your app and/or back end infrastructure. Generally, try and tackle the hard and unknown tasks first.
Filed under: Product Engineering | Topics: engineering, mobile apps