There will always be multiple applications that do the same exact thing, and all them will tout themselves as being the best. As such, the challenge in application development is no longer just creating software that has all the necessary features and functionality, but one that also has a strong user experience.
Ideally, customers should be able to execute complex use cases without feeling like they’re pulling teeth. After all, the purpose of an application is to improve a process. If the user feels overwhelmed by clunky interfaces and unpredictable performance, that purpose is defeated. In the past decade or so, this mindset has really settled in. Today, the software that breaks from the pack will have a strong user experience. That said, many organizations have only just gotten their feet wet in scaling agile methodologies.
“Just when you were starting to get comfortable with the speed and demands of modern application development, get ready for another shake up,” TechTarget wrote. “It’s all about the user now.”
Let’s look at how agile teams can create a process that puts the user first:
Refine your agile processes
The reason that many organizations fail to focus on user experience, according to vice president of Nielsen Norman group, Hoa Loranger, is that they’re spending more time than they should on agile processes. Loranger noted that this could be the result of a lack of company-wide support for agile processes and a lack of the necessary resources. When done correctly, agile should really be resulting in better deliverables in significantly less time than it would have taken under waterfall testing methodologies.
However, if processes are not optimized for agile, agile won’t work. And when agile doesn’t work, teams will all too often neglect user research as a way to adjust to time constraints. In doing so, they abandon their efforts to create an intuitive, memorable user experience, and this can be extremely problematic in competitive markets.
When it comes to agile, return on investment can only be maximized if a culture of cooperation and collaboration is put in place. It’s not like some team members can be of the agile mindset while others are not. Organizations need to go all the way.
According to TechBeacon contributor Christopher Null, one of the biggest mistakes that companies make as they transition to DevOps is that they take a hybrid approach in which some old workflow structures are maintained. This same logic applies to organizations that are going agile. While it’s possible for one company to be more agile than other (i.e. through a continuous delivery cycle) it’s not really possible to be “sort of” agile.
It’s therefore vital that organizations optimize all of their processes for agile. QA management, for instance, must have a way to automate repetitive test cases in order to focus on more hands-on work, not the least of which is vetting and enhancing the user experience. Likewise, collaboration must be streamlined, so that developers can complete adjustments the same day that defects are identified. This takes an effective combination of collaborative culture and the implementation of a QA tool that can accommodate such functions.
UX comes first – literally
It’s somewhat ironic that the UX often gets left behind considering that it should prelude the sprint, according to Loranger.
“UX designers must plan activities before the sprint occurs, which means being proactive and testing assumptions and tackling designs ahead of the rest of the team,” Loranger wrote. “They conduct ‘show-and-tell’ activities ahead of sprints to introduce concepts to users and team members so that, when development is ready to begin, the team has the designs that they need.”
It’s important to understand that UX features must be envisioned, conceptualized and mapped out. Furthermore, the mockups that the design team comes up with should be based on user research. With this information at their disposal, developers will have a firmer grasp of how the software will ultimately behave. As new iterations are completed and user acceptance testing is executed, there should ideally be as few surprises as possible, and while some tweaks will most likely be necessary based on user feedback, there shouldn’t be too many sweeping design changes.
At the end of the day, UX is really what will distinguish your application from the myriad other programs that have been designed to do the exact same thing. Creating strong UX is a team effort, and one that requires constant communication. If an agile framework is functioning correctly, finding the time for UX, and more importantly, having the resources for streamlined collaboration, should be easy enough. Remember, agile development is really about responsiveness. Traditionally siloed functions – development, testing, design, etc. – can no longer happen in separate vacuums. They need to be executed in tandem with one another. When they do, the result is a strong user experience.
Carving out time and space for UX is the key to its incorporation in an agile environment.