The death of Microsoft’s Web Forms and the spike of interest in the topic of “Enterprise UX” are two developments from 2015 that have reduced the number of options available for incremental web enablement and modernization of mainframe applications. These developments will ultimately cloud the long term vision for these applications and frustrate initiatives for their reuse.
One of the interesting trends to note in 2015 is the rise of the term “Enterprise UX”. Many articles about the subject appeared in the past 12 months and there was even a first conference held this May in Texas that was dedicated to the topic.
What went missing at the conference and what I find lacking in most of the current discourse on “Enterprise UX” is effect - taking design principles of “Consumer UX” and throwing them at “the enterprise” has not resulted in a new class of UX. Much of the attention flowing into the field of Enterprise UX assumes that enterprises should look to Consumer-grade UX because Consumer-grade is necessarily superior. We have not seen if enterprise users have any needs that exceed those of consumers or exist separately from them.
This is unfortunate and does not bode well for the consumerization movement. Once we ignore the requirements of non-Consumer UX when compared to Consumer UX, it means we’ve already stopped listening to our enterprise users before we pretend to listen to them.
The observation of Enterprise UX is that today’s new enterprise users have experience with consumer digital products, and so they are confused when they enter the workforce and find computer systems that offer a different experience. The thesis is that enterprise must invest to make the experience more intuitive to these users. Two problems I see with this are (one) the new users from previous generations were also confused by enterprise systems when they entered the workforce and it was considered normal that they received training to attain proficiency and (two) we seem desperate to elevate Instagram and eBay experience to “relevant workplace skills”. If an amateur guitar player started working for a bank 30 years ago, nobody would expect the enterprise UX to have six strings, and enterprise IT to be at fault if it’s not the case.
Leaving the thesis aside for a moment, let’s take our mainframes and poke at four proposals that resound from it:
I especially like this one because applying it to mainframe environments is so absurd. Imagine checking in for a British Airways flight and seeing the customer service desk employee sighing with frustration at their subpar user experience as they get you an aisle seat. Now we can tell this person “Why not march over to the Lufthansa counter and use their app, I hear it’s a killer. You have an iPad don’t you? You should try before you buy, amirite?”
One of the fastest ways for a consultant to melt credibility is to imply to a mainframe shop that old UIs are slow. Organizations serious enough to have a mainframe have already optimized the kinematic load of their online transactions, and have UI response times that are measured in milliseconds. Whatever superfluous, time-wasting keystrokes existed in the use-case scenarios got optimized in the name of cost cutting in the last economic recession. And the recession before that, and the recession before that, and the recession before that (four recessions in the West only takes us to 1981, incidentally). And don’t get us started on what a timewaster a mouse can be.
Standardizing on a modern, distinctive look and feel of enterprise UIs sounds like a good idea. Typically these look-and-feels were not made with character-based UIs in mind that show data on screens with 80 columns and 24 rows, however. 1920 characters just isn’t a lot of real estate. Continuing with the example of British Airways, if you make space on a screen to fit a “B” and an “A” in every top-left corner, you’ve reduced the amount of data you can fit on the screen by 0.2%. That might not seem like a lot, but on those screens that contain the most data, that 0.2% has been thought about carefully several times.
I find it hard to see this holding for most mainframe shops because it assumes domain knowledge is not specialized. Where would IT get their specifications from if not the users? When the SEC releases new rules requiring companies to report on items affecting their operations, how do software developers know not only what information needs to be generated, but what flows the users will implement to generate these triggers? What about insurance companies making changes to the way they track statistics and measure risk? What about changes made to tax law? What if the LOB just innovates? Who else besides users in the business can control what these systems do?
So what we’re missing in Enterprise UX discussions of today is what is characteristic about enterprise user requirements and how to cater for them. Is there a good reason why enterprise screens from 30 years ago look the way they do and not like eBay? What if business users need screens that show 40 fields of customer data, are there a set of best practices to reengineer these many fields with a graph and a GUI widget? Actual “before and after” case studies of successful makeovers are hard to find.
Mainframe users know there are differences between the two, of course. Enterprise outstrips consumer in consequence of user error, safety and regulatory frameworks, task complexity, user proficiency with these systems through repeated use, and role-based security. Knowledge workers who have more data on their screens than minimally required by their persona make better decisions as they benefit from increased situational awareness. Tolerance and requirements for training are different for enterprise and consumer which invalidates a 1:1 comparison of intuitiveness and cognitive load. And finally, users with significant skills with complex systems will resist change due to the cognitive load a change will involve: as Bloomberg discovered The more painful the UI is, the more satisfied these users are.
Even if the bla-bla science-science of the paragraph above makes your eyes glaze over, one thing that has to get your attention is money. Marc Englund from Vaadin looked at the money angle of UI development at the GWT.create conference this January. You can watch his presentation here.
When mainframe users send me applications to analyze, it’s typical to find they contain many hundreds of screens. These screens tend to be complex and each one has many fields. Despite being complex, these screens are cheap to make, and the developer organizations that maintain them do not have UI or UX or design specialists – the business and the software developers just get the job done with simple WYSIWYG tooling.
According to Englund and confirmed by my customers, WYSIWYG tooling is essential to making this enterprise-grade complexity possible and making it cheap. The key is cheap, and seen how companies seem to favor cost cutting initiatives whenever they can find it, scenarios where they would pursue more expensive alternatives are hard to imagine.
While I’m on the topic of WYSIWYG, are you wondering when I’m going to mention Web Forms? Oh yea, and by the way Visual Studio 2015 came out this July. The tool contains a preview of ASP.NET 5, the complete makeover of the ASP.NET line. Web Forms, the last WYSIWYG technology from a major platform that supports web development, will no longer be supported following this version.
So as we realize that the key to successful large, complex enterprise applications rests with the ability to develop many user interfaces at a cheap cost, we remember that the browser is a useful platform for enterprises, and we realize that the death of Web Forms and its close integration inside ASP.NET means that a gradual reengineering of large enterprise apps to consumer-grade UX is essentially being cut off, we have to be aware of a huge problem in the making.
The state of the art has never stopped moving away from mainframe technologies but now it seems we’ve completely lost interest in these huge enterprise applications. Developing and maintaining enterprise applications with millions of lines of code and hundreds of screens may have become a feat of engineering that (like our ability to put a man on the moon) belongs in history books, with new entrants to the software developer ecosystem unable to contemplate it.
Is the peak of consumer IT upon us? Perhaps. Enterprise UX is clearly buying in to the myth that organizations have the time and resources not only to rehost large mainframe applications, not only to web-enable and cloud enable them, but to all-out upgrade them to consumer-grade experiences. While most companies have a hard time even achieving the first point, this myth can only serve to complicate modernization planning. Meanwhile, the task of mainframe application web-enablement and incremental modernization has only become more challenging, as has the task of making complex UIs for enterprise users.