Fundamentals of building a Mobile App or a Product
You have a brilliant idea and looking at the success stories of some start-ups you have read about, you feel your idea will surely work. This article is to make people with non-technical background aware on what are the core essentials for building a "Mobile App"/"Product" and hopefully educate them on what to expect in this journey.
Ideally a person with good technical experience (Architect), good marketing skills and possessing ample business knowledge is a perfect fit for venturing in building Apps/Products. Alternatively, if you possess excellent Business Knowledge along with good marketing skills and if you can get a reliable technical person (Architect) will also work out.?
Having said that the core team must believe in the idea, trust each other and must be extremely passionate in taking it to the next level. If you are technical, then you are already aware of the pre-requisites and can skip this article. Please feel free to add points missed out by me in the comments section.??
Once the above points are understood, the points below are an attempt to make you aware of the processes involved in building a mobile application and/or a Product.?
1. Idea
Ideas originate to solve a problem that you encounter in your day-to-day life and/or an innovation to improve our lives further. First and foremost, documenting your idea with examples and diagrams/flows is very essential. The document should clearly state the problem that you are trying to solve and the possible solution. Market research and statistics of the users you are targeting should be highlighted.?
Further research on whether a solution similar to yours in some form already exists and their drawbacks should be studied. This confidential document should then be shared with a limited set of people (whom you trust and are knowledgeable on start-ups) to understand their views and opinions on your idea.?
Take a conscious decision if all the pointers are in your favour and/or if you still very strongly feel this idea will work. Either way try and address the gaps in other existing Apps/Product similar to yours, so that you start-up is a differentiator.
2. Technology
This is the crux of building the Apps/Product.?
If you are technical, evaluate pros and cons of the technologies you are familiar with. Build a simple framework which your development team can easily understand, so that they can build features at a good pace. Don’t start including technical jargons and complex features which are difficult and are not needed at the initial stage. I again stress on keeping the framework as simple as you can and later when your App/product gathers traction you can extend / improve your framework further as you grow.?
If you are non-technical then only option is to take assistance from a software service provider who has experience in building apps. You will have to evaluate providers on the bases of parameters like their expertise (or capability), cost and schedule. Building an app from scratch is a lengthy process and hence don’t expect that your app will get delivered in shorter duration of a month or two. Building an app from scratch involves first building the technical framework on which the app will bank upon. In case the provider already has a proven framework ready, you will get a head start for building your app.?
Duration of Design phase will be based on the quality of the initial definition of the problem and the possible solution documented by you. Design document prepared by keeping multiple stakeholders in loop is the outcome of Design phase. Once the design is ready, coding, testing and deploying to an environment follows. Coding and Testing is an iterative process and consumes a good chunk of App/Product development. It’s practically not possible to build the entire app at one shot, therefore a phased approach is adopted to build an app.?
One point which often gets missed out is that every time the requirement changes, there is a substantial effort involved in reverting back certain changes and then incorporating changes as per the new requirements. Practically it’s not possible to eliminate requirement changes, however they can certainly be reduced by spending more effort in the design phase.?
3. Infrastructure
To start with, the application can be hosted on a local device during the preliminary phase. This is when you are trying to sell your idea and gather funds. Post that, your app can be hosted on any popular and competitive cloud platform. The size of the cloud platform will be based on your initial calculation on userbase expected, size of data and other factors.?
Prior to this, you will have to block a domain name which will match your purpose and kind of self-explanatory.?
Ideally one IT person (part time initially and later full time), should be part of your core team. If you have outsourced this to a provider, they will help you in this process. However, be engaged in this process so that you get familiar with it and all the terminologies.?
Security is one area that cannot be neglected and therefore you will have to incorporate very basic security at the start.?
Further hosting of the Mobile App/Product can have multiple variations based on the idea that you are trying to implement and the same will suggested by your service provider.?
领英推荐
4. Revenue Generation
How will your App/product survive and is made profitable is what all investors will be interested in. This part will have to be well thought through. There are different models for this, and a very detailed analysis would be required. Just to share a few approaches?
a) Users could be charged a flat fee at registration for using the app. If it’s a B2B app then the customers will have to purchase bulk users’ licenses annually.?
b) You could possibly charge a fee for every transaction done through the system and bill the end user in a regular cycle.
c) If the transactions are monetary based, then you can possibly charge some percentage of the transaction amount and bill the Customer on a monthly basis.?
d) You just want to build a tool(app) to allow user to organize their day-to-day chores. This could be for free and/or you are planning to generate revenue through advertisements.
There are other creative ways of generating revenue, but at the end of the day the end user should derive some benefit out of this system. Either through cost or time or improvement in their processes. Some attractive discounts can be showered on Customers based on their volume of transactions.
By default, some money is usually invested by the person initiating the idea. Angel investors are the ones who support you in your initial phase till you start getting funded by other sources. At the end of the day every investor looks at how sooner he gets Return of Investment (ROI)
5. Support
You may not really need a dedicated support team initially as the existing team itself can provide technical / functional support to the end users. However, if the userbase increases, one will need a dedicated support team who can resolve customer queries.?
6. Roadmap
Staying focused on what you went out to solve is the right thing to do. The Road Map of the app/product must be aligned on similar lines. Once you have achieved your initial objective, then how are you going to expand and what features will further add value to your end users is what needs to be taken up in your Roadmap in a phased manner.?
There is a high chance that you will get tempted and/or at times you will get cornered to build something which doesn’t align with your vision (especially in your initial days). These are the times when you will have to take some tough calls and/or relent to stay afloat. Other things that will have to be provide down the line are :
i) Provision to capture more custom data which varies with Customer. This is in addition to data that you are already capturing.
ii) Multi Language support if you are going global.
iii) Generic Integration (api) which assists in collaborating with other systems.
iv) Reporting and Analytical capabilities.
v) and many more standard features to facilitate end users.?
It’s a good practice to have a few Customers upfront, who are sold on your idea and ready to utilize your app when ready. Keep these few customers engaged during building the app to validate the app. Having said that ensure you just don’t get carried away by recommendations of one customer which doesn’t align with your holistic solution. In short don't digress.?
Eventually, when your app is ready, you can request your initial set of Customer(s) to perform the Beta Testing and incorporate minor changes to address genuine issues. (While bigger changes can be deferred to a later date) This can continue until your app attains a steady state.?
Sales and Marketing to promote your Mobile Application and/or Product has not been covered in this article.?
Hope this article helps you to get familiar with the process of App / Product development. Here’s wishing you good luck in your journey towards implementing your idea.
Driving Delivery Innovation With Generative AI
1 年Well written Anand
Freelance Consultant, Ex Director Aeromechanical & Mechanical Systems & Components, Honeywell Technology Solutions
2 年Very nice article. Easily understandable by non IT person. Definitely helps startup who have product ideas.
Information Technology Systems Lead/BA/Project Manager/Servant Leader at Broward County
2 年Great job Anand! You have clearly articulated the key steps required to implement an idea from inception to execution and beyond.
Engineering @ Intuit
2 年Great article for looking at app development from the non-technical side! Thank you for sharing!