How to make an app, stages and rules How to make an App in 10 steps

How to make an App in 10 steps

THINKMOBILES

How to make an app is a question every modern business often ask. Our world is moving to mobile and it is really hard to imagine an industry not related to mobile in its everyday workflow. Consequently, business is looking for new opportunities to growth sales and customers and one of them is making an app. Here from, an important thing required for your idea to be brought into life is following the right course in the very process of development.

We want to share our experience within 10 Steps to help you avoid mistakes and succeed in achieving your goal. So, let’s assist for your mobile app to see the world with success.

STEP #1 IDEA AND GOALS

The very first step in creating new application is the idea of a mobile app. If you see the main goal of your application, use your imagination to compile the idea.

Determine your idea

Just take into account, at first point, challenging apps like augmented reality game Pokemon Go, as few people would believe in this app, or SnapChat like just “another” mobile chat. Another example of VR mobile application idea is to decrease Post Traumatic Stress Disorder for war veterans.

Goals

The application as any other projects, should be based on problem solving of users, even at simple party people use Periscope, Instagram and Ustream everything around them.

These questions can help you gather your thoughts:

  • Why do you think people will use it?
  • What do this application have to do?
  • What problem would be solved with your idea?

STEP #2  APP USERS

Understanding of who will be users is one of the most vital moments in creating the mobile app. And we point out two ways of how to identify your target audience:

Who are your app users

Let us define users of Booking or AirBnB: people who are traveling and looking to find better place for the night, but in case of AirBnB these people are mostly tired of hotels and looking for authentical and local places to live. In app like Tinder, it would be young people 18+ who also are very active users of Facebook.

Let us take into account Virtual reality app in medicine which treat phobia with spiders or bees. In this case, amount of users are strictly limited to people who need treatment but monetization may be fast.

How many users would use your app

For example in case of Viber, in several countries it would be former users of Skype or/and new users recommended by them to use Viber. Total amount of VIber downloads are more than 500+ millions with daily active 250+ million users.

In case of e commerce shop, it will be all your current clients and clients from other similar ecommerce shops which are not satisfied with current mobile app and this become critical as ecommerce mobile market by 2020 will be 4 billion USD.

STEP #3 COMPETITOR ANALYSIS AND RESEARCH

In order to do a break out on the application market one must approve himself as a weighty participant among other competitors. There are numerous ways and different criteria for analyzing competitors and here from we recommend the following guide:

Identify your competitors

If you search for a particular sort of applications in App Store or Play Market, for example, you will see those best in rating first in the list. If we understand who our competitors are and what they are offering, we then know what specifically shall we compare in the next step.

For example of Uber, the biggest competitors are Lyft, Curb, Grab, Didi Chuxing etc.

Comparison

It is a thorough investigation which should be carried out so that you start understand your competitors, their products and their market advantages. People’s view, what lacks in existing apps, what irritates, what is missing – all this information must adjust for creating a unique product.

Taking into account Pandora and Spotify Music are almost similar services, but Pandora is available in US, Australia and New Zealand while Spotify in more than 30 countries.

Pandora held price for premium 4,99$ while Spotify 9.99 monthly (2 times more) with 3 month trial for 1$. We have just price and geography comparison but you may compare much more conditions.

Unique

Do not forget that your application must be useful, unique, containing a differential characteristics and encouraging users to pay attention to.

In this case your competitors will not outmatch you.

Such apps as Maps.me and Wifi Map serve their purpose for tourists and here from they gain popularity among wide audience.

For example, FourSquare have competitors: Yelp, Zagat, CitySearch, AroundMe apps but it is still challenge for all of them to catch up FourSquare.   Remember, that your app’s name should possess uniqueness and be catchy so that people easily find it.

 STEP #4 UX AND WIREFRAMING

App Architecture

Having defined with the application’s objectives, target audience and specific features, we can proceed with its realization. At first we have to define what our app will contain, meaning to write down the list of desirable features, including the flow of how the navigation will occur from the very beginning till the end. It is called information architecture – a scheme reflecting all possible user steps.

Wireframes

For better understanding of the product wireframing (preparing a skeleton of your future application) is widely practiced, with the help of which it is possible to visually see how your application will look like. It is essential to include everything needed in the wireframes: every button, pop-up, and textfield. Wireframes is a rough template which can be easily edited and corrected at the earliest stages.

Our design team singled out the best wireframing tools for usage based on their own practice:

  1. Axure  is mostly used for websites, quite complex and containing complicated functionality;
  2. Mockingbot  is much easier than Axure and fast in usage, best for web applications;
  3. Sketchapp is a graphic redactor used for creation of highly detailed wireframes;
  4. JustInMind is good to simulate an app;
  5. Balsamic is good for simple wireframing.

Product Managment

For cases with lack of certainty a product manager is the specialist who help to make your app perfect. Acting with feeling of ownership , having thorough knowledge of the product and its customer, a product manager’s primary responsibilities include designation, communicating and adjusting the seeing of the product. Besides having the clear project picture in mind, the product manager is able to transfer it to the team – for us this is a key to successfully starting any agile software development project.

Define Back End

Having app cases defined, architecture mapped and wireframes drawn it is important to choose the platforms to create your app on and define programming languages for its fulfilling.

On the basis of your wireframes it is necessary to define back-end. There are two ways of developing a backend:

  • usage of SaaS backend: Firebase, AWS Mobile Hub, CloudKit, Kinvey is a great solution for basic MVP.
  • custom backend is more preferable in case if you project is big and you plan to move forward very fast and add a lot of new features and functionality with flexibility and customization. If you decide to add extra functional it can be much more easily performed while coding backend manually.

Making use of noSQL like Mongodb or SQL DB like Postgre it is worth to pay attention to such programming languages as Ruby on Rails and NodeJS.

Companies like Washington Posts, Bosch Group, Urban Outfitters, City of Chicago have successfully implemented MongoDB as backend.

Examples of successful companies with custom backend on NodejS:  Linkedin 400+ mln, Paypal 200+ mln, Netflix 80+ mln users.

STEP #5 VISUAL DESIGN

After finishing the work with wireframes and everything related to it, we can proceed with the actual design.

Brief

To start, it is obligatory to answer all questions contained in brief.

Brief is what almost all and particularly our designers require before starting to work.

Here’s our design brief at ThinkMobiles.

On the basis of such brief designer is easily absorbed by the application`s essence and reproduces several versions of design from which you can choose one you like and which you consider appropriate. Typically designer produces 3 screens, i.e. 3 versions of application look for you to choose called visual concept. Based on the screen chosen from visual concept all other screens are created. Do not forget about logotype – your app’s face. Apple has a simple logotype, but it is the most recognizable logotype among others! As well as application colour: major apps are made in blue-green range of colours (Skype, Twitter, WhatsApp, VK, Shazzam).

Complete design

While designing an application it is required to prepare separate design for each platform involved, because each of them demand a specific set of elements based on material design provided by systems.

It is highly important to brush up the design in accordance with mobile trends.

Remember how Facebook and Apple Music has been changing their design in comparison to the first ones?

Excellent resources for design you will find on dribble.com and behance.net. For instance, sample of our design for Estimation app project.

how to make an app - app design by ThinkMobiles
App design sample by ThinkMobiles

STAGE #6 PRE-DEVELOPMENT

Before starting the actual development one must define several weighty organizational issues:

Agile development

Having analysed several methodologies and practiced them, our company use  Agile – a flexible methodology of software development management, which allows teams to respond to unpredictability through gradual,  iterative work cycle and feedback.

This is the alternative to waterfall or traditional consistent development having following benefits:

  • the development is carried out in short cycles (iterations) (1-3 weeks);
  • at the end of each iteration the customer receives a valuable working application (or part of it);
  • development team keeps in touch in the course of development;
  • changes are easily and quickly implicated.

Preparation and organization of workflow

Creation of a complete development team responsible for fulfilling all technical tasks is worth mentioning :

  • development plan, assemble of backlog and sprints;
  • set accounts on github or gitlab;
  • set accounts on Play Market and App Store;
  • set SDK for payments, video, iOT, Augmented reality etc.

so that you can upload your app to the market. Just look on this statistics and you will understand how much a good organization of work contributes to success: only 47% say their teams achieve 70-89% of their goals and nearly 20% say they only achieve 50-69% of their goals due to not best organization and preparing.

STAGE #7 DEVELOPMENT

Project Management

A person responsible for effective project flow, constant communication and qualitative tasks fulfillment is a project manager.

Admit it, that it is quite easier to negotiate with only one representative of the whole team, then to try to talk to each developer separately.

Duties of PM also include clarification of all misunderstandings which usually happen during development, and coming up with the solutions. Companies without a standard PM methodology saw a significantly lower percentage of project success than those with (40% vs. 60%).

Developers

Under the strict guidance of project manager, developers are to complete tasks and execute the plan.

QA

After developers complete the first scope of work a quality assurance engineer`s turn comes. Software testers plays considerable role in making the application better during the entire development process conducting Alpha testing all the time. He/she is responsible for assurance that the product is done well, and if not his duties include reporting on bugs existence.

You may order freelancers, QA companies or in-house team of testers, but last two ones are better to speed up communication within team.

STAGE #8 BETA TESTING

To be sure your application works really well, there are no drawbacks in it, and

people will use it with pleasure – you cannot miss Beta Testing. This may assure that application is available for a complete release, because it allows receiving a feedback from a particular number of users to understand that usability enables the app to be used without obstacles. Beta testing involves external user testing, which means that beta version of application is uploaded for limited audience, e.g. 2000 users and limited period of time.

Advantages of Beta Testing:

  • you have the ability to get your app tested by a particular number of people before sharing it to the general public;
  • users give weighty feedback in case of deficiencies, possible bugs and offer their invaluable recommendations;
  • the more defects you determine at this stage, the less issues the general audience and you, accordingly, will face after final release.

For Beta testing we recommend such services as Testflight, HockeyApp, crashlytics, Applivery, TestFairy, buddybuild.

STAGE #9 IMPROVEMENT

Error detection

It happens that certain functionality works correctly from the point of view of whole team and customer, but in the course of beta testing it appears that user do not see any logical flows in the app. Imagine if you would have to pass through the following steps: My profile->My posts->New Post on Instagram just to upload a new photo.

After testing by number of people, some uncertainties may turn out. In order to fix such issues it is necessary to improve UX functionality side.

Last testing

After beta testing, when all adjustments and corrections are made, when everything is on the right place, QA tests the app for the last time. Based on our experience it is quite inevitable to check the entire functionality even after a small change has been made.

STAGE #10 RELEASE

You have brought your idea to fruition and final step here is to launch your application on the market. But keep in mind that App marketplaces have their own policies for verification. For qualitative release it is important to follow next steps:

  1. compile .apk file (for Android) or .ipa file (for iOS) configured for release;
  2. prepare a short description of your application using all languages to which it is designed;
  3. assemble screenshots and/or video preview and app image;
  4. set up age restriction, as it is required by app markets;
  5. complete the obligatory questionnaire offered by the market, on the basis of which you will be allowed for uploading of app.

A properly prepared application accelerates its release date.

Read our infographic and find out how to make an app

how to make an app - step by step