On 19 November, 2015 I have been invited to represent Infragistics at the Innovations in Software Technologies and Automation (ISTA) conference being held in Sofia, Bulgaria. I get to share the stage with some excellent local and international speakers, including Infragistics’ own Lucia Amado, who will be presenting a workshop titled, “Visual Design for Non-Designers”.
My presentation, “Design, Usability and Complex Systems”, centers on the UX design process and how incorporating it into traditional software development processes ensures both useful and usable applications. In particular, I describe the nature of technology evolution and the role of UX.
All technology begins by meeting a particular set of user needs. That functionality, however non-intuitive or difficult to use, is adopted because it’s better than what previously existed (or didn’t exist). Think about early automobiles. They were difficult to drive, unreliable and difficult to maintain – but they were better than horses (at least in certain key aspects). As users’ basic needs were met, the design of automobiles evolved to encompass technical reliability but more importantly, secondary user needs like heated seats, large-display GPS systems and trunk space sufficient to fit 2 golf bags.
Software, business applications in particular, has evolved very little. It remains difficult to use, complicated, and frustrating despite its independence from the restrictions of the physical world. Why has it been allowed to stagnate? Why are we, as daily users of poorly designed software, ok with this? The reason, I argue, is because software has been granted a “special” status. We believe that arcane and difficult interfaces are simply as good as they be. That the rules of evolution don’t apply (or that the evolutionary process has run its course).
The sad truth is, that when faced with complex systems, people internalize their difficulties, believing, to paraphrase Shakespeare, the fault lies not within our applications but within ourselves. And we creators of software share the blame. Who hasn’t worked on a new release whose goal was simply to add more functionality without considering the overall impact on people?
The Role of UX
The role of UX, therefore, becomes one of showing people – users and developers alike - a better way. Within existing software development processes, UX works to discover not only what users want but also what they need and to then coordinate these “requirements” with business requirements and technological constraints. Within the UX Design process software evolves, not simply into an ever-increasing list of features and functions, but into applications that improve peoples’ lives in ways they could not have requested.