Most companies have developed less than 10 internal apps, according to Gartner (for some, none at all). Yet we increasingly hear that employees want to be more productive using the devices in their pockets, and leaders want to improve business processes and create new streams of revenue through digital transformation.
So how do companies get there? How do you win the race to “appify” the enterprise? To meet the demand, companies are taking their existing application development teams and using them to develop modern apps.
However, mobile apps are an entirely different beast for developers with brand new challenges and unique end-user experiences. And according to Katz’s Axiom, “If you build a ‘crapplication,’ they will run!”
A crapplication, by definition is:
- An app that users hate to use.
- An app that does not deliver an intuitive user interface (UI) and simple user experience (UX) for the workflow and the device that the user intends to use it.
- Often a result of scope creep, unnecessarily stacking desktop application features onto a mobile app.
- Not what you wanted.
How do we solve this puzzle? Here are the tools that will make your life easier and the critical considerations that will make or break your mobile app from my BriForum presentation last week, “The Changing Face of Mobile Apps in the Future of Mobile.”
— Philippe Winthrop (@apwinthrop) July 26, 2016
Developing Mobile Apps for Every Device
In a virtual desktop infrastructure (VDI) environment, enterprise IT was able to continue delivering monolithic, desktop apps. But these monolithic apps don’t work well for mobile. Why? Because mobile devices run on a variety of platforms, and the user experience is entirely different. Most times, the focus is on getting a task done versus an entire process.
Out of that, arises another challenge: How does an already resource-strapped IT organization quickly develop and deploy an enterprise app that works across every mobile platform?
The good news is that companies have stepped up to help you write in-house apps.
Mobile Application Development Platforms
Mobile Enterprise Application Platforms (MEAPs) and Mobile Consumer Application Platforms (MCAPs)—which have merged into Mobile Application Development Platforms (MADPs)—are designed to accelerate mobile application development. You write it once, and deploy it everywhere.
MADPs from companies such as Adobe, Appcelerator, IBM, Kony and Microsoft’s Xamarin allow you to write in a familiar language (C#, .NET, etc.) and develop codeless with drag-and-drop features (the new “it” thing). As MADP technology evolves, the development process continues to simplify and improve, with templates, fewer coding fixes per operating system (OS) and more APIs. The issue with many MADPs though, is that they still require you to go in and fine tune your app per platform, which can be time consuming and difficult.
Rapid Mobile Application Development
What about legacy apps? What happens when you mix a legacy app with some virtualization, add some hocus pocus and come out with a mobile app?
Rapid Mobile App Development (RMAD) is an end-to-end solution for quickly developing mobile apps from existing legacy apps. RMAD technology we’ve seen from companies like Alpha Software, Capriza, HopTo, PowWow, Reddo Mobility and StarMobile simply refactor existing code in legacy apps to optimize it for mobile. Refactoring reformats the user interface so it looks, feels and behaves like a modern mobile app to the end user.
Mobile Backend as a Service
Companies such as Amazon Web Services (AWS), FeedHenry by Red Hat, IBM MobileFirst, Kinvey, Kony MobileFabric and Microsoft Azure Apps Service offer a relatively new technology called Mobile Backend as a Service (MBaaS or mobile BaaS).
We tend to think delivering an app is 100% about the UI and UX, but in reality, that’s only about 25% of the process. The rest is about 30% new frontend and backend features (online and offline); 20% support, scale and management; 15% sub-second enterprise data integration, orchestration and acceleration; and 10% security and compliance. In other words, app development is 25% about delivering custom features and 75% about delivering standard components.
An alternative to mobile middleware, mobile BaaS decouples frontend development from backend changes. Instead of producing a traditional app, mobile BaaS builds 70-85 percent of the app—the stuff that actually eats up most of your time and resources so you can build fast.
Reimagining Work for End Users
Ultimately, developing mobile apps for the enterprise isn’t just about speed. It’s about enabling end users to be productive and, in turn, delivering value to the business. [Related: Keeping up with End Users: 12 Stats about Mobile Work Productivity]
Understand the Use Case
The road to successful mobile app development is all about the use case! You have to employ the #FUN Principle: “Focus on the Users’ Needs.” It’s always great to have business requirements, but unless you understand the use case, you’ve wasted your time. If you don’t involve the users from the beginning, you could end up developing the wrong solution.
— Colin Steele (@colinsteele) July 27, 2016
For example, take the expense report use case. First, how do users currently manage expense reports? Chart the workflow: SAP software, email, PDF reader, approve/reject. Once you record the steps, you can start to reimagine the process by connecting these points.
Then you add a layer of identity and access management (IAM), such as VMware Identity Manager. Finally, you make sure it’s accessible from anywhere, without sacrificing security. At VMware, we enable enterprises to accomplish this with Workspace ONE.
It’s About the Data, Stupid!
Don’t forget, an app is simply the interface we use to access and manipulate data. The steps to developing effective and secure workflow apps are:
- Build an API to access the data.
- Wrap IAM around it.
- Build apps that access the data through the API.
- Get security involved in the beginning of app development projects to ensure they are an ongoing partner.
- Know what you’re building for (both business objectives and user needs).
Think “Mobile First”
It’s also critical that you think “mobile first.” You cannot assume users want to do the same thing on a mobile device as they did on a desktop. The UI and the UX should help mobile users complete a task in a natural way.
When you think mobile first realize that it doesn’t mean mobile only. Design apps starting at the most mobile device and then move that app to the less mobile device (Phone -> tablet -> PC).
Reinvent with Workflow Apps
To reinvent old business processes, first you need to DIAL: consider a “Day In A Life” of the end user. What business process appears again and again? How do they really accomplish their tasks versus how you expect them to? How do they use makeshift tools and processes to make their work easier? Next, how do you reimagine the process to make it easier for them now that you understand the work they are trying to get done?
Also, think about mobile apps as workflow apps, not just single-use apps. When you’re developing a mobile app, you have the opportunity to reimagine work for users, to distill multiple steps into a single pane of glass so users can be much more productive. You don’t get rid of the single use apps for when people need to spend more time focused on various steps, but a workflow app distills the few steps you need for a workflow from various apps and creates a new app from the reinvented process.
As TechTarget summed up from my presentation, “workflow apps are the next step in mobility.”