8 stages of developing a mobile application for iOS and Android

Before starting development, it is important for the client to find out how the work will be structured and in what time frame, what resources will be needed to create a mobile application - this will help resolve all issues on-shore and avoid misunderstandings with the development team.

We build a process for each client individually, but there are steps that almost all projects go through. I will tell you more about them in the article.

What you will need to start work
You can start at any stage - it all depends on what you have. It can be just an idea or a ready-made mobile application that needs to be improved. Our team can develop a project from scratch, refine the application, or provide technical support and development.

To begin the discussion, the client needs to describe his top-level business requirements. Here's what's included:

tasks that need to be solved using the application;
what business processes will be automated in the product;
what system will the application integrate with: corporate website, CRM, 1C-Accounting, etc.;
what is the planned budget;
examples of interfaces or visual solutions that you like;
demo version of the project, if the application is already ready.

This will help create technical specifications, estimate the timing and cost of work.

What stages does the project go through?
Once the necessary information has been collected and a request has been generated, it’s time to move on to the main stages: determine the scope of work, sign an agreement, assemble a team and start working on the application.

Let's look at each stage in more detail.

Stage 1. Project assessment
Here the budget, timing and scope of work for the project are determined. The purpose of the stage: to create a document with goals and objectives, evaluate each feature in hours of work and estimate their cost, describe the technologies, potential risks and responsibilities of the parties.

What steps might this stage include:

The sales department contacts the customer and forms the final request.
The analytics team describes all the functions that the client needs.
Developers and designers prescribe how long it will take to implement each function, what technologies and tools will be used.
The finished document is agreed upon with the client.

Stage 2. Project planning
Once we have discussed general issues with the client, we move on to specifics: we clarify legal issues, sign documents and form a team.

Signing the contract
When the client decides to cooperate, an agreement is signed. It indicates what services will be provided, what work is planned and in what stages, a calendar plan and reporting rules are drawn up.

We at offer different options for cooperation.

By work format:

Outsourcing - we take on the development of your project.
Outstaffing - we provide our developers who will work for you and perform certain tasks.
By form of payment:

Fixed Price - we fix the exact scope of work, timing and cost before development begins.
Time & Material - we charge for the time spent on development.
We discuss and document the appropriate format in the contract.

Team formation
The composition of the team depends on the specifics of the project. When developing a game, animation and sound specialists are important, and creating a banking mobile application is impossible without a security specialist. The number of participants in each role can also vary: for ten developers there may be one analyst and one designer, or three analysts and five designers.
Coordination of communications with the client
Reporting and approval methods are discussed in detail here. Which channels to use to communicate, what time the team is on call in case of normal and emergency situations, how often to provide work reports, who is responsible for communication, etc.

For example, we at report the status of the project to the client every week. We resolve all legal issues by mail, and we conduct correspondence on the project in instant messengers: Slack, Telegram, WhatsApp, Skype, Zoom. We process closing documents and payments through EDI, if the client has one. For each project we assign a separate account manager and project manager. The first is responsible for relationships with clients, the second manages the project itself and the process of creating the product.

Stage 3. Analytics
At this stage, all elements of the system are worked out in detail: business processes, necessary functions, requirements for security, performance, scalability and fault tolerance are described. All this is collected into technical specifications. I tell you more about the analytics stage in the article.

At, the analyst works closely with the designer to develop the visual concept and with the technical lead to describe technical solutions. This allows you to ensure that the solutions described are feasible and do not pose risks to the budget and deadlines.

Stage 4. Design
The design is divided into two large stages:

1. UX or User eXperience (user experience)
The main task of UX is to understand the target user and create a clear interface for him. The designer develops prototypes - rough images of screens that show the overall concept of the application and the user journey.

Stage 5. Development
The development Tech Lead breaks down each project block into tasks. For example, it starts with authorization and personal account, then moves on to the product catalog, shopping cart and payment. He helps the product manager set tasks for developers, and he himself determines the architecture and technology stack, takes on some of the tasks and helps others solve emerging issues.

As a rule, during development, nuances emerge that were not taken into account at previous stages - this is normal. To do this, the rest of the team members get involved in the work in order to quickly make changes and answer questions about their blocks of tasks.
Stage 6. Testing and bug fixing
No project can be done perfectly the first time: errors may occur somewhere. QA, following the previously drawn up test plan, checks the project blocks one by one and finds bugs.

Once the errors are fixed, the project is sent to regression testing - this helps to ensure that new changes do not in any way affect the operation of other sections of the application.

Stage 7. Release
When all errors are corrected, the application is sent to the end user. Depending on the project, this could be publication in stores, integration with other company services, or release of a new version of the application.
Stage 8. Technical support and project development
After the release, work on the product does not end. Feedback from users comes, sooner or later errors are discovered, new ideas and “wants” appear. The process starts anew, starting with the analytics and evaluation stage.
Made on