We all know this … we go through the app store looking for cool new and promising apps, download them and after a few seconds we recognize some odd bugs or become annoyed at the handling, always tap on the wrong button or simply don’t find what we are looking for. Some apps upset us even more as they are absolute energy guzzlers. We then often ask ourselves: Why is this app so complicated and whatever happened to usability? Well, to be honest, I don’t know the answer! But app users are merciless and fierce customers!
So if you are about to create your own app, you should avoid such pitfalls to prevent dissatisfied and unhappy users! That is why I created a Top 10 list of the challenges you might face when designing a mobile app and how you can overcome them. To provide you some real insights on the developers’ life, I sat down with Katja and Lars of the Berlin based startup bytecombo to talk about the challenges they faced when releasing their brand new game called “Bronko Blue, the Kitten Copter”.
1. Have an Idea!
Every mobile app starts with an idea – either a vague or already a concrete one. I’m not telling you anything new, but most of the greatest ideas just appear out of the blue. As people use apps to make their life a little more comfortable, productive and pleasant, the really big challenge is to have an idea that is awesome, innovative, and creative or exactly the app everyone was longing for. When already thinking about the designing and realization, remember that less is more! A fast, responsive, reliable and structured app working well in such an environment is better than a nice looking, super aesthetic, but instable or buggy app.
Nevertheless, before you start creating your app, you need to think of another very important aspect: your competitors! Without going into detail and just to drop some important keywords, try to answer the following questions:
- Who is my target group?
- What is the aim of the app?
- Which function does the app have?
- Is the app absolutely new or does it improve an existing one or is it an add-on etc.? (Analyze the innovation level, do some research!)
- Is there a market for the app? (Do a competitor and/or benchmark analysis or user survey!)
- What will be the price of the app? (Analyze the profitability!)
- Where will the app be sold? (Selling via the most popular app stores or via extra channels and other/own websites?)
2. Know Your Target Group!
The main purpose of your app is to satisfy the users’ needs. This is key to get good reviews and ratings as well as high adoption rates resulting in numerous downloads. So detecting the right target group is essential! To do so, do not only rely on different analyses (see above), but also consider the behavior and knowledge of your potential users and the important skills necessary to use the app. Here potential questions are:
- Which skills are necessary to use the app and is it necessary to have previous knowledge to use the app?
- Are the potential app users novices, experienced or expert users?
- What are your users usually up to?
- Where do they get information on new mobile apps from?
Furthermore, your target group defines e.g. your business model, distribution channel, advertising as well as marketing strategy! As you can see it is of utmost importance to know your users!
3. Mind the Costs!
Besides your idea and knowing your potential users, there is one more essential challenge at the beginning: the costs. Because your financial as well as human resources define the frame of your app and hence both extend and duration of the realization process. Best here is to
- have a clear financial concept and/or think of alternatives, such as private or crowd funding etc.,
- define project members,
- make a project plan,
- create sub-projects (if possible),
- set milestones and goals, and
- define a budget – for the development and advertising of the app as well as for employees and unforeseen expenses.
You may find it helpful to consider lean development approaches to make sure you don’t over-develop your app at the beginning, but rather start with a “minimum viable product” that can be quickly developed.
To avoid high development costs, allow for a proper design or concept phase prior to the actual programming of your app. Sketching and deliberating your new app is the key success factor, which can be simplified with the use of rapid prototyping tools. Because prototyping is relatively inexpensive and allows you to optimize your app concept without having to invest in coding, you will start with a verified draft of your app, that “only” needs to be programmed, making later improvements redundant. This preserves everybody’s nerves, improves the relationship between programmers and designers and most of all saves precious time and money!
Costs and profitability go hand in hand. So you should also have a clear idea on how you offer your app:
- Will it be an app that is available for free? Will there be advertising?
- Will there be a free trial version that needs to be upgraded or that has extra features you can add by paying for them?
- Will it be an app that will be sold for a small amount of money?
4. Detect Users’ Requirements!
After this first planning phase the design process can be initiated. Probably the best way to start off is by sketching your app ideas. Using rapid prototyping for this will breathe life into your idea. A huge advantage is that you immediately get an impression of what you are creating and by using clickable wireframes you will get a very precise idea of how your app will work and be handled. As the biggest concern is to satisfy the users, it is really important to detect the users’ requirements and to understand what the users need and want.
With the help of a prototyping tool you get the chance to create realistic, interactive prototypes that not only look, but also behave like your “real” app. As you can simulate your app prototypes, you can test your app prior the actual implementation with test users or other collaborators. During this iterative designing process, you get immediate feedback. Both analyzing the user requirements and optimizing your app according to the users’ needs go hand in hand resulting in a great user experience.
5. Use Eye Candy!
Another challenge is to create a modern app fitting to today’s technological demands including a user-friendly handling, comprehensible usability and of course a pleasant experience. Therefore my simple advice here is: Use eye candy! This might sound a bit odd, but it is not self-evident! Screens are still in use, although they are not en vogue any more. Instead we have to internalize that transitions, animations and responsive design are the Zeitgeist. Swipe and pinch gestures support this easy and intuitive navigation behavior and make it an absolute must-have.
When embedding features and including elements, don’t forget about the user! Especially, when it comes to day to day use of apps. Because we need our fingers to do so – most of all our thumbs as recent studies show. This makes the so called “thumb zone” quite important, i.e. the part of the screen that you can easily reach with your thumb when holding the device in one hand. Since our fingers only have a limited span, you should keep this in mind and choose the position of important elements wisely.
Finally, there’s a huge difference between designing an application for a classic desktop computer that is operated via keyboard and mouse and designing an app for a mobile phone or tablet computer: Since the latter are usually operated via touch screens using our fingers, interactive elements such as buttons, links or icons must not only look nice but also be large enough so that the user can tap on them. So, especially on smartphone, the screen space must be used wisely.
6. Make it interactive!
Similar to the transitions and responsive design, interactions are a must-have! At the same time, they also constitute a time-consuming challenge during the design process and hence should be considered in advance! The main reason is that mobile devices are full of high-tech sensors and hence offer a wide range of opportunities. However, this is a great chance, as well to create a unique app. So make use of the sensors! Because interactions do not only include tap and swipe gestures, consider overlays that can present additional information or buttons that support various click options. Comprehensive “app experience” might be a good name in this context. So my advice here is to consider using more tangible interactions that allow your app to respond to the environment, position and direction of the mobile device, such as shaking, flipping and tilting the device to trigger an action or to include GPS-based position data to overcome this challenge.
7. Make it clear!
An app should be self-explanatory since users don’t want to think when using an app. Furthermore, you should keep in mind that the functioning or handling of the app might be clear to you (as the inventor), but this doesn’t necessarily apply to your users. The use of a simple and clear structure can help deal with this challenge. Also don’t forget about intuitive handling! Most of all, give brief instructions on what to do and how it is done. If necessary, embed or link tutorials giving additional help and support on certain tasks. Icons and thumbnails are a nice way to present information in a very compact manner, too. But be cautious! Too many icons can confuse your user, especially if you introduce icons that don’t correspond to native UI elements (such as a Play button, left/right arrows, envelope etc.). To avoid confusion, you can have a look at the respective operating systems (iOS, Android or Windows) or relevant and most downloaded apps (e.g. different social media networks) to see what symbols they use. Platforms like Appli’s iOS, Google’s Android or Microsoft’s Windows Phone also provide more or less detailed UI guidelines for app developers that will help you choose UI patterns your users will already be familiar with.
8. Create Empathy
Curiosity, creativity and loads of innovative potential keep the ecosystem of mobile apps on a constantly high level and make the market change rapidly. That is why a strong and healthy relationship to your users is essential. It’s all about the positive first impression and wellbeing. This is absolutely essential to relationships – either for people or for products. So make the user feel comfortable. You can’t only achieve this by having an app brimming over with user friendly, interactive features, but also with e.g. a recognizable and memorable design, colors, logo or typical fonts. Maybe answering the following questions will help you as well:
- What are the core UI elements of your app?
- Are there already user stories you can rely on?
- How and where do I attract potential app users?
You may and even should have a look at your competitors and the overall market, not in order to copy your competitors’ app design or structure, but to create something new and unique without reinventing the wheel. Most of all: you want happy and loyal users. Being there for them, listening to their problems when using your app (be aware that there’s always a tiny mistake or bug and someone who finds it) and providing immediate help, are the key to your users’ hearts. It’s all about your users’ empathy and you need to win it!
9. Performance vs. Battery Lifetime
When designing an app, layout and structure are only one side of the coin. But its performance and the energy used for this are the other side. The challenge here is not only to design a nice app; it’s about having an app that runs smoothly without any bugs and which is not an annoying energy guzzler. But often, performance and feasibility of the app are believed to be the exclusive responsibility of the developers. That is the main reason for their late consideration during the design process. Additionally, the performance of an app on a mobile device is perceived differently by many users, but in general it’s based on loading times and behaviors, if and how smooth transitions and animations run, the amount of errors, bugs and crashes occurring etc. Asking your developers to join your prototyping efforts or to set up a beta version to run previous tests with test users will help avoid such trouble.
Another aspect are the devices themselves! Your new app might function well on the newest mobile device, but there are also users with older devices out there! Too many visual effects, integrated sensors, images or anything else requiring high temporary buffer and flooding your cache might lead to a bad or disruptive performance.
10. Different Devices and Different Operating Systems
As already mentioned, your users will probably have many different devices with different screen sizes, especially if you are designing for multiple platforms. So designing an app for the latest device only can be a huge mistake. Apps should run on as many devices as possible – at least if you want to attract as many users as possible. Creating an app suitable for every device is a really big challenge then, too. Because the countless mobile devices bear several restrictions and limitations based on system requirements, embedded technologies, different sizes, pixel intensities, screen dimensions etc. Although this sounds like an odd buzzword, responsive design can make life a little easier. Considering this, screens get more liquidity and thus can be adjusted to the various screens and formats of the devices.
In contrast to desktop or even tablet computers, the screen space of mobile phones is rather limited. The smaller dimensions of smartphones pose a particular challenge to mobile designers, since the screen footprint will usually force them to cut down on features and sometimes even content as well as make smart choices about navigation. Especially when developing a mobile app to go with an existing website or web app, this can be challenging as the natural impulse is to require the mobile app to have the same functions and options.
Finally, it’s not only about the devices themselves, but also about their operating systems. The three main systems, iOS, Windows or Android, have their very own patterns and UI objects and regular updates have become “normal”. So be prepared, there will be bugs requiring fixing on a regular basis. Actually this might be the biggest and most time-consuming challenge in this context.
In terms of such technical challenges a proper testing phase or even a Beta version may be helpful and should be considered.
All in all, it’s about making your mobile app unique, appealing, effective, and pleasurable and of course memorable! It might be quite a difficult and even long challenge. There might be some obstacles in your way to the launch as well, but as we all know there are many mobile apps available out there, which are both real user magnets and incredible success stories.
To put the above-mentioned challenges into perspective, I spoke to the founders of bytecombo, Katja and Lars, who can tell tales about the challenges emerging on the way to the release of a mobile app. On July 26, 2014 their new online game called “Bronko Blue, the Kitten Copter” was launched on the international games market. This indie game is about a cute cat called “Bronko” who is totally in love with his balls of wool. Every morning he sits down to count his wooly treasures, but one night some of the balls get blown away and the horrible trouble starts all over the next day. Suspecting the mean cows he makes a plan to get back his riches. So, in the full version, this side scroller is a challenging journey during which Bronko has to fight cows and windmills, ram or shoot stones and fly through the different seasons of the year.
Here’s what Katja and Lars told me about the challenges they experienced in the past months:
How do you feel now that “Bronko” frolics through the virtual worlds?
Katja: Relieved, excited and frightened all at the same time. Relieved because it took us longer than expected to finish the game. Excited to know how people will like the game and what will become of “Bronko”. Frightened that “Bronko” might not be found in the mass of games or even worse people won’t like it.
From the very first idea to the release last Sunday, how long have you been working on “Bronko“?
Lars: At the beginning we just wanted to make a small game similar to “Flappy Bird” and planned a developing phase of three months. But when working on it, we had so many new ideas every day that time flew by.
Katja: At the end we worked for one year, we spent two days a week on it, to finish and publish the game on several platforms. While the actual programming was done within three to four months, steps like marketing, fixing cross platform issues, fine-tuning and optimizing the concept took a lot more time than expected.
Let’s talk about the challenges. Which were the biggest challenges for you during the design and release process?
Lars: There have been a lot of challenges along the way. For example, there’s the cross platform issue. Choosing the right technology for game development was one of the hardest steps since there are plenty of options. We decided to develop cross platform using a language called HAXE and on top of it the frameworks OpenFL and HaxeFlixel. In theory to develop on a cross platform is a perfect solution. You develop it only once and then publish to several platforms. In reality we had a lot of trouble to get the game running stable on each platform. It took us at least as long to fix the cross platform problems as it took us to develop the actual game.
Katja: Another challenge is or was keeping calm. Like “Bronko” we had some impediments on our way. But to keep calm and get on with it sometimes proved to be very hard. As we are no marketing experts at all, this was another challenge for us. So we had to do a lot of research on what to do and when. Especially with a small budget. Fortunately there are a lot of resources out there on the internet.
Lars: Another difficulty was getting proper feedback. It proved to be a lot more difficult to get feedback while developing than expected. Especially from friends and family as people are very nice about things and criticism isn’t always very specific. And of course from other gamers and developers as you can get useful feedback like bug reports, but more often it’s only a negative or positive rating which doesn’t help a lot.
Which advice would you give to other developers planning to create and release a game for mobile devices?
Katja: Since you can’t be sure if you will finally succeed, you should love what you are doing. Love playing games, love being creative, love implementing and even love promoting it. What you need is patience and in the best case a plan “B”, for example for the funding.
Now that “Bronko“ has been released, do you already have new games or app ideas?
Lars: Yes, actually we do have a lot of new ideas. Next we will create four prototypes for new games, which will be smaller ones than “Bronko Blue”.
Looking back one year from today, would you do it again?
Katja: Definitely, as many problems as occurred as many new experience we gathered.
Lars: And most of all, we had so much fun on the way to the release.
The Berlin based startup was founded in 2013 by Katja and Lars, who are in love with licorice, coffee, and good mobile games. They are passionate about innovative, small indie games with nice and simple graphics. And that’s exactly what the likeable duo wants to develop.
If you are curious about the Bronko’s adventures have a look at their website: bytecombo.com, stop by at the Facebook profile or download the game in the respectively well-known stores and go on crazy adventures with the cute little cat. To get a little impression of the game, here’s the latest trailer:
For more detailed reading on the different challenges of designing a mobile application check out the following links to related articles, blog posts and books.
“Designing Mobile Apps, Where to Start?” by António Pratas
“What Does it Take to be a Mobile Designer Today?” by Sergio Nouvel
“User Experience is Integral to Winning App Design” by Rahul Varshneya
“Mobile: Native Apps, Web Apps, and Hybrid Apps” by Raluca Budiu
“How to design a mobile app.” by Alexander Kirov
“A Project Guide to UX Design: For user experience designers in the field or in the making” by Russ Unger, Carolyn Chandler
“Interactive Design: An Introduction to the Theory and Application of User-Centered Design” by Andy Pratt, Jason Nunes
“Smashing UX Design: Foundations for Designing Online User Experiences” by Jesmond Allen, James Chudley
“Designing Apps for Success: Developing Consistent App Design Practices” by Matthew David, Chris Murman
“The UX Book: Process and Guidelines for Ensuring a Quality User Experience” by Rex Hartson, Pardha S. Pyla