Category: Blog, Business, Development, Fundamentals, Project Management

Mobile App Development Process – 7 Stages of App Development

This article series describes the 7 crucial Stages of the Mobile
& Web App Development Process from a Business point of view.
It is an essential guide for current and future App Owners.

Mobile App Development Process – 7 Stages of App Development

What are the stages of app development process? How does a mobile app development process look like? How to start the development process of my application? If you are you thinking about developing an app, these are the questions you’re probably asking yourself right now. This article is a guide for current and future app owners who want to know – step-by-step – how their product will be created.

What are the stages of the app development process?

In short, a mobile app development process consists of the following stages:

1. Choose a company to design and develop your app

Research, analysis, and selecting a company to cooperate on your product with. Signing an Independent Contractor Agreement.

2. Product Discovery – define what you want to create, for who and why

Clarifying your app’s vision, defining your product’s goals & its final users. Deciding which features are the most crucial in creating your MVP. Useful tools: Product Canvas, Personas, Event Storming, Prioritization Chart.

3. UX / UI app design – determine how your app will work and look

Creating a User Journey Map, clickable wireframes, visual user interfaces, and motion design (animations & screen transitions).

4. Project kick-off & setup – last preparations before the start of app development

PO knows the development team and vice versa. Defining every role in the team, agreement on rules, and next steps, as well as configuring tools.

5. App development with Quality Assurance 

App production with Continuous Integration: plan, code, build, test (and repeat). Ensuring Quality Assurance at every stage of app development with manual and automated tests.

6. Preparation and publishing of the app on Google Play Store and Apple Store

Releasing includes uploading assets required by laws & promotional materials, beta testing, optimizing the product page / store presence, and everything your app approval needs to go as smoothly as possible.

7. Post-development phase – app maintenance & further development

Detecting crashes, monitoring app’s statistics, product enhancement, and further development. Your app stays attractive, adapts to changing market conditions and users’ feedback.

Let’s dive into each of the above-mentioned stages of the mobile app development process.

Stage 1. Choose a company to design and develop your app

Decide if you want to build your app in-house, or outsource its development. This article may help you: Inhouse vs. outsourcing software development. If you decide to outsource your product creation, you need to know how to choose a proper app development company for your project. How to verify if a company you want to choose, is trustworthy? We recommend you to:

a) Use or other platforms  for B2B buying, AppFutura, GoodFirms, ContractIQ – use platforms that will help you to make an initial selection of companies that meet your requirements.

b) Analyze pre-selected companies

Check opinions about them, as well as their portfolio.

  • Do they have experience in creating products similar to yours?
  • Did they work with partners from many countries and different industries?
  • Do they work with start-ups, big companies… or both?
  • Do they use new solutions and technology?

c) Analyze the estimations you receive

It is worth to get estimations from more than one company and compare them. If you get two totally different estimations, it is worth checking how each team made their respective figure.

    • Did you deliver the same information and documentation to both companies?
    • Ask the companies on which assumptions they based their forecasts. Does the lower estimation contain all the crucial elements included in the higher one?
    • Did they ask questions to learn more about your app idea?
    • Does the estimation contain the time for team meetings?
    • Does the estimation contain the time for Quality Assurance (e.g. writing tests)?
    • Did the companies take into account the risk of unforeseen events?
    • If your app’s design demands some non-native solutions, is this considered in the estimation?
    • If your product is a typical kind of app, like e-commerce or m-commerce, but you want it to have some untypical features, check if they have been considered in the Estimations.

d) Make sure the code will be written in English

e) Make sure the code will be hosted on Code Repositories Hosts

E.g. BitbucketGitHub, so you can have access to the code and be sure that it is safely stored.

f) Verify the Independent Contract Agreement

Verify the contract you get carefully and make sure to consult with a lawyer about it. Below, we’ve listed for you a few important elements that should be included in a contract. We are not writing about some obvious elements, like personal data of parties, but rather factors more specific to software houses.

✔ Confidentiality

Make sure that the contract contains a clause about confidential information. Your partner should commit himself or herself to not disclosing any information about your project that is not public yet.

✔ Intellectual property

You should have the rights to everything the software house produces. The contractor shall execute and deliver such further instrument(s) and take such action(s) as may reasonably be required to complete the assignment of intellectual property rights in the Deliverables to Company’s sole and exclusive ownership.

✔ Choice of Law

The contract should indicate a dispute resolution place. That is especially important if the software house is from another country. Probably, your partner will want to choose the judiciary of his country. We would recommend compromising and choose the laws of another country, with the jurisdiction you know, e.g. the United Kingdom.

✔ Advance payment

We recommend that the advance payment should not exceed the cost of the team’s work for one month. In case a contractor must incur significant expenditure (e.g. for hardware or licenses) at the beginning of the project, a higher advance payment can be reasonable.

✔ Payment deadline

The contract should regulate the consequences of delays in payments. What is the acceptable delay? After how many days will interest be charged? After how many days can the development team stop work? Contrary to appearances, such a clause secures you.

✔ Conditions for terminating the contract

It is safe to set a notice period of about 15-20 days.

✔ Deadlines

Time & Material – in this type of contract, there is no need to specify an exact deadline. You decide when the app is ready. Your Feedback after each iteration is implemented up to date.

Fixed Price – the contract contains a schedule of partial deliverables. What is more, it is worth setting the time for you to give feedback for every iteration, as well as for the team for implementing that feedback.

Stage 2. Product Discovery – define what you want to create, for who and why

Before you start your app development process, the first stage should be clarifying your app’s vision – Product Discovery. This is the key to your app’s success. It’s worth to ask yourself questions like:

  • What is my overarching goal?
  • Who are the final users of my product?
  • What problem does the app solve?
  • What will make it better / different than my competitors’ products?
  • Which features are the most crucial in the app?
  • How can I measure the end result to determine if the goal has been met?

You can find the answers by yourself, with your team, or during a Product Design Workshop organized by an outside app development company – it’s your choice.

The best tools that can help you to answer the above-mentioned questions and clarify the idea of your app are:

  • Product Canvas,
  • Personas
  • Event Storming
  • User Journey Map
  • Prioritization Chart

You can find all of these tools in PDF in this article: Mobile App Development Process – Stage 2. Product Discovery.

If you know already the answers, and your vision is clear, this is great! Yet it’s simply not enough to have them in your mind. Write them down and confront them with others – talk to people from your team, employees, or just your friends. They should understand what it is about.

How about starting development without clarifying your vision?

Product Discovery is an optional process but would it make sense to start costly development without thorough research? In the Theory of Quality Management, we have the “1:10:100 rule”, which states that prevention is cheaper than correction, and correction is cheaper than failure. Product Discovery costs you nothing compared to releasing a useless application.

In short, Product Discovery is the app development phase where we are focused on building the right thing, as opposed to building the thing right.

Stage 3. UX / UI app design – determine how your app will work and look

Well designed UX and UI are very important from a business point of view. At the end of the day, they influence the retention rate. If your apps’ user experience will be enjoyable and flawless, and the design of the app will create a positive impression on its users, they will love it, and use it.

This app developemt stage includes creating: User Journey Map, Wireframes, Clickable Prototype, and Visual design.

Stage 4. Project kick-off & setup – last preparations before the start of app development

App Development Kick-off has a significant influence on the successful cooperation with your software partner. In short, it’s time to define your role as a Product Owner and to clarify every role in the team. What is more, Project Kick-off means also setting the rules you want to follow, and planning the next steps. Kick-off may have different forms, at Droids On Roids we organize a Kick-off meeting with every client, it takes around 2 hours.

How do the developers set up your project?

When App Development Kick-off is completed, the first Sprint starts. It is also the moment when developers set up your project. These 6 steps are specific for mobile app development, but in the case of web apps, they look similar (with the exception of the third point).

1. Creating a repository for a project at GitHub or another web-based hosting service. It means creating a space dedicated to your project on the cloud-hosted platform, where all versions of your code will be safely kept and archived. 

2. Continuous Integration setup. Every new piece of code has to be checked before it is merged into the project. It’s checked manually, but also with automated tests run by special platforms like Bitrise, CircleCI, or Jenkins. The process of automating the build and testing the code every time a team member commits changes is called Continous Integration. The second role of CI platforms is pushing the app versions to Google Play / Apple Store and allowing running tests by users. At Droids On Roids, we use Bitrise.

 3. Setup of the beta distribution tool on the CI platform. Hockey App, App Center, Fabric – these are a few examples of tools that help you to collect live crash reports, get feedback from your app’s users, or distribute your betas. To say simply – they take care of the quality of your product.

4. Choosing a code architecture, libraries & SDKs. Developers choose the code architecture for your project (e.g. MVP, MVVP, VIPER, MVC, Clean Swift). Code architecture can be compared to the construction of a building. It is not visible outside when the building is finished, but it decides about the shape of the object and its’ solidity.

What is more, developers choose also libraries & SDKs (Software Development Kits) which they will use in your project. In other words, SDK is a set of software development tools useful in app development.

5. Setup project in IDE (Integrated Development Environment). Developers set up your project in a program that they will use to write the code – e.g. Android Studio for Android Apps, or XCode for iOS Apps. To the program, they add also outside SDKs or libraries that will help them to optimize their work.

6. Register the app in Google Play Console, Firebase API Console, and other services if needed. If your app will use some third-party party components (e.g. Google Maps, push notifications), it must be registered on the suppliers’ services.

Stage 5. App development with Quality Assurance

Stage 6. Preparation and publishing of the app on Google Play Store and Apple Store

Stage 7. Post-development phase – app maintenance & further development

During app maintenance, the development team implements app monitoring tools (e.g. HockeyApp, Crashlytics, Google Analytics, Firebase) to your product. Thanks to these tools team can detect any crashes, follow app’s statistics, and plan product enhancements. The post-development phase includes also further development of your product – it allows your app to stay attractive, adapt to changing market conditions, and users’ feedback. 

You don’t need to bang your head through a wall when the door is open

We have 7-years experience on the market. In this time, we’ve created about 130 mobile and web apps for our clients from around the world. This is why we were able to prepare a quintessence of our knowledge for you, gathered through thousands of conversations and meetings with our partners.

Every one of our clients is unique and individual, but there are some pain points, fears, goals, and challenges which are repeatable and universal in nature. So, you don’t need to bang your head through a wall when the door is open.

All the topics you will find in these articles are based on the perspectives of many experts from the Droids On Roids team – iOS Developers, Android Developers, Scrum Masters, UX/UI Designers, Quality Assurance Engineers, and Account Managers.

We have never before shared such a in-depth and cross-sectional guide for current and future App Owners. I believe it will make your journey fascinating, safe and goal-oriented.

Wojtek Szwajkiewicz
CEO, Droids On Roids

User Journey Maps, Wireframes, Clickable Prototypes, Designs or even your App Branding. We will describe what the design creation process of an app looks like and how the App Owner takes part in it.

Paweł Szymankiewicz
Creative Lead, Droids On Roids

How much does the team work and what exactly are they logging their time for? When will the app be ready? How much of my budget is left? Together with the Scrum Masters team, we’ve prepared for you all the useful information about smooth communication & transparency which you should demand from you partner.

Partycja Paszek
Certified Scrum Master, Droids On Roids

Writing a code is a kind of art. Even if you are not a artist, you should be a “conscious spectator”. A basic knowledge about programmers’ work will help you to have a deeper understanding of your app development progress and ask the proper questions to your team.

Karol Wrótniak
Android Developer, Droids On Roids

We all dream about bug-free apps. How to make it come true? You will get to know how the Quality Assurance process should look and why it’s so important for your end-users’ satisfaction.

Michał Szydłowski
Quality Assurance Engineer, Droids On Roids

Mobile app development process – summary

Start working on you app right away!

Receive your first working demo within 7 days from the project kick-off

Not ready for an estimate?
Attend Product Design Workshop to clarify your vision and prepare the crucial documentation.
Droids On Roids team

Any questions
so far?

We would love to answer them. Send us an email or