Today, we have hundreds of applications on our phones. These apps are intended to make our life simpler, and they really do. But for large corporations, having dozens of business applications is one of the worst nightmares. A large number of applications makes the smallest changes extremely expensive and creates dependencies on legacy platforms. Issues include lack of re-usability, challenges on integrated testing, and developments in silos. The legacy infrastructure becomes a bottleneck to keep up with rate of growth of these companies. Although utilizing modular approach on the back-ends is a good practice, having multiple UIs is largely inefficient. Having a single front-end can bring companies huge gains, increasing work performance and collaboration.
In-house development, outsourcing, and buying products from several vendors, creates a long catalog of business applications and tools for basic operations. To have an idea of how UIs can be problematic, one just needs to look at their own desktop to realize how many windows one has opened at this precise moment. Each email read, becomes a new window open - a reminder to reply it later.
Apple Macintosh GUI
The graphical interface has changed dramatically since its inception with Xerox Alto, Star, and Apple Macintosh in the early ’80s creating challenges and opportunities. The introduction of “the UI”, along with the mouse, created an infinite market for the software industry. The designs were much more attractive than the black screen with complex DOS/UNIX commands which required specialized training, and were not commercially appealing. Although using the keyboard is much more efficient in many cases, we still use the mouse for most of our actions.
But why having hundreds of applications on our phones or personal desktop makes sense but is so ineffective on the corporate side? The answer to this question is personal preference. Personally, if one is at home and would like to listen to some music, she can go to her preferred music streaming like Spotify while another person might prefer iTunes or Google Music or Pandora. If one wants to write a letter, he can choose between Word or Pages. Decisions are made individually, and can vary a lot depending on the taste and preference. The goal each person is completely different which creates a market for competition.
A large list of applications makes sense for personal purposes
On the business side, things are very different. Goals, processes, and activities are well defined and shared by groups that perform similar actions. The main goals of the company are unique to that business. The company knows which actions each individual or group should perform and how it needs to be executed.
Having multiple business applications imposes a huge overlap on almost every area of the company. Think about the so called “ticket” for support areas. If one has a problem with the computer, one will open a ticket for the Help Desk. If one has a problem with the air conditioner, one will also open a ticket for their Facilities Management. It is clear that both systems will have similar requirements such as ticket status, priority, resolver, comments, etc. However, because these two areas solve different problems, it will likely be in different systems.
The most notorious example of an integrated UI is SAP. In 1973, SAP introduced the first ERP which was aimed to be the single point of interaction. SAP integrates all areas within a firm bringing scalability, efficiency, and collaboration on code change. Another interesting aspect is that SAP works on a transaction basis. Every screen is called a transaction that looks the same and feels the same. It can be quickly accessed by typing a five letter code which loads the UI instantaneously.
The rationale behind encapsulated transactions is that every business activity can be break down to a minimum level of granularity. A transaction, by definition, is an indivisible operation. It can not be completed half way trough.
For example, if any department on the firm needs to buy office supplies, it which launches the Purchase Requisition screen. Think of it as filling a form.
There are many reasons why the software industry likes to build individual applications like Word, Excel, and PowerPoint as opposed to an integrated one. Creating different products is an important commercial strategy. Microsoft Office is considered a “killer” application (necessary for basic tasks) but it is sold in different packages. This approach is a known strategy in Economics and Business as price differentiation and product discrimination. Creating different versions of the same product is a successful strategy of sales.
It might appear that the Office applications are completely different with different purposes — but they are not. Most of the 50 million lines of Microsoft Office are shared by the libraries used by each application. It is easy to see evidences by looking at the toolbar on the top of the products — they are the same. The online versions of Google Docs and MS Office, to choose what document type you want to create instead of which application to launch.
The classical definition of application is an executable. But it is difficult to say where one application ends and another starts. What about web applications? Is each website domain, an application? Or is every page an application? It is hard to define. UI integration is maximized by many software companies to reduce costs.
We need to think about our interaction with computers as a math function. Similarly to computers, we also have I/O (input and output) and the processor is our brain. It works like this: you ‘ask’ the computer to show you some information that will enable you to make decisions which in turn goes back to the computer. For example, you could ask the computer to inform you how many boxes of pens are in stock. If there’s only two left, you want to request new purchase. The information you read on the screen is an input into your brain. The actions on the keyboard and mouse are outputs as result of what was processed by your brain (you decided that a new purchase was needed).
In the example above, there is clearly room for automation: we could setup a threshold of boxes of pens that would trigger a new purchase, hence eliminate the human interaction. However, we still have jobs and our jobs are still valuable because our ‘processor’ do what the machine’s processor cannot do. For the more complicated processes, we need people’s judgment and reasoning. And that is where are our I/O efficiency gains — eliminating the interaction between us and the machines.
Having a single interface will enable the companies for the future. Creating a purchase requisition for office supplies could be simply replaced by voice recognition. Instead of typing, performing multiple clicks, filling search boxes, switching applications, why not say: “buy 5 boxes of pens”?
For an AI algorithm to process such sentences, it is easier if the company already adopts transactional model. The word “buy” simply becomes a trigger to the form Purchase Requisition. If we don’t have a single point of interaction, it makes it harder for the computer to launch a specific service for that command. In the end, what takes 10 minutes to do, can be reduced into 3 seconds. Using voice recognition is efficient because I/O is minimal.
Most multinationals have become increasingly more like a technology company rather than their own end-goal businesses. Most companies are unable to find suitable applications on the market, and they end up building their own in-house. When developing applications with a front-end the firm always need to keep in mind UI integration. If possible, create a dedicated team for UI and funnel all development to that UI. This will build strong user interface capabilities that will foster integration and collaboration by all technology teams.