Definition of microapp
Microapps are a new way to break down large monolithic enterprise applications into sizeable separate apps, usually to accomplish just one specific use case, but that much more intuitively.
The 'app'economy started by the iPhone is the brainchild of this movement, that spearheaded the way of thinking that users tend to prefer more apps that are each good at just one thing.
This allows designers to fully optimize the UX of the app as buttons, manuals etc. don't have to compete for space with dozens of other features. Instead a microapp allows designer to tweak the front-end UI towards getting the specific task at hand done as efficiently as possible.
Sometimes called microservices
Companies would sometimes call microapps, microservices, perhaps in an attempt to convey a true multi-channelness of their services. ("App" could sometimes be equated by the casual employee to mean mobile app, when in reality microapps are portable services of sorts.)
They can work in browsers, could be wrapped into desktop applications or native mobile apps or often even be deployed with ease via chatbots to smart assistants or enterprise chat tools.
Technically, however, microservices are a kind of software architecture favored by agile developers.
Example of a typical microapp
A typical way to 'redefine' an enterprise use case as a microapp would be Leave requests. In a typical organization there could 3-4 different applications involved to sort out one's leave requests:
- The HR portal to look up your allowance
- SharePoint to fill out a form and trigger a workflow
- Receiving the confirmation via email
- Setting up the Out of Office reminder on Outlook
- Forwarding phone calls to a substitute via a self-service Calls manager portal
But with a microapp you would see a horizontal integration of all the relevant services of all involved applications into just single UI geared towards making just leave requests a unified, cohesive experience.
Risks with microapps
Microapps duplicate functionality from one monolithic application into dozens of specialized little apps for the sake of ease of use.
Managing so many apps just in itself can be a challenge, however even keeping the code base consistently up-to-date when APIs, endpoints or interfaces on the source systems change can be a challenge. For that reason, organiztions need to pick a platform that's suitable to both ever-changing integrations but will also reliably handle the various channels users may access the microapps from.
In the past MEAP or MADP were the category of software organizations would acquire to help manage the load, but with an ever increasing interest in chatbots, smart assistant hardware and ambient computing some tools show they're not fully 'code once, deploy everywhere' and that's something buyers should look out for.