Stages of program development. Applications for application development: how to make an application for iOS and Android yourself The process of creating an application in

The XXI CENTURY is the era of the flourishing of mobile technologies. It is now difficult to even imagine a person without a mobile device, much less a business person. Mobile technologies present in almost all areas of business. Mobile ecosystems change and evolve daily through constant experimentation. Hundreds of applications are created every day for business, education, entertainment, etc. Each of these apps has a specific visual style and tone, depending on the direction and context of the app.

But what does the mobile application development process itself consist of?

This is, of course, an IDEA. At the very initial stage, you need to carefully consider the meaning of the future mobile application and what it will be used for. Then you need to decide on which platform it will be used. As a rule, now applications are written for two platforms, iOS and Android, at the same time, but if this is of no use or is not in a hurry, then the company’s specialists will help you make a choice in favor of one of the platforms after first analyzing the market of supply/demand and competition.

2. TECHNICAL SPECIFICATIONS

Before starting development, it is necessary to obtain technical specifications from the customer. If it is not there, then the customer is given a brief to fill out. Special attention is paid to this stage, since technical specifications directly affect technical features result. At this stage, the following types of work are performed:

  • A description of the functionality of the mobile application is drawn up;
  • Development timeframes are determined and agreed upon;
  • Financial costs are calculated and a model of the payment procedure is developed;
  • An agreement is drawn up with the customer;
3. PROTOTYPING

In order to understand how the user will work with the mobile application, a graphical map of the interaction between various program screens is created. At this stage, almost all the functionality of the mobile application is developed. At the UI design stage, specialists determine the operating principle of the application, the placement of functions and buttons on each screen. At this stage:

  • The functionality of the application is being developed;
  • Developing application screen diagrams;
  • The connection between application screens and transitions through them is being thought through;
4. MOBILE APPLICATION DESIGN

The design of all screens of the future application is created and various states are drawn for all usage scenarios. After the design concept is approved, internal buttons and icons, as well as all other graphic elements, are drawn. As a rule, drawing the design of a mobile application involves usability research in order to make sure that the developed design concept is as simple and convenient as possible and will help users solve their tasks as quickly as possible.

5. DEVELOPMENT

The developers are given the specifications and application design layouts and they begin to “create”. Programmers “transform” a static picture into an interactive working model. The first version of the application is released.

6. TESTING

The mobile application undergoes thorough testing, as a result of which a check table is created in which all errors are indicated and described in detail. During the application design process, it is impossible to foresee all the errors of actual operation. At this stage, a list of errors, shortcomings and shortcomings of the application is formed and a time frame for their elimination is determined. Then the application is released with bugs fixed and, if necessary, with changed functionality, which is indicated in the tables after trial testing.

7. RE-TESTING

The application is installed on test devices and works exactly the same as if it had been downloaded from Google Play or AppStore. Before an application appears in the official program catalog, it is necessary to ensure that users will not encounter development errors during the installation and use of the program. Therefore, at this stage, the logic of the product and the operation of its server part are checked once again, the application is tested in a variety of conditions and on different versions operating systems.

8. DEVELOPMENT OF BRAND ICONS

The application icon is the “face” of any modern mobile application. A mobile application icon is an independent graphic element. Creating this element is a multi-stage procedure with drawing an image in several sizes, as well as testing it for various models devices. After approving the icon mobile app starts.

9. POSTING A MOBILE APPLICATION IN APPSTORE AND GOOGLE.PLAY

The application is submitted to the AppStore and/or Google.Play for publication. Each application is reviewed by Google and Apple teams before publication. Publishing to Google.Play takes no more than a day, which, of course, significantly beats the AppStore in terms of time, where publishing an application takes at least 7 working days.


Here is a set of typical stages in creating a mobile application from scratch, which the Componentix studio applies to its activities.

Business analysis of the target market

At this stage, the customer should decide why he plans to use the application, what is the final goal of development mobile tool communication with the audience. Here is a list of indicative questions to which you should find answers before formulating technical specifications and ordering application development:

  • What goals do you plan to achieve by creating and releasing your own mobile application?
  • Are sales/conversion of transitions into the sale of goods and services planned within the application?
  • Who's yours the target audience and from whom can it be replenished?
  • How high is the competition in the area in which you plan to work (including with the application)?
  • What applications does your audience and the audience of your competitors use, do they overlap? Are they ready to use your app instead of similar apps?
  • What is the budget for the development and promotion of the resulting application?
Development of an agreed solution

Before starting development, you must obtain from the customer technical task(TOR) or provide him with a brief for completion and further work on this document.

After receiving the completed brief and/or technical specifications, you can begin prototyping and drawing up user profiles to assess the capabilities of the final product.

Based on the designer’s vision, business assessment and agreement on the details of the technical specifications, the development process can be launched.

Prototyping

Prototypes are developed by the designer and can be either static or interactive. To do this, you can use one or more of the prototyping tools we talked about earlier.

Static prototypes and interactive mockups should be designed taking into account the technical and software base that is planned to be used to create the application.

Writing code and implementing technologies

With the finished design, the application goes to the developers: they will have to create a mobile application based on programming languages, frameworks and various technologies in accordance with the technical specifications, brief and approved prototype.

Testing

At various stages of application development, internal testing of the application is mandatory, both on simulators and on real devices. The purpose of testing is to ensure that the application's interaction with the hardware and software platform smartphones and tablets will be exactly as expected at the prototyping stage.

Creating a pre-release version

As a result of a series of tests and improvements to the application, a working version of the application should be obtained. This is the version that will be added to the app store: Apple App Store, Google Play, store Windows applications Phone (depending on which platform is being developed for) or any similar service for app distribution.

Adding an application to the store

The final stage of the studio’s work is adding the application for review to one of the above application stores (in the case of Componentix we are talking about the App Store or Google Play).

Optional stage: further technical support and marketing promotion of the application

Since these services are provided separately from the main package of services, they are paid separately. In addition to marketing and technical support, it is also possible to publish the application in the App Store or Google Play on behalf of the customer (White Label service), and provide server support for the application.

If you're ready order a package of basic and/or additional services for developing a native application - write: we will discuss with you the timing, cost, and help draw up technical specifications and fill out a brief . And after a month or two you will have your own mobile application for iPhone, iPad or Android smartphones and tablets.

Dmitry Dementiy

Do you doubt whether it is worth investing in mobile application development? You can do it yourself and absolutely free. You may end up with a test version that can be used to conveniently evaluate the effectiveness of your mobile strategy. And if you try, you will make a decent mobile application that will become the main tool for online interaction with owners of smartphones and tablets.

Just keep in mind that even the coolest mobile application cannot be the only promotion tool. Only comprehensive Internet marketing gives maximum results in terms of traffic and sales.

Is it worth making your own mobile app?

Costs. If you don't take my word for it, here are some facts:

  • According to Flurry Analytics and comScore, owners of smartphones and tablets use the browser only 14% of the total time spent working with the device. And they spend 86% of their time on different applications.
  • Installed application- your direct channel of communication with the consumer. Just think: you don’t need to spend money on advertising or wait for a person to find you using Yandex. All that remains is to support the functionality the user needs and provide him with relevant content.
  • The number of purchases made using tablets and smartphones is growing both on the Internet in general and in RuNet. According to marketing agency Criteo, already in 2016, more than half of online transactions in RuNet will be made using mobile devices.

If you want, the application is mobile browser, in which only your site opens. In what case would a user install such an Internet browser? Only if he is interested in your product or information. Therefore, remember: the client who installed the application is a loyal and ready-to-buy representative of the target audience.

In this case, is it worth taking the risk and offering DIY applications to loyal customers rather than custom programs made by professionals for Android and iOS? Let's figure it out.

When can you create an application yourself?

Do you remember what website visitors need? They come because of the content or functionality of the resource. People want to get information, buy something, look at and comment on friends' photos, and so on. Mobile app users need the same. They are looking for information or making some kind of transaction.

Do you remember when a business could make a website on its own? It’s right when you don’t yet have money to collaborate with professionals, but you still have the time and desire to figure out WordPress or Joomla. The same situation is with applications. Self-created programs for iOS and Android can be roughly compared to websites built on open source engines.

You don't have to register to start working. Click the Create Now button on home page or select the Create App menu in the upper right corner on any page of the service.


Select the appropriate application template. If we are talking about a content project, you may be interested in the following options:

  • Manual. This template allows you to create a guide program.
  • Blog. The application will help your blog audience read new notes from the screen of a smartphone or tablet.
  • Website. The template converts a website into an application.
  • Pages. With this template you can convert any content into an application with simple functionality.
  • News. The template allows you to create an application that is an aggregator of industry or regional news.
  • Page. The template converts offline content, such as an e-book, into the application.
  • VK Page and Facebook Page. Create an application that allows you to keep track of updates open groups on VKontakte and Facebook.
  • YouTube. Use the template to promote your YouTube channel.

How to Create a Blog App

Use the Blog template. In the appropriate field, enter the URL of your blog or RSS feed. Select a note title color.


Enter the name of the application.


Add a description.


Choose a standard one or add a custom icon. The appropriate image size is 512 by 512 pixels.


To create a download file, click the Create App button. After this, you need to register in the system. Confirm your registration and go to your personal account. Here you can install the application on your mobile device, publish it on Google Play and Amazon App Store. The system also offers a monetization option. If you use this feature, advertisements will be displayed in the application.


Check how the application works on your mobile device. On a tablet, the program should display a list of blog posts in title and announcement format.

IN personal account With AppsGeyser you can monitor the number of installations, create push notifications, publish the application in stores, monetize the program with advertising, and also edit the application.


Want more apps? Then create a guide app using the Manual template.


After editing the content, specify the name of the application, add a description and an icon. Click the Create App button. After creating the download file, install it on your mobile device and check its functionality.

Please note that most mobile devices By default, it blocks the installation of applications from unknown sources. If a user downloads a program from your site or an app builder site, they will see a security warning when they try to install it. Some clients will probably refuse to install the program.


8 constructors similar to AppsGeyser

If the universal AppsGeyser constructor is not suitable for you, pay attention to similar services:

  • AppsMakerStore. Using the service you can create applications different types: from programs for Ecommerce to solutions for content projects. The designer makes applications for iOS and Android. The service interface is Russified. For beginners, there is an informative guide to using the constructor. The service is paid.
  • Mobincube. A tool for creating and monetizing iOS and Android applications. The basic functionality of the service is available for free. The designer allows you to create applications of different types.
  • Good Barber. Using this service you can develop Android and iOS applications. The constructor is paid, the cost of use is 16 USD per month.

Most of the services offered have an English-language interface. If you are uncomfortable working with constructors on English language, choose platforms with Russified content.

Application designers: a stone ax or a thin modern tool?

Don't go from one extreme to another. With the help of the proposed services, you can really create functional functional applications. The resulting programs can be used to solve various problems: from facilitating online trading to distributing content and educating audiences. Applications created in the designer can be published on Google Play and the App Store, edited, and monetized using advertising or paid installations.

Do not overestimate the services offered. Their obvious drawback remains their stereotyped nature. We are talking about both the design and functionality of the programs. In addition, access to platforms with decent functionality is paid. What is better: to pay the developers for their work once or to pay the owners of the designer for many years? Do the math for yourself.

And one more thing: if you don’t have time to create a mobile application yourself, contact our company. We develop mobile applications and .

Contact us Shall we discuss? Order a free consultation

Mobile applications have begun to play a big role in people's lives in the last decade. Their functions often seem insignificant, but, nevertheless, they help smartphone and tablet users solve various everyday tasks. Creating even a simple mobile application is painstaking and persistent work that takes a lot of time and effort and does not at all guarantee high profits in the future. However, truly high-quality and required applications can “shoot” in the AppStore or GooglePlay and bring their developers a lot of money. We invite aspiring entrepreneurs to turn their attention to a standard business plan for the development of mobile applications with calculations, which is presented in this material. First of all, it will help you navigate the financial side of the issue and understand whether the game is “worth the candle.”

Investments at the start of a mobile application development business will need to be made in the amount of 350 thousand rubles. This money is quite enough to build a stable business in this high-tech field from scratch. The source of initial investment can be either the personal savings of a novice developer or loan funds received from a bank.

Brief description of the concept

A business creating applications for mobile platforms, an example of the organization of which is presented in this article, must be registered as an individual entrepreneur. The best form of taxation for such a business is the simplified tax system (“simplified tax system”) with a tax rate of 15% (income minus expenses). Declarations in this system are filled out almost intuitively, so the company does not need the help of a professional accountant. Processing financial statements is best done using online accounting services. Official registration of a mobile application development business will not be complete without selecting the appropriate OKVED codes:

  • 62.0 “Development of computer software, consulting services in this area and other related services.”
  • 62.01 “Computer software development.”

How much do you need to invest in opening?

The costs that are inevitable at the initial stage of establishing a mobile application development business are presented in the following table:

It is not surprising that the main expense items will be the purchase computer equipment and licensed software. The specifics of this business oblige the entrepreneur to pay special attention to the quality of equipment and software. After all, the equipment on which mobile applications are developed must simply work stably and without failures, and information must be well protected.

Production plan

The office of a mobile application development company is a compact room, the area of ​​which does not exceed 40 square meters. There are no special requirements for the office location. It can be located either in a modern business center or in a semi-basement in the old part of the city. The main thing is that all necessary communications and stable high-speed Internet are connected to the office premises.

An entrepreneur should also take care to ensure the security of the office, since it will contain expensive equipment and important development data. You can enter into an agreement with a security agency or simply install strong bars on the windows and a good-quality metal door.

Marketing plan

As for marketing and promotion of mobile applications for smartphones and tablets, everything is extremely simple - advertising can be ordered in the AppStore and GooglePlay at a very reasonable cost. Also good effect advertises on popular YouTube channels.

The cost of one download of an average mobile application is 1.5 dollars, or approximately 100 rubles. Good apps are quickly gaining popularity among users, and it is quite possible that they can be downloaded 5,000 times or even more in a month. Accordingly, at this rate, the monthly revenue of the development company can reach up to half a million rubles, and the annual “dirty” income can reach up to 6 million “wooden”.

Staff

The work schedule of a mobile application development company is a standard “five-day week”, but with some features. As a rule, at the final stages of mobile application development, work goes on non-stop - seven days a week and almost without breaks. An entrepreneur should take this nuance into account in order to appropriately reward loyal employees in monetary terms. Below is the most optimal work schedule option:

  • Monday – Friday: from 09:00 to 18:00.
  • Saturday – Sunday: closed.

The list of mobile application development company employees is given in the table below:

Job title Number of people Salary, rub. Monthly payment fund, rub. Payment per year, rub.
1 Chief developer 1 40 000 40 000 480 000
2 Programmer 2 60 000 60 000 720 000
3 Technical support specialist 1 25 000 25 000 300 000
4 Marketing Manager 1 30 000 30 000 360 000
TOTAL 155 000 1 860 000

Calculations of income and expenses

You can see the list of monthly expenses of a mobile application development company in this table:

The profitability of a company developing applications for mobile platforms is shown in this table:

As our calculations show, the net annual profit of a company that develops mobile applications, after taxes, will be 2.8 million rubles. This is subject to High Quality applications and the development period for each of them is no more than three months. Accordingly, the profitability of this business will be around 47% - an excellent result for a young, ambitious company.

Possible risks

The mobile app development business is a very risky business. It is impossible to take into account absolutely all the pitfalls of this undertaking, and quite often the “sink or die” principle accompanies the creation of any application until the end of its development. Below is a list of the most obvious risk factors that could negatively affect the development of this business:

  • Leakage of information about the features of projects and, as a result, possible “borrowing” of their concept by other developers.
  • The need to attract additional funding when launching expensive or time-consuming development projects.
  • Increased development time for individual applications, associated with additional costs.
  • Insufficient level of qualifications of employees, their incompetence in highly specialized aspects of working on the creation of mobile applications.

In conclusion, we note that developers who are passionate about their work and create truly high-quality software products for mobile platforms never remain in the red. World practice proves this perfectly.

And the sites are similar in that:

  • developers receive a design layout;
  • the project has an interface and a server part. The second depends on the need to request and receive data;
  • developers implement the design using programming languages, frameworks and libraries (note: in mobile development, XML markup language is also used for layout; nothing is written about this below, but this aspect cannot be ignored).

Otherwise, creating applications for mobile devices has a number of features that affect the cost of the project, development time and user experience.

Project typification

Native or cross-platform?

Mobile applications are divided into native and cross-platform. Native ones rely on the device’s resources and directly use the phone’s camera, accelerometer and other sensors, AR - anything that a phone or tablet can do. These applications differ significantly from mobile versions sites.

To develop native applications for mobile devices, iOS developers use languages, and Android developers use languages. Objective-C and Java are older generation languages ​​and are used more to support the projects that were written in them. New projects are increasingly being created in Swift and Kotlin.

Cross-platform applications are native applications that can run universal code within themselves, independent of a specific OS. This approach allows you to save on development costs. They are usually created by web developers. To do this, they use the frameworks PhoneGap, React Native, Xamarin, Flutter and others - there are many of them, but the popularity of the ones listed is higher than others.

When a web developer needs access to phone capabilities, a mobile developer comes to the rescue by writing a plugin and giving access to the phone’s native API. The web developer embeds the plugin into his project through a cross-platform development framework and connects to the native parts of the phone. Such indirect operation of cross-platform applications imposes restrictions on their functionality.

About the features of native and cross-platform applications and the difference in development costs CEO Live Typing Alexander Kuznetsov.

Operating system version support

Technologies become more complex, applications begin to require more computing power, and following this, the number of operating systems is growing - and the latest ones need support.

Live Typing's iOS department supports versions from 9.0 to 12.2. This is due to the fact that since the ninth version of the IDE xCode, without errors, it allows both layout in Interface Builder and writing code in Swift 4.0.

At the time of writing, the company's Android department supports versions from 4.4 to 8.1, which covers 94% of all Android devices.

The current percentages of OS versions can be found at this link.

Support for old iOS versions and Android not only leads to an increase in the cost of the project and the rejection of convenient technologies, but also does not make sense even from the point of view of consumer demands - if we consider Apple technology, then in February 2019 of the year iOS 12 was installed on 80% of all mobile devices.

Device support

The range of supported devices depends on the OS version support. The Live Typing iOS department supports all devices with version 9.0 and older.

Information is current as of April 2019

With support for Android devices the situation is different. At the time of writing, there are 18,221 Android mobile phones and tablets on the market, and we cannot 100% guarantee correct behavior on each of them. When developing applications for phones, we focus on the most popular device formats and several known problematic devices. This makes it possible to cover most of the devices on the market and minimize the number of bugs on specific devices. And conducting the final pre-release test using remote testing services on real devices, for example, Firebase Test Lab, allows you to minimize the problem of fragmentation of devices on the Android OS.

Tablet version

In order to spend the minimum amount of time developing an application for tablets, rather than creating a second one for the same money, a mobile developer and designer need to act as harmoniously as possible; their main task is to create an application design for smartphones and tablets, using components that are similar for both types of devices.

The tablet's larger display size, relative to a phone, provides a unique user experience. The tablet version is necessary, for example, for children's applications, games, professional tools for designers, doctors and sound engineers, in logistics, applications with interactive elements and augmented reality, and applications displaying statistics and infographics.

In the eCommerce field its relevance is questionable. While working on the ILE DE BEAUTE project, we carried out an analysis and found out that the return on the tablet version of the application is not commensurate with the costs of its development and support. As a result, we abandoned it and concluded that online stores with a large turnover would need an application for mobile phones and a website with adaptive layout. We recommend reading about how we came to this.

Is a backend needed?

Formally, the same thing happens on the backend of mobile applications and websites, but the user experience of websites and applications will be different.

Let us repeat that a backend is not needed for an application with closed functionality that does not require receiving data. These include a calculator, a set of stickers, a timer, an alarm clock, notes, the Prisma application or an application developed in Live Typing. A server is also not needed to operate authorization functions through third-party services (Google or Twitter accounts) or internal purchases.

The absence of a server simplifies development, but trust our team to decide whether you need it or not.

Now let's talk about inside the team.