You have a smart phone. You use apps. And you likely have come up with a great idea for an app. Maybe you have thought, “Why don’t we turn this Line-of-Business application into a mobile app?” It’s even likely that your leadership has been asking for a mobile application for some time but you just don’t know what to do to get started. I have good news for you. Creating mobile applications isn’t as scary as you may think. BUT, before you jump in and start building a mobile app, you should take a step back and consider what characteristics make up a successful mobile application.
Successful mobile applications all have three characteristics in common:
- They continue to release new value to their customers
- They are available on platforms that are most commonly used by your customers
- They know what they should be and what they cannot be
If you know how to address these three areas, you are on track to creating a well-used (and potentially well-liked) mobile app.
Releasing value to your customers
When it comes to mobile app development, your software development process can be your greatest asset or your biggest detriment. It’s easy to approach mobile application development like you do when you develop a line-of-business application. That’s a big mistake. Modern mobile applications are expected to be updated frequently, providing small, incremental updates. It’s expected that these applications are cloud-enabled and can easily access big-data. It’s also expected that mobile applications have some form of social connectivity.
When building a mobile application, agile software development practices are, hands-down, superior to traditional development practices. Frequent releases and updates, minimum viable product, and focusing on delivering value instead of features are key to a long-term mobile application strategy. Traditional software development cannot support the short cycles and quick adjustments that your customers are expecting. Can you build potentially shippable products every 2 or 3 weeks? Is your team able to evaluate a requirement and determine the minimum viable product (MVP)? And do you have a system in place to gather fast-feedback once you’ve released a product?
You can use any development process to build a mobile application, but unless your practices support fast-feedback and then quick adjustments to what you’re building, you won’t have the ability to meet your customer’s expectations of continuous delivery of value. Remember – your customers (whether internal or external) have smart phones and have grown accustomed to frequent updates. Other companies do it because they have agile development and release practices. If you currently use traditional software development practices then it is time to look (or take a 2nd look) at agile development practices. And if your agile practices aren’t delivering value every 2-3 weeks, consider an agile tune-up!
Know your customers and their mobile platforms
Building a mobile application may seem like a good idea until you realize that there are several different mobile platforms in wide use today. How can you effectively build a mobile application on multiple platforms (Android, iOS, Windows Mobile, and others)? It seems like an expensive proposition.
Building a mobile application that reaches the broadest audience doesn’t necessarily require you to build out an entirely new development team with the requisite skills. There are options. For example, if your team is familiar with C#, then Xamarian may solve your problems. Xamarian allows you to develop your application in C# and then it will build out the mobile app for the various platforms, whether Android, iOS, or Windows Mobile. If you use Xamarian Forms, it simplifies development because you won’t have to spend time building custom controls for each of the environments, Xamarin has done it for you!
Once you create the mobile app, you will need to familiarize yourself with the app store submission process. Windows Mobile, Android, and iOS have three different processes and each once has its own challenges. I recommend that you use someone who has experience with the submission process in order to save you time and money. (For example, do you know what your DUNS number is? Do you know why you need it or if you need it?)
Know what your application should be and what it cannot be
Your mobile application will be different than mine. The challenge is knowing what you should be building and in what order you are releasing the features. Add to that the ever-changing landscape of customer requirements and you can see the challenge. Mobile app development needs to be agile so you can quickly adjust your plan. It’s possible that the features you intend to release three months from now may not be needed by your customer. Why spend time developing features that will not be used? This is where you take time to consider the minimum viable product. Release the bare minimum of functionality and see if the customer uses it. Get their feedback and then see if they need further functionality.
If you maintain a ‘minimum viable product’ mentality then it will help you avoid the trap of overdevelopment, or working on something that the customer doesn’t really need. Looking at an application through the lens of MVP is a discipline that your entire teams needs to develop. It’s not just about the BA’s thinking about it: the developers need to push back and ask questions; the testers need to be clear on what they are testing and for what result. Looking at MVP is a core discipline of agile development. You do not want to deliver what the customer doesn’t really need or want.
Building mobile applications is not just about what technology or platform to use. It’s also about the development practices. Your development practices should support fast feedback, minimum viable product, and short development and release cycles. There’s something very satisfying about releasing new features to your customer on a frequent cadence. And it’s also about engaging your customer, learning about their needs, and obtaining that feedback that will inform what you deliver. Once you have the cycle of obtaining customer feedback, building MVP quickly, and releasing to the app store, you will find the practices will start to inform your other software development practices!
Northwest Cadence can help your team build their first mobile application. Contact our Client Services Team for more information!