When it comes to software design, perhaps a plumber can help enlighten organizations a bit. As developer-advocate Mat Ryer spelled out in a recent post, a plumber looking at the all-too-complicated handiwork underneath his sink summed up the problem in a nutshell:
"They didn't keep things simple you see, they let it get complicated. Now we're spending ages trying to figure out what's going on. If it were simple, I could just glance at it and I'd know. But there's a pipe back there that goes up, along, back down, and connects to itself. I have no idea why on earth that's there but I can't take it out in case it's important."
So, in an enterprise, layer upon layer, bell upon whistle, feature upon feature, workaround upon workaround, gets bolted in and built up, resulting in spaghetti messes that require a lot of investment to clear up, if even possible.
Where does all this complexity come from? There's plenty of pressure on software developers and designers to push things out the door as fast as possible, and between requirements meetings with users, coding, integration and testing, there's precious little time to sit back and consider the ramifications on overall design. Perhaps there needs to be more thought given to what becomes important piece of the developer experience, and ultimately, the user or customer experience. Jonas Downey, a designer at Basecamp, puts it this way: perhaps it's a good idea to "move slowly and fix things."
"Our work is heavy and it's getting heavier all the time," he writes. "We obsess over every aspect of that process: the tech we use, our methodology, the way it looks, and how it performs. Unfortunately we're not nearly as obsessed with what happens after that, when people integrate our products into the real world." Software is woven into the fabric of every business, and into the lives of just about everyone on the planet, he points out.
By default, then, software developers and designers are "the first line of defense to protect people's privacy, safety, and sanity," Downey observes. "If the past 20 years of tech represent the 'Move Fast and Break Things' era, now it's time to slow down and take stock of what's broken."
The unintended complexities, the direct effects on business fortunes, the impact on peoples' lives -- this certainly is heavy stuff. For developers and designers within enterprises, it's time to rethink how software is created and delivered to end-users and customers; time for a more holistic and UX-focused approach. To that end, John Edson, a partner with LUNA, and Garen Kouyoumjian and Benedict Sheppard, both with McKinsey, have constructed a manifesto of sorts that provides a path of new design thinking for software creation, as well as other innovation activities.
Here are some of their key guiding principles on balancing the need to keep up with the frantic pace of business with nurturing a design culture:
From departmental silos to cross-functional teams. McKinsey research finds "companies with a central, siloed design department generally performed less well financially than those that let designers off the leash and distributed design experts into cross-functional product-focused teams," Edson and his co-authors state.
From narrow experts to interdisciplinary designers. "Physical, digital, and service designs are converging," the team observes. "We saw improved financial performance in those companies that broke down barriers and cross-trained designers in skills such as industrial and user-interface design."
From cubicles to garages. In a garagey, startup style organization, "there are no departments, titles, or assigned offices. Everyone is focused on making a great product that meets a customer need," Edson and his co-authors point out.
From a design stage to continuous design. "A design-led approach to product creation means that design happens throughout development, not just at the early concept phase."
From qualitative to full-spectrum research. Augment focus groups and interviews with quantitative analytics to get a complete picture of user or customer requirements, the co-authors urge.
From prototype once to prototype often. "Design-led companies begin with a prototype that answers a customer need, backed up with a business case," Edson and his team state. "This notion is core to the agile process pioneered by software companies, as is the use of minimum viable products, which gives teams the ability to quickly test and improve concepts and then test them again."
From incremental to brave. "Design-led companies are willing to put long-term brand strength ahead of short-term turnover, and they aren't shy about sharing resources and opinions with design thinkers outside their organization to strengthen their offer to customers," Edson and his co-authors state.