The procedure for developing a mobile application by example. Application development stages. How to create an app for free

Mobile apps are developed, marketed, marketed, and more and more popular. Statistics show that by 2021 income from mobile applications will reach more than 200 billion USD, and the number of downloads will increase to 350 billion.

Indeed, there are now 2.8 million apps available in the Play Store (Google), and App Store (Apple) - another 2.2 million, and those numbers are growing from year to year. Since dominance mobile devices over desktop computers constantly increasing, mobile apps have obviously come to stay. Especially in the world of business and technology.

Naturally, many businessmen, having got acquainted with this area, want to know: how much time and effort is required to create mobile applications? Let's figure it out.

Mobile app development takes 3-5 months

1 million new apps are published on the Google app and App Store every year. But it is very difficult to find specific data describing how long it took to develop one of them. Authors of numerous articles on this topic do not bother to confirm the development timeline.

We found two interesting studies that, in our opinion, describe the development time of mobile applications most accurately.

First, the Kinvey study. In 2013, they surveyed 100 mobile app developers. During the study, experts had to estimate how long it would take to create the main application components (MVP) for Android or iOS.

After averaging the data, Kinvey determined that it would take about 18 weeks (ie 4.5 months) to create a “native MVP application”, of which 10 weeks would be spent on developing the “backend” and 8 weeks for the “frontend”.

The second study worth mentioning is a 2017 publication by GoodFirms. It covers numerous surveys about application structure, analysis of the time and costs associated with building mobile applications. Similar to Kinvey, GoodFirms surveyed dozens of tech companies, asking participants to estimate how long (and how much money) it would take to develop apps like Instagram, Tinder, and Uber, and then averaged the responses.

Based on surveys, GoodFirms claims that with a full development team:

  • "Feature-rich, high-load apps" like Instagram and Uber take 4.5 to 5.5 months to develop;
  • “Medium Difficulty Applications” such as WhatsApp or QuizUp take about 4-6 months to build;
  • "User-friendly apps with less functionality" such as Tinder and Periscope take 3 to 4 months.

Both studies show that mobile app development takes approximately 3-5 months. Naturally, depending on the complexity and size of the application, these terms may vary, in general this period of time is typical.

Let's now look at the main stages of creating an application to understand what factors affect the development time.

Key stages of mobile app development or why it took so long

Mobile app development is an “iterative process” in which you can seamlessly navigate between the different stages of research, development, testing, customization, and release of the app. But it seems to us that it will be useful to define a few basic steps.

Stage 1: Research and planning

In the last one, we discussed this stage, we will repeat a little. The very first stage of work on creating a mobile application includes answers to two main sets of questions:

  • Why do I want to create this application? Why should it exist? How will the world benefit? Will people really want to use it? What people? What for?
  • Are there applications of this kind already? If so, why do I think I can beat my competitors? How will my application be different, and why will it be better than what is already available?

Essentially, in order to deeply understand your target market and audience, you need to answer the following questions: "What should my application do?" Why does it exist? and "How can I beat my competitors?"

You should conduct extensive research on market demand and customer needs, making sure you: a) identify and justify monetizing customer pain, b) calculate your market size, and c) validate your product idea.

It is difficult to determine exactly how long it will take to collect and validate this important data. Most likely, you need to set aside 2-3 weeks for this.

Stage 2: Functions and features

After analyzing the needs of your target audience, understanding its pains, determining the volume of demand in the market, it is time to form the functionality of a mobile application and determine its key features.

This is the stage at which you should define how the application should function:

  • What is it supposed to do?
  • What tasks, functions and operations should it perform (integration with other applications, chat, etc.)?
  • How will it handle the data? Will you collect raw data from users or use existing structures?

This is the point where you will create a "visual prototype", that is, "a presentation of the user interface of an application showing content screens and the relationship between these screens." A prototype will help identify usability problems and improve user interface.

At this stage, you will also develop “use cases” - templates for understanding how your target audience will interact with the application. Remember: "the more features you add, the more complex your product will be, and the longer it will take to build your application."

One of the most important decisions you will have to make at this stage is whether your application will support multiple operating systems and / or devices, or, alternatively, be limited to only one operating system and / or device. In practice, this usually means that you need to decide if your application will be available for iOS, Android and / or Windows.

Why does this choice matter in terms of timing?

2 simple truths:

  • Developing an application for more than one operating system and / or device almost always takes longer.
  • Although the difference becomes less pronounced over time, at this point, developing an Android application usually takes 20-30% longer than creating an iOS application.

IOS is usually the preferred platform due to the small number of target devices and OS versions. It is much easier to make sure your application works flawlessly on each one than to test it by developing a concurrent solution for multiple operating systems. In addition, the application is almost impossible to optimize for every Android device, because now there are more than 12,000 different types.

As such, building and testing Android apps will take longer if you don't limit the number of supported devices and screen resolutions. When building an app for both platforms, your project duration and budget can double.

If you intend to develop an app for both iOS and Android (and possibly Windows), you can follow one of two paths:

  • Use programming languages \u200b\u200bspecific to each specific platform; or
  • Use a cross-platform development tool (note: Apache Cordova, React Native, etc.) to create both versions at the same time and thereby optimize the process.

Even then, it is impossible to predict the development time with certainty. You should spend 3 to 5 weeks figuring out the main functions and features of the application.

STEP 3: Technical capabilities, design and development

So, you've determined how the application should work and what you expect from it. The next step is to ensure that these functions and features can actually exist and work as expected. In simple terms, you and your tech team need to be confident that you can ensure back-end and front-end compatibility.

Provides a helpful description of these two interrelated structures:

“Front-end developers are involved in code review, design and improvement. They control what people see for the first time in their browser or app. As a Front-end specialist, you are responsible for appearance, logic and design of the site.

Back-end refers to the server side of development and is mainly focused on how the site works. It usually consists of three parts: server, application and database. The code written by the Back-end developers passes information about the database to the browser or application. "

Technically, Front-end processes include caching, synchronization, prototyping, UI design, UI development, and UI debugging. Data storage, user management, server-side logic, data integration, push actions, and version control belong to the back-end.

It is imperative that Back-end and Front-end developers keep in touch with each other, otherwise you risk creating a situation in which the work of some in the application will conflict with the work of others.

The most important part of building an application requires accessing the underlying data on which everything will run.

Will you be using public API keys? Or will you create a unique code?

API is an "Application Programming Interface", in other words, it is a set of ready-made classes, procedures, functions, structures and constants provided by an application (library, service) or operating system for use in external software products. Used by programmers when writing all kinds of applications.

The world's largest apps - from DropBox, Facebook and Instagram to Skype, Twitter and Uber - have public APIs that developers can use to build their own apps.

As an example, Tinder uses the Facebook API: Tinder users log in through their Facebook profiles, which removes the need for the app to build its own user audience from scratch.

Defining front-end and back-end compatibility (as a predecessor, or as a task performed together) requires involvement in UX and UI design, including prototyping.

Part of UX design - "wireframe" is "a two-dimensional illustration of the interface of a page or application that specifically focuses on allocating space and prioritizing the content available. functionality and the intended user behavior. "

Wireframe is a set of gray boxes that help:

  • Connect application information;
  • Clarify consistent ways of displaying information in the user interface;
  • Determine the intended functionality in the interface;
  • Prioritize content by determining how much space to allocate for a given item and where to place that item on the screen.

Wireframing can be performed at different stages of the product creation and refinement cycle.

For example, some people prefer to develop wireframes early in the feature and feature phase.

Others believe that wireframing is more appropriate in the design and development phase, considering it in conjunction with front-end and back-end interoperability research.

After prototyping is complete, a graphical user interface (GUI) should be created in which specific fonts, colors, themes and icons are created / added.

The result is clear visual direction along with mockups that show your engineers the intended end product and how interactions should happen and feel within your application.

Technical specifications related to actual development (i.e. coding a mobile application) are outside the scope of this article.

However, it is worth making one brief but important note on this topic.

You can create a new application using specially designed software platforms for this, but we recommend working with professional development companies who, with experience, help entrepreneurs to successfully implement their ideas. Development (creating the product code) is undoubtedly one of the most difficult and difficult stages of building mobile applications.

The development stage is undoubtedly one of the most difficult and difficult stages of creating mobile applications. Our experience proves that the best solution for developing your application is to contact an experienced developer company. At companies like INOSTUDIO, teams are made up of expert developers and designers, managers and testers who will definitely help you create a reliable, stable, engaging and high-performance application. And your users will definitely like it.

In general, all activities of the 3rd stage will take at least 1-2 months.

Phase 4: Testing and refinement

The final stage associated with building your application (excluding the actual launch and associated marketing activities) is testing and rework.

At this stage, in a sense, testing is part of the development phase, as your programmers and alpha testers will constantly try to "break" your application while building the application to find and fix bugs in the code before launch.

This type of testing is internal to your organization, as your staff (whether employees or contractors) will perform standardized diagnostics before your application gets into the hands of real end users.

On the other hand, however, testing can be independent stageonce the in-house team has tested the alpha version of the app, it will be shipped to a limited audience so that it can be tested in the real world.

Beta testing is stress testing an application out of the lab to determine how it will be used by your target audience. They will be able to use the app the way they like it, not the way you planned.

At this point, you no longer need to define how the application reacts when you try to use it in the way it was intended to be used; instead, beta testing is about how your app holds up when “regular people” download it to their phones and get the freedom to use it any way they want.

Alpha testing identifies major bugs and glitches, while beta testing should uncover previously unthinkable problems and glitches that could occur “in free flight”.

Alpha and beta testing are essential steps in building a robust and successful application. If you have completed a round (or several rounds) of alpha testing, then your beta testing stage should not take long, so we spend approximately 3-4 weeks for testing and revision.

And finally

Summing up the time calculated for each of the four main phases described in this article, we identify the time frame for creating a mobile application - at least 4-5 months.

Thus, we can see that creating an application is a rather long and complicated process that requires a lot of preparation, patience and dedication in order to do everything properly.

How is the Android development process going? Let's highlight a few basics:

  • In Java files, you describe the logic of the program — what you want your application to do.
  • In XML files, you design layouts - appearance.
  • Once the application is written, you need to use the build tool to compile all the files and package them together into an .apk file that can be run on android devices and / or publish to Google Play.
  • All utilities and files that are used to create an Android application are combined into an integrated development environment (IDE). An IDE is a program that you open to edit your code files and compile and run.
  • Eclipse was previously the standard IDE for Android development, but now it has been replaced by the more functional Android Studio, a product of Google.

You will, of course, find deeper processes going on behind the scenes of the steps above. For example, advanced users will want to know the role virtual machine Dalvik. At the end of the article, you'll find links to useful resources that every Android developer should be familiar with. The first one is the official documentation from Google.

  • Download and install Android Studio.
  • We will learn about launching and testing applications on Android devices and emulators.
  • Let's create a simple Android application that displays the "Hello World" text on the screen of a mobile device.

At the end of the article, you can read helpful tips novice developers from the company.

Installing Android Studio Development Environment

It's really tempting to start reading the documentation and writing code to find out what the platform is capable of. And we will do it soon! However, to get started with the Android platform, you need to set up a development environment.

It is especially important for beginners in programming for Android to take their time and methodically follow each step. Even if you follow the steps correctly, you may need to troubleshoot a small environment setup issue depending on your system configuration or product version. To do this, use search services. Especially the StackOverflow resource can be highlighted.

It is important not to let any pitfalls interfere with your ultimate goal of learning Android programming. It is known that even professionals sometimes have certain problems with setting up a working environment. In such cases, knowledge is important command line... If you'd like to become more familiar with this tool, there is a link to a good introduction below.

Along with practicing syntax, it is important to educate yourself in a successful programmer mindset that will not accept the file X not found error message as a final judgment. This kind of thinking is easily trained by you in cases when you do not give up and are looking for a solution to the problem that has arisen.

Go to android page Studio developer.android.com/studio/index.html and find the download button latest version for your platform.

Click on the download button and you will be asked to read the terms and conditions for using the software product. After reading carefully (as you always do) and accepting, the download begins. It will probably take a few minutes. After that, you can install Android Studio like any other program. The download start page contains installation instructions for Mac and Windows.

Now that you've installed Android Studio, let's get it started! Start Android Studio. The program will ask if you want to import your settings. Since you are starting from scratch, just select the second item and continue.

You should see a nice Material Design loading screen.

When the download is complete, you will be taken to the welcome screen.

Even if you just downloaded Android Studio, you may not have the latest version. To avoid problems with versions in the future, click the "Check for updates now" button and, if necessary, follow all instructions to get the latest version. Sometimes Studio will automatically inform you that there is an update using a screen like this:

In this case, always select Update and Restart. Excellent! We have successfully completed the development environment setup.

Creating your first Android project

It's time to create your first project. Let's start simple. Programmers call their first program "Hello World". Let's follow this tradition and then make a few small changes so that the application uses your name for the greeting. In the end, you can download it to your device and show it to your friends. Android Studio has a small step-by-step tool to help you create your project. Click "New Project" on the start screen:

Fill it in like this. Feel free to replace "example" in the package name with something else to remove the warning at the bottom of the screen. You can also set the project location by specifying any folder on your hard drive

For drop-down SDK versions, see the Description section at the bottom of the dialog box. It explains what each setting is for.

Install the minimum required SDK as shown in the screenshot. This sets the minimum android versionrequired to run the application. Choosing this value for your own projects is a matter of balancing the SDK capabilities you want and the devices that will be supported.

For getting additional information about API versions and their use, there is a dedicated Dashboards page on the Android developer site https://developer.android.com/about/dashboards/index.html.

After selecting the version, the screen for selecting the starting template opens. You can create an application that already interacts with the api google maps and displays the map. In our test case, select Empty Activity and click the Next button.

And now you are at the last step of the application creation process. There are a few things to note before clicking Finish. This is where you first come across references to the main architectural components of any application.

  • Is the first but not the last mention of the word Activity. In the context of Android, an Activity is usually seen as a "screen" in your application. This element is very flexible. When Android Studio creates the MainActivity class, it inherits from the Activity class from android package SDK. Those familiar with object-oriented programming understand this concept, but for beginners, this basically means that your MainActivity will be a custom version of an Activity.

  • Layout Name - the layout of what will be shown to the user is defined in a special Android XML form. You will soon learn how to read and edit these files.

Click Finish. It will take some time to create and load the project. After some android time Studio will complete the build of your project. Of course, the project is still empty, but it has everything you need to run on an Android device or emulator.

After loading the project, you view the XML layout file. Before moving on to Android programming, let's talk about how we can get this application running. It's time to say "Hello world!"

Launching the application on the emulator

Now it's time to say a few words about the emulator. Android Studio comes with software capable of emulating an Android device to run applications on it, browse websites, debug, and more.

This feature is provided by Android Virtual Device (AVD) Manager. Optionally, you can set up multiple emulators, set the screen size and platform version for each new emulator. This functionality is very useful as it eliminates the need for developers to buy multiple devices to test programs.

Click on the Run button in the form of a green arrow.

You will have to wait a while for the emulator to load and once it is ready you will see something like this:

Congratulations! You've made your first Android app!

And so ... Why and how did it work?

To start making changes and adding cool features, you need to get a working knowledge of what's going on behind the scenes. Take a look at the files and folders section of the Android Studio project on the left side of the screen. You may need to click the small tab on the edge (see below) if the project explorer is not currently displayed.

Review the folder structure for a few minutes and double-click on the files to see their contents in the main window. If this all looks cryptic, don't worry!

Android project structure: Team

Every good team is made up of people who fulfill their assigned roles. Do you want to get the job done right? You need the right team. There are several key elements in Android projects, and each must play a specific role:

Java: Professional

This is the part of your code that is responsible for the application logic. Your code will be in the src \\ main \\ java directory in the main project folder. For learning Java, consider Bruce Eckel's book Philosophy of Java;

Resources: Artist

It's not enough just to do Android app, it should also be stylish. Your app will never stand out if it doesn't have clear icons and images, well-thought-out layouts, and perhaps even fluid animations.

When initialized, the folder contains the following folders:

  • drawable, which stores icons. Now there is only a standard application icon.
  • layout with XML files that represent screen designs.
  • menu with XML files of lists of elements that will be displayed in the action panel.
  • values \u200b\u200bwith XML files containing sizes, colors, string constants, and styles.

AndroidManifest.xml: Boss

This XML file informs your system of the hardware and software requirements of the application and contains its version name and icon. The manifest also contains information about all Activities in the application. Do you need the work done by your application? Talk to your boss first.

Alteration

Go to res / values \u200b\u200b/ strings.xml and double click on the file. When you open the file, you will see two string resources in XML.

These resources are used in different places, but it is very convenient to have all the text used in your application in one file. If you need to translate it, or if your marketing colleague asks you to remove any redundant links, it's easy to make all the changes here.

Change the hello_world line that the application displays on the screen. Change its content to something more personal, such as using your own name. You get something like:

Matt is learning Android!

Click Run. The application should restart and you will see a personal message:

We congratulate you - you made your first project and learned how to edit source... The first step in Android programming has been made. We wish you good luck on this difficult, but incredibly interesting journey! If you need professional development of an Android application, please contact Infoshell specialists.

In this article, we will describe the stages of developing mobile applications in SBS Soft.

If you describe the development process briefly, you get the following list:

  1. Collection of application requirements.
  2. Preliminary estimate of the development cost.
  3. Prototype design.
  4. Preparation of technical specifications.
  5. Development of the first release of the product.
  6. Testing.
  7. Publication.
  8. Technical support.

So that when you contact us, you know how the work will proceed, we will dwell in more detail at each stage.

  1. Collecting application requirements.

    You call us or leave a request on the site. A sales manager in the format of a telephone interview collects information: what mobile application you want to make, what it is intended for, who will use it, what functions it will have, do you have a website, do you need a server, will there be integrations with software products, for example, with 1C. After collecting information, the manager submits the completed brief for evaluation to the development department. If you are worried about the safety and exclusivity of an idea, we will sign a non-disclosure agreement before discussing the project.

  2. Preliminary estimate of the development cost.

    The development department estimates how long it will take to create the application, which specialists will be involved. You will receive an answer about the preliminary cost of the application within 1-3 days.

    Important! The preliminary cost of a mobile application may differ from the final cost, both upward and downward. The exact amount of application development costs can be calculated only after drawing up a technical task.

    After signing the contract, the project is assigned to personal managerwho will monitor the progress of work, communicate with you and answer all questions. Our team uses JIRA - a system for tracking tasks, tracking errors and elapsed time.

  3. Prototype design.

    To show you how the application will work, you need a prototype - a mockup of the future application. The prototype can be static or interactive - with action buttons and transitions. The analyst takes over. He thinks over the logic of the application and the user's path in it - the user story. At this stage, the marketing department may offer you to adjust the idea, focusing on the target audience and the tasks that you want to solve using the mobile application.

    When everything is ready, the analyst agrees with you prototypes, if necessary, makes corrections and transfers to the designer. The designer defines the style of the application and the main direction, using the concept of Material design guidelines and iOS Human Interface Guidelines with recommendations for sizes, indents, visual effects, animation. Programmers are also guided by the mobile app development guides from Apple and Google.

  4. Preparation of technical specifications.

    The terms of reference are drawn up by an analyst based on approved prototypes. The terms of reference describe in detail: the functionality of the mobile application, transitions, business processes, main scenarios, methods of receiving and transmitting data. When the TOR is ready, you can accurately estimate the cost of the project.

  5. Development of the first release of the product.

    Based on the TK, programmers release the first release of a mobile application. For complex projects, we advise you to create an MVP - the minimum viable version of the product to test the user reaction to the application. Our analyst is always ready to help you determine the functionality required for an MVP. If necessary, we develop a server for managing a mobile application and an API service for transferring data between the server and the application.

  6. Testing.

    Apps are checked for bugs using Smoke Test, Manual Functional Testing, Automatic Functional Testing, and the Monkey Android app. If there are errors, we correct and transfer the finished application to you. For statistics of downloads and analysis of user behavior in the application, we install Firebase Analytics.

  7. Publication.

    Mobile applications have started 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 with various everyday tasks. Creating even a simple mobile application is painstaking and hard work that takes a lot of time, effort and does not guarantee high profits in the future. However, really high-quality and necessary applications can "shoot" in the AppStore or GooglePlay and bring their developers a lot of money. We suggest that aspiring entrepreneurs turn their attention to a typical 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 from scratch in this high-tech area. The source of initial investment can be both the personal savings of a novice developer and loans received from the bank.

    Brief description of the concept

    The business for creating applications for mobile platforms, the example of the organization of which is presented in this article, must be registered as an IE. The best form of taxation for such a business is the simplified tax system (simplified taxation) 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. Financial statement processing is best done through online bookkeeping services. The official registration of a business for the development of mobile applications 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 "Development of computer software".

    How much to invest in opening

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

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

    Production plan

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

    Also, the entrepreneur should take care of ensuring the safety of the office, as it will contain expensive equipment and important development data. You can conclude an agreement with a security agency or simply install strong bars on the windows and a solid metal door.

    Marketing plan

    As for the 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. Advertising on promoted YouTube channels also gives a good effect.

    The cost of one download of an average mobile application is 1.5 dollars, or about 100 rubles. Good apps are quickly gaining popularity among users, and it is quite possible to hope that they can be downloaded 5,000 times or more per month. Accordingly, at such rates, the monthly revenue of the developer company can be up to half a million rubles, and the annual "dirty" income - up to 6 million "wooden" ones.

    Staff

    The company's work schedule for the development of mobile applications is a standard "five-day", but with some peculiarities. As a rule, at the final stages of developing mobile applications, work goes on non-stop - seven days a week and practically without interruptions. An entrepreneur should consider this nuance in order to appropriately reward dedicated employees in monetary terms. Below is the most optimal work schedule:

    • Monday - Friday: 09:00 to 18:00.
    • Saturday - Sunday: day off.

    The list of employees of the mobile application development company is shown in the following table:

    Position 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 find a list of the company's monthly expenses for the development of mobile applications in this table:

    The profitability of a mobile platform app development company is shown in this table:

    As our calculations show, the net annual profit of the company that develops mobile applications after taxes will amount to 2.8 million rubles. This provided 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.

    Potential risks

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

    • Leakage of information about the features of projects and, as a result, the possible "borrowing" of their concept by other developers.
    • The need to attract additional funding when launching expensive or time-consuming projects.
    • The increase in the development time of 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 really high-quality software products for mobile platforms never remain “in the red”. World practice proves this perfectly.

    Artjoker

    The mobile applications market shows dynamic growth - this trend is relevant both for Ukraine and for foreign countries. A significant segment is occupied by games, however, business devices are not lagging behind and show positive dynamics. In the next two or three years, it will be possible to say with confidence that each company will be represented on the Internet not only by a website, but will also acquire its own mobile application - all for the sake of traffic and profit. If you do not want to miss the moment and be among the first in the business race, then plan the development of the app. And go for it!

    What you need?

    Already today, when contacting an application developer company, you meet a variety of opportunities. A team of professionals will offer you not only to develop a custom app with a set unique featuresbut also choose a management methodology of creation.

    The traditional cascade approach is replaced by the energy-intensive and cost-effective SCRUM. When choosing a developer, focus on expertise, portfolio and work experience in your specifics, the presence of project managers and a QA team with a technopark (application testing takes most of the development time), as well as legally formalized agreements - the latter will guarantee your safety.

    After a short tour of the team, let's talk about the classification of applications:

    • Native - written in programming languages \u200b\u200btargeting only a specific Android or iOS platform. This allows them to be quickly installed and easy to operate, fully interact with technical capabilities gadget and not depend on the Internet connection. Building a native app comes at a high cost and is therefore considered a forward-looking strategic step;
    • Cross-platform - an application that is created for several mobile platforms at once. Cross-platform development tools do not use HTML5, but third-party programming languages, the code of which is compiled into a native application for each platform. Cross-platform development is suitable for non-custom projects, and can be efficient and less resource-intensive.

    Besides technical characteristics, you can talk about the typical variety. Applications can be divided into the following groups - rather, your next app is already in one of them:

    • Entertainment (games, image processing, audio and video formats);
    • Helpers (search for information, weather applications, etc.);
    • Social networks;
    • I-commerce (the ability to purchase through apps);
    • B2B applications in the structure (internal control systems and organization of processes within the company).

    Each has its own advantages and disadvantages, monetization methods and conversion potential - to make the right choice, first contact a business analyst and a technical specialist who will conduct an audit and provide recommendations. Let's move on from the big picture to the process of creating the application and the team that participates in this.

    Mobile application development stages

    At Artjoker, we prefer the SCRUM method, which allows you to implement a project not sequentially (stage by stage with lengthy approvals and improvements for a fee), but flexibly - different tasks are performed simultaneously, which allow you to assemble a product ready to launch as a Lego-constructor quickly and for a pre-agreed amount. Development is divided into three stages, within which the following works are carried out in parallel:

    1Stage 1: Preparatory

    • Drawing up technical specifications for the development of the application. For template solutions, this stage goes quickly, but for something unique it may take time. If you plan to monetize the application in the future, then invite a business analyst to monitor market offers, as well as promotion specialists - the right advertising will quickly and effectively attract attention to the audience.
    • Development of UX (User eXperience - interaction experience) we prescribe user behavior scenarios, movement patterns in the application and functionality. A usability specialist will promptly provide recommendations - it is much easier to tell how to do it than to repeatedly redo the structure.
    • Development of the "skeleton" of the application: navigation elements, lists, buttons, which will be supplemented by the main code.
    • Design development .

    Command: project manager, UX specialist, designer

    Development terms: from 60 to 90 days.

    Application creation is a clearly structured process, but systematic work can only be found with experienced developers.

    • On average, it takes about 400 hours to develop an app on iOS, and about 350 on Android. 20% of all work goes to QA (verification), the remaining 80% is allocated to the development itself, design, etc.
    • If the application implies server support and API integration, then the term increases by an average of a month or two.

    Cost:

    On average in Europe (including the CIS countries), the cost of the application is $ 80-100 per hour of work of an experienced specialist (cool developers charge from $ 150-200 and this is considered an acceptable price, for example, in the UK). Australia operates in the same range. On average, for all work with European developers (including in Ukraine), this is $ 7000 - $ 9000.

    The most expensive developers in the United States are at least $ 50 per hour, and the maximum reaches $ 250-300. For comparison, let's take the Indians, who have a maximum price per hour of development - $ 80. Where does this price spike come from? It's all about the expertise, which is confirmed not only by the number of works, reputation (articles, speeches at conferences), but also knowledge of English.

    Summary

    The most important thing in app development is not advertising or even a unique trading app. The main thing is the team to whom you entrust your idea and which will finalize and implement the idea with high quality. What is needed for that:

    • choose a qualified team;
    • fill out a detailed brief with all your wishes;
    • conduct a business audit of existing applications on the market (your competitors);
    • agree on the terms of reference with the stages of work, terms and budget;
    • give regular feedback.

    Choose the best!