Chapter 1: A Comprehensive Handbook to App Development for the Non-Tech Savvy
September 11, 2018
September 11, 2018
It is no secret that to ensure the success of a business, you must constantly look for new opportunities to grow and find unique ways to deliver services to customers. According to App Annie, between 2015 and 2020 the global mobile app store downloads will more than double, reaching up to 284 billion downloads, because of the use of smartphones in emerging markets. With this data in mind, it is clear that mobile applications are a current technological trend with businesses jumping on board to create an app for their brand to increase interest from existing customers as well as drawing in more attention from future potential consumers.
Because it can be intimidating being faced with all the technical language associated with app development, the act of actually creating an app may seem very complicated to you. You might be thinking to yourself that maybe you aren’t tech savvy enough to take on such a project. Have no fear, because it is possible to understand app development in Toronto without a background in tech or programming.
This is the first chapter in a series of blog posts surrounding the theme of app development for the non-tech savvy. This chapter will go over introducing some terminology to help you through the app development process including learning about MVP, API, SDK, MBaaS, UX and UI. Don’t let these terms make you uneasy, we are here to help, so let’s dive in!
If you weren’t already aware, in business, MVP stands for minimum viable product, which according to Eric Ries, the author of Lean Startup, this can be defined as “a version of a new product which allows a team to collect the maximum amount of validated learnings about customers with the least effort.
Essentially, an MVP is a new product developed with enough features and value to appease early customers into using or buying it. All final features of your product are only designed, developed and completed after feedback is given from the product’s early users. In terms of mobile app development, your MVP includes the necessary features needed to help solve a problem for users which can then be released on the market.
Now that you have an understanding of the definition, you may be wondering what the purpose is for having an MVP. What’s the big deal? A minimum viable product is a great learning experience to help you gain insight about the market you want to go into and learn about the potential consumers who will use your product. It gives you the chance to get feedback from your users, prove the business potential of your product and allow for future stages of development of your MVP.
However, before throwing yourself into developing an MVP, there are a few things you should consider:
Now that we have introduced the definition, purpose and criteria of an MVP, let’s move on to the next couple of app development terms on the list: SDK and API. What are these two acronyms you ask?
Let’s begin with explaining SDK, which stands for Software Development Kit and is also often referred to as a devkit. This is a set of tools developers use, think of it as a sort of toolbox containing the necessary tools, visual editors and pieces of code to build software applications on different platforms. A simple way to put it would be that a devkit is like a box of premade cake mix containing all the dry ingredients you need to bake a cake.
You are probably now wondering about API, which stands for Application Programming Interface. Think of a restaurant and how you want to order food. How do you communicate what you want to the kitchen? Through a waiter of course. The waiter comes to take your order and relays what you want to the kitchen. Then, when your food is ready, the waiter brings it from the kitchen to you. The waiter in this analogy signifies the API.
An API is a messenger that takes requests for what you want to do and relays it to a system, then the API comes back to you with a response. This allows one piece of software to talk to another, whether it’s between data, applications or devices.
Let’s go over some real-world API examples to help with your understanding of the topic. While using Yelp, you decide you want to find the best Italian restaurants in your neighbourhood. Yelp’s API will then search this for you and come back with the results. Another example would be if you are using a website like Booking.com or Expedia.ca to book a flight, the API will search the deals with different airlines (Air Canada, Air France, Air Transat, etc…) and come back to you with a list of different options. And finally, an example of how devices and apps can communicate with each other would be how you can sign into different apps using your Facebook or Google account. As you can see, based on these examples, different API components and features can be added to enhance your app.
A Mobile Backend as a Service (MBaaS) plays a role in the app development process and utilizes both APIs and SDKs. An MBaaS connects mobile apps to servers or cloud services using Application Programming Interfaces (API) and Software Development Kits (SDK).
A Mobile Backend as a Service helps move along the development process of your application and aids in growing the product experience by enhancing it with features and services like storage, push notifications, analytics, social networking, location services, data privacy and security, and user management. There are many different MBaaS providers to choose from, each offering different features. The top providers are:
Microsoft Azure Mobile Services
With all this technological terminology under your belt, it’s time to look at the user experience (UX) and the user interface (UI) and how they both play a large role in the development process of an app. It is important to note that one cannot function without the other. They each perform very different tasks, but they need each other to ensure a product’s success.
The user experience involves the internal experience a customer has with the app, including how the user interacts with a company’s products and services. The goal for the UX is to map it so it’s user-friendly, ensuring the ease of use between a customer and a product (i.e. your phone). You want to make it as easy as possible for customers to complete their desired tasks, focusing on the optimization of the product, making sure it’s enjoyable to use.
On the other hand, the user interface involves the user’s visual experience and the aesthetics and cosmetics of the app. This includes the look, feel and interactivity of a product. The goal is to make it attractive to users through the elements you use to interact with the device like screens, pages and visual elements like buttons and icons.
The level of usability of an app and the user experience come hand in hand. As we mentioned before, the user experience ensures that the customer is happy while using the app and that they had a pleasant experience with your product. It’s all about enhancing the relationship between the customers and the brand and analysing system performance and interactivity behaviour from users.
Three of the main characteristics to describe usability include effectiveness, efficiency and satisfaction. Its importance is building an app that is easy to use and making it possible for customers to achieve their goals while interacting with the product. A good question to ask when thinking about usability: can the user accomplish their goal? If the answer is yes, then you are on the right track to your app’s success.
Now that you have an understanding as to how the user experience, user interface and the usability of a mobile app work together, let’s take a look at some core elements of mobile usability. After all, the goal is to make sure all your users are happy with their app experience and following these principles is a step in the right direction.
With all this mobile app usability information in mind, how can you analyse it and monitor the users’ experiences? This can be done through both qualitative and quantitative analytics. Quantitative analytics is numerical data, for instance, it may show that your app has a daily crash rate of 70%, but this data won’t necessarily show you why this is happening. This is where qualitative analytics come into play when information can’t be evaluated using numerical data. With usability being so subjective and unique, it can be difficult to measure it with numbers.
There are a couple of tools you can use to help acquire qualitative data. Touch heatmaps and user recordings can provide the analytics to measure mobile app usability to see how users are behaving and interacting with your app. It can help you understand what works and what doesn’t. For example, using qualitative analytics might help you realize that a certain feature in your app is frustrating for customers to use.
Touch heatmaps are tools that monitor all the different gestures done in your app whether it be taps, swipes, double taps or pinches. The heatmap is layered on top of the app so that you can see how users are interacting with it. These interactions are shown in a colour frequency from blue to red, with blue showing the lowest interactions and red showing the highest. This can help reveal which features on your app are the most and least popular.
With a heatmap you can see if there are any unresponsive gestures coming from your app, this means when user interactions and gestures with the app are left unanswered. For example, this could be a bug in the app leaving some of the buttons unusable or unresponsive. You could see maybe a lot of users are constantly quitting out of a particular screen and then investigate as to why that is happening.
Another tool we mentioned earlier is to apply user recordings in your app. This is pretty self-explanatory where everything the user is doing with your app is recorded, following your users through their app journey. This gives you insight into the user’s experience, whether anything needs to be fixed and if they are experiencing any particular problems.
Platforms like Google Analytics and Mixpanel can also both aid in tracking web and mobile traffic. Google Analytics is a free tool offered by Google which collects data related to actions by users, individual app visits, individual page visits as well as button clicks and video views. Mixpanel has the same idea where the goal is to track user interactions with web and mobile applications to better understand how users engage with your product.
Finally, one last tool to help you analyse mobile app usability would be to allow your users to provide in-app feedback. Besides just using email, your users need an efficient way to voice their experiences with your brand such as chats, phone numbers, etc.
After going through all that app development terminology, it is important to note the different categories of apps that exist. We have come up with a list of the different types of apps to help you decide which kind will be the best fit for your brand if you ever decide to develop your own:
To finish off the chapter, we have provided you with a glossary of some app-related terms which will help you better understand technical jargon:
A/B testing: This is a way to test two different versions of an app to see which works and performs best.
ASO: Stands for App Store Optimization and involves the process of helping mobile apps rank higher in app store search results.
Backend: What goes on behind the scenes of how your app functions, such as updates.
Bounce rate: The rate of people visiting your website without interacting with the page (not clicking on anything on the page they entered the site on).
Bug: These can cause apps to crash due to an error or flaw in the application.
CMS: Stands for Content Management System. CMS makes it possible to manage, edit and add digital content on an app.
Debugging: The process of identifying and removing flaws (bugs) from an application.
End-Users: The targeted users your app was intended for.
Frontend: The parts of your app you can interact with like contact forms, buttons and drop-down menus.
Hybrid app: One app built to run on multiple platforms and devices.
iOS: Operating system used for Apple devices like iPods, iPhones and iPads.
Native app: An app built specifically for one platform or device.
Push notifications: Alerts and messages sent from the app to the user on their home or lock screen (for example, update reminders).
Retention: The users that consistently use your mobile app.
Specification (spec): A document showing all the necessary information about an app before building it. This includes the target audience, budget, design, etc…
Wireframes: A blueprint that shows the functionality and navigation of your app
If you want to see a more extensive list of technological terms, you can consult this mobile app dictionary or this app development jargon glossary.
As you can see, there is a lot to learn before jumping straight into developing an app. With an introduction to MVPs, SDKs, APIs, MBaaS, UX and UI, you should be a little bit more self-assured in your technological knowledge. Chapter two will focus on knowing the difference between native and hybrid apps, understanding the pros and cons of choosing both options and the different programming languages used in iOS and Android to develop both types of apps. Be sure to check it out in an upcoming post!
Filed under App Funding
Tagged API/SDK, mbaas, mobile app usability, mvp, Apps, UX/UI, app development
Partners - not providers.
Guaraná will act as your partner and advisor throughout the whole process. Our app development process is tailored to be collaborative and we truly embrace each one of our projects. Being a well rounded and skilled team makes us a great long-term partner for both startups and established companies.
Execution equals excellence.
We truly commit to your digital app development project's success. We're passionate about turning your web & mobile application idea into a high-performance digital product with authentic design, smooth usability and amazing engagement. We provide nothing less than the best user experience possible.
High-quality code built for business growth
Our tech team ensures we always craft the best logic for your users and your strategy. Our scalable solutions are ready to accommodate any new features you might need - when your business evolves, our code evolves with you.