Two of the most profound trends over the past 10 years driving software innovation are Agile software development and Human centered design (often known as UX in software circles), yet these trends have often moved independent of one another, or worse, been at odds. First, let’s do a quick review of what we mean by UX and Agile:
1. UX (and the broader Human Centered Design movement) is an approach to understanding how humans experience and draw value from the interactions they have with web and mobile devices. The more advanced disciplines of UX help us better understand how to design our software in such a way that extraordinary user experiences are the norm; it is this trend that has been at the heart of Apple’s amazing run and helped it become the most valuable company in the world.
2. Agile software development — meaning software development practices that focus on speed and tight feedback loops that enable developers to respond quickly to customer feedback; this trend has fueled the rise of low-cost startups and widespread Internet entrepreneurship.
It is our belief that that these trends will grow in dominance, and thus it will be increasingly imperative for companies to do both: implement agile software development processes, while also ensuring that the user experience is tightly integrated and prioritized.
Here are some principles we’ve found worthwhile in developing business processes that allow organizations to integrate both these key trends:
Creating high quality technology products and services requires a network of highly specialized professionals; for instance, software developers, interface designers, marketers, and the growing sub-specialties within each discipline are all needed.
A sequential approach to development, in which one team does work and hands it off to another, is a route that will tend to underperform, from the perspective of agile development and UX.
Time and time again, the approach we’ve found to yield greater high quality output at a lower cost is to create structures where all specialties within the organization can deal with the task simultaneously.
Such an approach runs the risk of being more chaotic, but in our experience, the benefit derived from greater speed and more integrated communication between team members enables the creation of technology that yields a better user experience. This technology is also developed in less time, and at less expense.
In sum, letting all parts of the organization work together, rather than utilizing an assembly line approach, yields technology that is of both higher quality and lower cost. This increasingly popular philosophy is known as concurrent engineering, and is starting to be taught at the university level as well.
Related to the idea of engaging in concurrent engineering practices is the idea of working to ensure that the members of the organization are educated in the challenges and concerns of other teams; in other words, that each team member understands the big picture.
Corroborating our own experiences, research conducted by Rusul McGillan of Massey University (New Zealand) found that communication infrastructure technologies and tools are central to a company’s implementation of concurrent engineering.
Encouraging the “big picture” to drive executive decision-making, and creating a culture and training process whereby team members are trained in the jargon and methodology of other divisions within the company, can advance the concurrent engineering methods needed to create a high quality user experience in an agile fashion.
We’ve also found that having a leader who is naturally fluent in multiple disciplines — like Steve Jobs, who possessed talent in both engineering, design, and marketing — can help advance this objective, and thus is one of the most valuable assets an organization using concurrent engineering principles can ask for.
The Feedback Loop
Last but certainly not least, developing processes to create fast, high quality feedback loops can greatly assist organizations in their quest to optimize for both agility and user experience.
“What matters is having forward momentum and a tight fact-based feedback loop to help you quickly recognize and reverse any incorrect decisions,” said entrepreneur and professor Steve Blank.
We agree wholeheartedly. Feedback loops ensure the closeness to customers that user experience requires, while enabling rapid iterations consistent with agile development methodologies.
In sum, the trends of agile development and designing for user experience guide us increasingly toward concurrent organizations with a well-rounded staff and tight feedback loops — basically tight, hyper-efficient networks that cost less to operate while yielding superior technology.