Many of the problems that encumber enterprise software can be prevented by practicing human-centered design: a method of development that is dedicated to researching the requirements of business and technology together with the needs of the users. This is similar to the process that guides the construction of our homes and offices.
Architects who specialize in commercial buildings are expected to organize the interior and exterior spaces of their buildings in logical ways and to observe other conventions that will enhance the tenants’ experience of occupying these spaces. Long before they begin to write specifications, they meet with their clients to define their needs and learn about their preferences.
The process of designing a residential building is more personal, but whether a building is commercial or residential, an architect is responsible for gathering very specific information about the client’s wants and needs, and designing physical forms that satisfy these needs. To accomplish this, architects make copious drawings to illustrate and document the plans, validate the plans through systematic review by the client, and collaborate with engineers to provide the contractor, the suppliers, and all the craftspeople who execute the project with precise specifications and blueprints that leave nothing to the imagination.
The best enterprise software is built through human-centered design, a collaborative process that parallels the architectural process—both in its methods and in its division of responsibilities. The most effective development teams include not only the client (stakeholders and subject-matter experts from the business side) and the builder (software developers), but also designers who can interpret, balance, and communicate to technologists both the business requirements and the needs of the people who will use the product.
The designer’s job is to find out what the client wants, to identify what the client genuinely needs, and to design the physical form of the product—and in doing so, to also design the experience of using it. Accomplishing this requires close communication among business, design, and technology, with visual prototypes and frequent reviews.
In a perfect world, during the design phase of enterprise software development the client will be shown prototypes for evaluation and testing at regular intervals. That way adjustments can be made to match the technical performance of the software to the work processes of the company and the needs of the people who use it.
In the real world, deadline pressures compress the review process and, despite the best intentions of stakeholders, life gets in the way. Travel schedules, sales conferences, and other priorities intervene. Even worse, the development process may be organized in a way that excludes some of the people who need to be at the table.
The reality is that most enterprise software is developed without designers or their methods, by business analysts and programmers who inappropriately assume the role and responsibilities of designers. Those most likely to be left out of the process of developing the software are in fact the people who know how to design it and those who will use it.
The risks of this oversight can be substantial — low adoption rates, additional training and support, decreased productivity, reduced job satisfaction and more — and can be costly to fix after the software has been rolled out across the business.
This blog post is part of periodic series that shares insights from Electronic Ink CEO Harold Hambrose’s best-selling business book, A Wrench in the System: What’s Sabotaging Your Business Software and How You Can Release the Power to Innovate.