Mindtree's mobile app development services integrate business processes to deliver engaging, easy-to-use mobile solutions for better user experiences. To know more, visit the website.
1 of 11
More Related Content
Mobile App Development Services | Mindtree
1. Building Effective
Mobile Apps
Introduction
Mobile apps play a quintessential role in realizing the digital strategy for modern enterprises. It is
important to ensure that we adopt an effective strategy and ensure the best practices for designing,
building and deploying mobile apps. We should also ensure that mobile apps are usable by end users.
In this whitepaper, we discuss the best practices for building effective and usable mobile
apps.
AMindtreeWhitepaper
2. Key features of an effective mobile app
While there are millions of apps in various App Stores, users have only a day to use them. How do you
make sure that people use your app? How will you make sure that your app will not go unnoticed
– that your users are not using it or uninstalling after a few days of use?
On an average, users use about 30 apps in a month1
. Obviously, the top ranks in this list are occupied
by popular apps like Facebook, Twitter, Maps, Mail Apps and others. Hence, it is important for you to
make sure that your app appears in the remaining part of this list, or at least, say within a range of 100
frequently used apps. What are the factors that need to be considered so that the user base is high for
your app?
There is enough research data available on why a majority of the mobile apps fail2
. The objective of
this whitepaper is not to debate this, but primarily revolves around ensuring that an app does not fall
into the failure bracket.
There are three key aspects one has to consider in order to make users use any mobile app:
Makes users to install the
app by providing the
relevant, intuitive features
Make users to use the app
regularly through engaging
with them
Ensure users does not
uninstall the app after a few
days/months of use
Let us discuss these aspects in detail.
What makes users install your app?
There are millions of apps, with the number growing every day. For any given use case, there are many
apps already available in the store. One needs to ensure that key functionalities that a user may be
looking for are being provided. Let us look into a few aspects which could help add more users.
Do you really need to develop an app?
Before developing an app, it is important to think whether there already is another application to
address the problem statement. Not all use cases need to be in the form of mobile apps. We can
evaluate the web application along with mobile app and progressive web app to identify the right fit
framework. What are the added advantages you are providing than the (mobile) web?
A personalized user experience, high user engagement, ease of use, performance, convenience and
using mobile-native features (such as swipe, gesture, pinch, zoom, tap) are important features that
need to be incorporated. A fitment analysis can be done to ensure that the mobile app aligns with the
3. business strategy. Compare various app strategies such as native mobile app, hybrid mobile app and
web app and select the one that best suits the requirements.
4. Not too many apps
If you have other apps that provide similar or
relatedfeatures,tryenhancing theminsteadof
creating a new one. Do not have multiple apps
doing similar jobs. Your objective should be to
convince the user to install the app, rather than
confusing them with multiple options. Try to
provide more functionalities in one app rather
than doling out multiple apps for each
functionality. However, limit the number of
features in an app to a certain limit; otherwise
the app will become bulky – and this is the next
point you need to consider.
Right number of relevant
functionalities
Try to provide an optimal mix of relevant
functionalities in the app. Not too less, or, not
too many. If too less, the user may go for
another app/web which provides more
features. If too many, your app may create a
bulky super application, which takes a longer
time to download/install and also occupies a lot
of storage space in the mobile. If a user uses
only a few functionalities on a regular basis,
then there is no need to provide the rest of
them; you may simply redirect to a
(mobile-friendly) website instead.
For example, if the app is about buying and
renewing insurance policies, then a user may
not use it all the time. How many times in a
year or month people buy/renew policies?
Hence, it would be optimal to provide more
features related to insurance or safety aspects
like security alerts, travel advisories or severe
weather warnings. This information will help the
user plan better, and may help reduce insurance
claims as well. In essence, provide
functionalities that really solve the problems
that the user may be facing.
Provide only useful integrations
that make sense
Mobile phones provide the ability to integrate
your app with other applications and sensors
(mainly on Android devices). Some may like it,
and others may feel it as too intrusive or
annoying. If some integrations are good to
have, make them configurable. For example,
lock screen access.
Not everyone likes their lock screens displaying
irrelavant info. Make such features configurable,
and let the user decide to enable or disable
such features. In general, it would be a good
practice not to clutter the phone’s
status/notification area or lock screens unless
there is a huge value-add you are providing to
your users. There are many apps that provide
notifications for various purposes.
Hence, simply showing another notification
may not draw the attention of the user unless
they see value in it.
Screen shots
To market your app better, you can rely on the
screen shots space in app stores. Try to provide
more number of unique screen shots. By doing
this, you are not only conveying the various
functionalities of your app, but also giving the
user a feel of the user experience to decide on
whether to install it or not.
5. How to increase regular usage?
Once the user installs the app, it is imperative that they use it regularly. Why? As a service provider, it
is essential to engage with your users on a continued basis. It could be to improve your sales or
margins or simply keep your user base happy. It is important that your users should use your app
regularly. The term ‘regular’ used here is relative, and depends on the use case what you are
providing in the app. For example, a social networking app may be used on an hourly or daily basis,
and one week could be a long time of non-use for these apps. Whereas, an emergency alert or support
app may not be used at all, but still user may keep it installed in their smart phones. The other reason
being, there are tools available to identify and uninstall rarely used apps. The user tends to use such
tools often, especially when they run out of storage space or when their phone is cluttered with many
apps. You do not want to see your app on this list.
Some factors that will ensure regular usage are:
User experience is pivotal
Do not expect every user to know how to use the
app or work on complex or higly visual
navigation gestures. Apps should be simple and
intuitive to use. Follow guidelines and go with
the simple approach - make every functionality
easily accessible even for a novice. However, this
aspect depends on what user base you are
targeting; thus, there isn’t a single approach for
all apps.
You may want to consider easier navigation and
optimize the design for one-handed operations.
Haptic/visual feeback is essential for key user
actions, and show activity indicators when the
app is waiting for some response from a remote
system. An experienced user experience designer
would be able to provide all these best practices
pertaining to the domain and user base.
Use the screen real-estate
judicially
Cluttering too much information in a single
screen or small piece of information on an entire
screen creates bad user experience. A screen full
of unrelated information is also a bad idea. So, it
is essential to carefully decide what information
needs to be shown at what screen/instance, and
make it accessible to the user when they need it.
6. Provide importance to
performance, stability,
privacy and security
Slow and CPU-intensive operations may
make the user impatient. Ensure that the
main functionality of the mobile app
performs well. Wherever possible, provide
the offline capability to ensure smooth
transition. Never collect any data that is
not relevant. Even if collecting relevant
data, ask for user consent. Clearly indicate
why the data is collected and how it is
stored and protected.
In some countries, there are governing
laws that mandate user data protection,
and you must adhere to the local laws all
the time.
Timely notifications
Provide timely notifications. Do not annoy the
user with frequent rating/feedbacks,
notifications, ads/purchases, etc.
Personalization
Do not ask the user to login, unless you
are providing personalised content. If
the content can be provided without
login, it would be optimal.
Once the user logs in, we can provide
recommendations based on their
past actions.
By using analytics to understand user
behaviour and interests, personalized
push notifications can be sent based on
the user’s interest. Tracking users purely
from an analytics and data capture
perspective is not a good approach, and
may not be compliant with the app store
policies.
7. Regular fixes and updates
Provide regular updates and bug fixes. Provide
support for new OS releases and new
devices/phones without fail.
Accessibiity
If you are targeting special users who need
support with assistive technologies, that is an
important aspect to consider as well. We can
augment the traditional keyboard features with
voice assistance, text enlargement, visual cues,
documentation and others to make the
functionality more accessible. Provide details
about the privacy policy, and data usage and
data sharing policies and get explicit consent
from the user.
How to make sure the user does not
uninstall the app
We have listed a few patterns that can make the user uninstall the mobile app. These are aspects that
could be considered while designing mobile apps to avoid user uninstalls.
App is too intrusive
If the mobile app intrudes too much into the activities unrelated to its primary objective(s), it will end
up frustrating the user. For example, the app sends too many notifications, asks too many privacy
questions that are irrelevant, provides frequent advertisements and promotions etc.
Excessive resource consumption
Be conservative about the resource usage. A mobile phone is a computing system with limited resources
– storage, RAM, CPU power,storage and battery backup. There are specific tools available to find out
which app uses more storage or consumes a lot of battery prower. A frustrated user may uninstall the
app that cosumes a lot of system resources. Some of them could be excessive CPU/battery usage,
creating lot of junk/usage of storage, unnecessary notifications, to much nagging for in-app purchases,
installing other apps etc.
Always running in the background
Ensure that the app is not always running in the background. There are tools available which can
identify this, and kill the app. The user may uninstall if your app runs frequently for no reason.
Asking too many permissions
Do not ask for permissions which are not required for the given functionalities of the app. For example,
a claims reimbursement app asking for the geolocation access (may be for sending promotional offers).
8. Geolocation may not be required for submitting and claiming the reimbursements.
9. Conclusion
While the success of a mobile app will depend on various factors depending on the type of the app, targeted users
and the business case in particular, the above mentioned aspects are common across most apps. Hence, it would be
pertinent to consider them during the conceptualization and development stages. One should primarily be mindful
about the end users with respect to value additions for them. Probably, a design thinking exercise from their
perspective would help before starting to develop the app. We hope the above mentioned points act as general best
practices and thumbrules, which can be used for most mobile app development services or re-write initiatives.
References
1. https://buildfire.com/app-statistics/
2. https://www.fyresite.com/how-many-apps-fail/
About the authors
Jayanthraja
Patla
Program Architect
Dr. Shailesh Kumar
Shivakumar
Solution Architect
Jayantharaja Patla is a Program Architect, leads the Mobile
Applications Center of Excellence (CoE) at Mindtree, comes
with over 23 years of IT experience. He has vast industry
experience including the Mobile Apps Development, Mobile
Phone Software development, and Embedded Systems
Development. He has actively contributed to build the
National Occupation Standards on Web and Mobile
Development for the National Skills Development
Corporation, in collaboration with NASSCOM. He is also a
member of the Technical Sub-committee at C-DAC Mohali,
and designed a course on iOS App development for C-DAC. He
has published one research paper and submitted one Patent.
He has successfully architected several digital-mobility
engagements for various clients in different industry domains
across the globe. He can be reached at
Jayantharaja.patla@mindtree.com
Dr. Shailesh Kumar Shivakumar has 19+ years of experience
in a wide spectrum of digital technologies including,
enterprise portals, content management systems, lean portals
and microservices. Dr. Shailesh holds a PhD degree in
computer science and has authored eight technical books
published by the world’s top academic publishers such as
Elsevier Science, Taylor and Franscis, Wiley/IEEE Press and
Apress. Dr. Shailesh has authored more than 14 technical
white papers, five blogs, twelve textbook chapters for various
under-graduate and post graduate programs and has
contributed multiple articles. He has published 20+ research
papers in reputed international journals. Dr. Shailesh holds
two granted US patents, apart from ten patent applications.
Dr. Shailesh has presented multiple research papers in
international conferences. Dr. Shailesh’s Google Knowledge
Graph can be accessed at https://g.co/kgs/4YoaiN . He has
successfully led several large scale digital engagements for
Fortune 500 clients. Shailesh can be reached at
Shaileshkumar.Shivakumarasetty@mindtree.com
10. About Mindtree
Mindtree [NSE: MINDTREE] is a global technology consulting and services company, helping enterprises
marry scale with agility to achieve competitive advantage. “Born digital,” in 1999 and now a Larsen &
Toubro Group Company, Mindtree applies its deep domain knowledge to 260 enterprise client
engagements to break down silos, make sense of digital complexity and bring new initiatives to market
faster. We enable IT to move at the speed of business, leveraging emerging technologies and the
11. efficiencies of Continuous Delivery to spur business innovation. Operating in 24 countries across the
world, we’re consistently regarded as one of the best places to work, embodied every day by our winning
culture made up of over 27,000 entrepreneurial, collaborative and dedicated “Mindtree Minds.”