Mobile app development companies divide the app size on hours and the number of app developers working on an application. On AppFutura, we have published articles from things mobile app development companies consider before developing a small app project and a medium app project.
On this report today, you will find some tips suggested by different app development companies listed on AppFutura’s directory when working on large apps projects. Among the app developers that have participated on this report, you will find: Eastern Peak, AppInventiv, Nomtek, Exaud, Promatics and Synergo.
LARGE APPS DEFINITION
A large app project comes with the benefit that it will be a multichannel app product, working on iOS, Android and web-based. Large app projects are also considered to be complex concepts with various features. But for a mobile app development company, these kind of projects are also defined by the amount of app developers working on them. A large app project takes normally 12 man-months work, but it can go up to 60 man-months.
We consider a large project a mobile app that requires over 1,000 development hours.
When an app project has to be assessed for size, there are a few factors to consider like complexity, features of the app, technology used and budget. There is a great significance in “complexity” factor, as the more complex the app is, the higher is the budget, time and resources. Another important factor that defines the size of an app project is the number of features it has. Mobile app technology is ever changing and if the number of features required in the app is pretty high, then we classify it as a large app.
We consider large app projects that take 12 man-months or more to be developed, tested and deployed.
For each company there are different criteria of a project size definition. At Eastern Peak, we define a large app project as the one that is complex, requires a fairly large team (10 and more specialists) involved in its development process as well as the variety of technologies, both web and mobile, that must be integrated into one tailored solution. Such applications have to deal with a large volume of data of different types and handle a large number of requests per second. Usually large app projects start with the budget of 1M USD.
There are various factors on the basis of which you can consider an app a large app project: complexity of the concept, number of features, dependencies of the features on one another, complicated UI, third-party integration, localization of the app, number of phases of app development, data sharing and backend solution.
In addition to all of this, the number of stakeholders also define the size of an app. For an app like Uber, there are three stakeholders - the user, the driver and the admin. The more the stakeholders are, the larger the app is.
We will use the example of two of the largest apps we have developed:
Gebraucht.de: one of the largest app created by Nomtek in recent time. It is a complex multichannel app (web, iOS, Android) created for one of the biggest and top 10 e-commerce platforms in Germany. Despite the scale, we achieved 99,5% crash free users ratio combined with outstanding smoothness of the app usage.
Extradom: a marketplace containing over 16,000 house projects. Clean UI, a broad selection of project-specific filters, detailed information regarding building costs, 3D models explorer and chat with a consultant are features that help users select the right project.
App projects can be considered as large when at least one from the following requirements is met:
TIME NEEDED TO DEVELOP A LARGE APP
For some of these app development companies interviewed, a minimum of 1,000 hours are needed to develop a large app project. But some other mobile app developers also suggest it could be a one year project, involving development and mobile app testing.
Well, it depends on the complexity and features of the app. However, it takes about 14 weeks or more to build large app. As said, mobile apps with several features need more time to build. Moreover, quality always takes time as you need to choose the right mobile app development process and skill set. Not following the right app development process will impact the timeline dramatically. Our process often takes more than 14 weeks and can stretch up to 1 year on planning, development and testing of large apps.
The time to develop a large app varies depending on the client’s needs, we have experience with large app projects that take from 12 man-months to 60 man-months. Of course, we’re talking about cross-platform enterprise level solutions in the latter case.
Typically the minimal timeframe for development of a large application varies between 8 and 12 months, depending on the size of development team.
It is quite difficult to tell the exact time required for building a large application. However, our experts develop a large app successfully in nearly 6-8 months.
When we talk about large apps, 2,000 working hours could be considered as the minimum value (which could be even multiplied in case of a bigger project).
We believe that the initial release (MVP), which can bring value to customers and a market validation to our client, can be built in no more that 3 months.
This obviously depends on the size of the app project, but assuming a range of 1,000 to 2,000 development hours for a first iteration, the duration would be between six and twelve months.
THE PHASES OF A LARGE APP DEVELOPMENT PROJECT
With extensive planning, large app projects have different phases. Some of these phases are basic ones, which include explaining the concept and the benchmarking, as well as the wireframing, design, development and the final mobile app testing. But for some of these mobile app development companies, the large app project starts with a market research to see how high is the standard in that specific market.
Per our experience, all the traditional phases (wireframing, design, development or testing) are present in large app developments projects. However, they’re often accompanied by several additional ones such as proof of concept, pilot, staging quality assurance and so on.
Our first priority is the quality of the service we provide, therefore we follow all the development phases (concept, benchmarking, wireframing, design, development and testing) regardless of the app project size. These phases are necessary in order to create an application that will not only work and meet client’s requirements, but will be successful on the market and bring the desired results.
Irrespective of the size of the app, all the app development phases need to be accurately planned to ensure quality and on time delivery. In fact, the greater the size of an app, the greater is the emphasis of these processes in its development.
Let’s talk a little about all the processes to give you an idea why it’s impossible to imagine an app without them.
Benchmarking: Before starting the development part of a new app, one needs to start with a benchmark study where you analyze the similar apps in your client’s industry. This helps in creating a roadmap for the process you are going to follow and the standards you need to set to measure the performance and limit the lags.
Wireframing: From the very start of the app development process, feature wise discussion needs to be made with the client, so that the team is in sync with the requirements and there are no misses. By having a proper wireframing document in place, it becomes easier to share and work on clients’ recommendations and suggestions.
Testing: Undoubtedly, the main element of the whole app development process. It is the only way to ensure that the app is fit for all the different types of users, the varying network conditions, and bugs and issues.
We add all these steps in our Agile development process, from sprint design to developing user story, irrespective of the app size. Right from the conceptualization part, we ensure that the designers, developers, and testers, know the idea behind the app and have a roadmap ready. The wireframe is sent to the client to give the basic idea of the app flow, and get feedback. All this is followed side by side with the designing, development and automation testing processes to ensure that every app that gets on the market is made to succeed.
Our goal in every phase of the app development is to reach the maximum amount of information about app customers and the app market for the lowest price regardless of whether we create small or a big application.
We are an enthusiast of Lean Startup methodology. We value user research, and we believe that product decisions should be based on quantitative data. We strongly believe that all phases of mobile app development should be done by one well-integrated, multidisciplinary team. The common goal of the entire team is the attitude of success.
Every project should start with a discovery phase, which is an intensive workshop with a client and our Product Team, consisting of both mobile app developers and Product Designer. After having the shared understanding we can go to wireframing and creation of mockups which can be tested with a group of users to get an immediate validation.
Validated, and often altered thanks to new inputs, user stories and designs can be implemented by a mobile app development team which is also presented on all previous steps so they are focused and aware of the business goals of the project.
At the end, mobile app development is executed in 1-2 week sprints with a result of a potential business value that can be demonstrated in front of a client.
In smaller projects you can a lot of times cut some corners if you need to keep the budget down, but this is not feasible for large projects due to the increased complexity.
Building a large mobile app involves extensive planning. If you want your app to be spotted at the first look on the app stores it is essential for mobile app development companies like us to follow traditional phases that include benchmarking, wireframing, design, development and testing. It is very important to do a substantial amount of research and brainstorm ideas before developing the app. Traditional phases of mobile app development lead to the development of large apps.
MOBILE MEMORY SPACE AND LARGE APPS
As the memory space of mobile devices has increased for the last couple of years, mobile app development companies can now make large app projects without trouble. This possibility has also improved by the increasing RAM memory on all mobile devices. Some app developers suggest that without these upgrades, large apps would not be a reality, because the size of these apps tend to be quite high, mobile app development companies recommend having an app size as small as possible, because the number of downloads may depend on the size of the mobile app.
Today, we see a huge progress in cloud computing area since it has found its place with mobile apps. It means that the phones will require less internal memory to support applications work and allow them to directly fetch data from the cloud. Such trend encourages the development of large scale apps since they will take minimum space in a smartphone internal memory helping businesses to grow rapidly. And we are ready to become a partner for them in building powerful cloud based applications.
Large apps offer a wide range of services which involve various third-party integration tools, data sharing and other similar factors because of its higher storage demand. This becomes a challenge for the apps to get a place in the users’ phones and deliver them with exceptional services, especially when the user has a low-configuration device.
Device memory - both RAM and Internal Storage - definitely affects the process when it comes to creating an app that should fit in the limited memory space. Even though today’s devices come with good space, we still have to ensure that the apps we are making take up less space on the device and there is zero scope of memory leakage.
To deal with this situation, we invest in techniques like writing clean code, reusing the resources (whenever possible), supporting only specific densities, using vector graphics, etc.
Since mobile frameworks are already heavily optimised for working in low memory environment, gradual memory increase is not a game-changer. However, using extra memory, we could create more beautiful graphics experience with higher quality assets and smoother animations for Gebraucht.de.
It is fantastic how hardware has changed in the last years. It is hard to imagine that ten years ago we used 32MB of RAM, now 4GB are available. It would be impossible to develop such great app like Gebraucht.de for phones with 32 MB of RAM.
Memory size is expanding along with the screen size for mobile devices. Bigger screens means more costly animations and larger pictures to download and display. We had some issues with memory for the Extradom project, however our experience and variety of profiling (measuring) tools can help tackle and minimize the performance problems.
This applies not only to large apps, but rather the content that is served by the app, e.g. music, video or images. We believe in terms of app size, it should be as small as possible so it will be easily downloadable from Google Play or App Store.
The increase of memory space has definitely helped, however, we still need to do whatever we can to optimize the mobile app size and performance, the increase in memory space has improved mobile app development companies’ capability to deliver nice looking, smooth user experiences.
Evolution of memory space of mobile devices affected the development of large apps to a great extent. Memory space helped mobile app development companies in building large apps easily without the need of shrinking them. Less memory space on mobile devices limits the app performance. By having a huge memory space on mobile devices, mobile app developers can mitigate memory storage bottleneck while developing large apps.
The evolution of the memory space available on mobile devices allows mobile app development companies to bring even more demanding applications to mobile, practically offering an experience that just several years ago was only available in the desktop environment.
CHALLENGES OF DEVELOPING LARGE APPS
Large app projects come with different challenges mobile app developers have to solve before launching the application to the general public. Some of them are related to the coding of the app. This code has to be clean and well structured because of the large app development process behind all the project.
Also, mobile app development companies have to consider that these apps have to be fully scalable and testable, but also limited to the RAM memory some devices have. This limitation will make app developers think of a way to optimize the memory used on the device for a better UX, without forgetting the design of the mobile app.
Dallini: It is Iraq’s biggest commerce app with currently 2 million users. The app empowers the users and brands to interact with each other, create a business profile as well as enjoy social interaction features. That means, they can create social posts, search, like and review products, finding the nearest store, etc.
While building this app, we came across various challenges which made the development process interesting. The first issue was the language support. The website linked to the app is in Arabic, while we were supposed to build a mobile app supporting both English and Arabic language. Next, was providing the same UI/UX experience to the users as observed on the website and to manage the data of 2 million users, for which we came up with the concept of showing limited data at once, while the rest will be accessible from local storage whenever required.
Wainapp: Designed with the latest location-based advertising technologies, Wainapp app offers shoppers and visitors with an exceptional retail experience. Developing an app with such a rich list of features was an experience on its own. Integrating linked yet different features in the app, was a little challenging at the beginning, but we got over it, pretty soon.
Here’s what made Wainapp the leading m-commerce app.
For businesses: Based on target marketing, the app had to connect shoppers with the brands that meet their taste and style. We had to ensure that a proper plan was in place to allow business to advertise on the basis of their prospective customers’ location.
For the Wainapp retailer, we created a reporting system that shows customer statistics which includes demographic detail, usage and spend statistics, the top loyal customers, etc.
For admin: Businesses had to register with the Admin to add their brand on the list, so we had to create a robust platform for the app Admin, who was also given the role to send vouchers to the customers on shop’s behalf.
For customers: For the users registering on the app as customers, the most exciting feature that we had to add was a mechanism where they would only have to add their preference and the app would give them a list of stores in the city where they can find it. Also, to give them the freedom to change the location and see deals in other areas as well.
Another element we had to add was a city guide. The app needed to give information about hotels, police station, hospitals, etc. All within the app. Although, it appeared difficult to integrate that in an e-commerce like app, we seamlessly added the feature nevertheless.
The greatest challenge for us developing Gebraucht.de was defining high-class architecture for mobile apps. The architecture makes the app fully scalable and testable. We can handle a significant change in business requirements of the product without any problems.
The architecture gives us the possibility to implement A/B test in a simple way. We can easily run many complex A/B tests which are crucial for measuring the progress of the product.
Creating and managing a well-integrated team of 15 people was crucial to the success of the project. The team develops top-notch, high-quality apps. It is a pride for us that after more than one year of development Gebraucht.de has 99,5% crash free users. This excellent result gives our client the opportunity to invest in new features instead of expensive maintenance. The quality of the app was recognized by Apple. Gebraucht.de is a featured app in German App Store.
The challenges of Extradom project were:
While working on a large app, usually complex integrations are required. With complexity comes higher risk, but we enjoy this type of challenge. We are always looking for ways to improve the stability and performance of the app, while not sacrificing the user experience or the security of the mobile app. Also, developing a large application increases the value brought by a systematic approach to QA, as in complex workflow and rules based scenarios it is easy to miss a detail that will show up in production at the least opportune moment.
Another facet brought to light by our expertise on the development of large applications, especially in Enterprise environments, is the complexity of the publishing process, as sometimes custom solutions are used rather than the usual store publishing ones.
Some of the large apps developed by us are in the domain of online Vet consultation, on demand Truck cargo booking and a banking apps. Here is the detailed description of these apps.
Online Vet Consultation: This is the best app for pet owners that helps users find qualified animal therapists for the health of their pet. The online video consultation feature allows users to schedule an appointment with a qualified doctor and have a video consultation. Other features of this app are: finding animal therapists nearby, free online booking for in clinic checkup, finding the right training institute, conducting video call for consultation and many more.
On demand trucking: This is a freight tracking app that involves booking of loads and tracking live trucks. Users can book a truck instantly without making a call. The features of this app include: finding relevant loads, real-time notifications, getting paid instantly through the app, free fleet tracking and many more.
Banking app: This is an app for a large Asia Pacific based bank’s internal employees. Using this mobile app, employees can perform a variety of bank operations directly from their mobile devices. The app was plugged into the main database of the bank so security was extremely important in this case. The main features of this app include: creating applications for customers, tracking appointment with customers, processing loans, reviewing credit scores, performing various banking calculations, manage deposits, calculate the total loan amount of customer, generate reports or send reports to customers.
We have developed lots of large application projects for leading mobile platforms. For instance, we’ve created from scratch an Android application and corresponding SDK to communicate with smartpens powered by QNX for US-based Livescribe Inc. The app allows automatic digitization and OCR for any kind of written input from the pen along with cloud integration and many advanced features. Due to the nature of the project, the app requires quite a substantial amount of RAM to run smoothly, therefore we had to pay great deal of attention to memory optimization, caching and heap usage to make it compatible with lower-end Android devices.
Another challenge was minimizing the CPU usage while running on background to avoid battery drain and yet provide the user with good experience as the app is supposed to always look for new writing events from the pen over Bluetooth LE protocol.
In our opinion, large apps often offer more features in addition to advanced user experience, similar to the desktop level. However, that comes with higher hardware requirements and possible reduction of battery life.
Some of the large apps Eastern Peak has developed are:
Ubertesters: this is a cloud-based and process management platform for mobile app testing. It has different interfaces for customers, and QA managers, crowd testers and administrators are involved.
DPD: this is a website for the leading provider of parcel services in Europe.
FixitJoe: this is an on-demand repair services app used by housedolds and businesses and it allows users to book a repair service with just the click of a button.
Gett: this is a global taxi service app and it is available in more than 100 cities across Europe.
The main advantage of building large applications is that you become a part of something big so you can contribute to the society by making a product that brings value to people. It is quite challenging due to the project complexity, but at the same time you learn a lot when the app development team comes up with different solutions and unique ideas on the way.
As a disadvantage we can consider a long period of time for go-to-market, that won’t result in an immediate profit. However, it is worth waiting because the potential of such apps is enormous.
Minimum, a large app owner will need 3 months to develop a preview of it. But it will still take time until the client will be able to launch the application to the general public. The price to develop a large mobile application is quite high, but the final result will benefit both, the app owner and the user. The latter one, will be able to experience better functions and have a better UX compared to medium or small app experiences, improving the user’s fidelity to the app.
You can read more about large apps and share your expertise developing apps on our Forum thread: Tips to develop large apps for app development companies.
Do you have a mobile app idea? Publish your app project and check our top mobile app development companies worldwide directory.
If you have some doubts to hire a mobile app development company, follow our guide before hiring the best company for your mobile app project.