Best Practices for Highly Successful Development Teams

I just returned from the highly informative (and fun) User Interface Conference. At the conference, I taught the full-day seminar, Product Usability: Survival Techniques, sharing the results of years of research examining how successful development teams incorporate usability practices into their process. As part of the day, I share several best practices including:

1. Usability test early and often

One of the best ways to prevent launching unusable products is to identify any issues early on in the development process when it’s still simple to make design changes. Yet, many struggling development teams save usability testing for the final stages right before a project launch.

One of the best techniques for getting early feedback on a design is paper prototyping. Using common office supplies, development teams can build a working prototype of a design in a matter of days. I recommend teams use this technique in the first few weeks of development. It’s the simplest method for gathering information about how users interact with a design. Teams identify what elements of the design fail users and redesign the interface quickly.

2. Involve all team members in the development process

One of the biggest causes of usability problems is when one member of the development team fails to share all of the critical information they have about the product or users. Yet, all too often, organizations think of the development team as just the developers or those responsible for the coding of a product.

The most effective teams have a holistic view of the development team, focusing on the specific information each member brings to the table. Each member takes an active role in the design process and everyone has an opportunity to collaborate with each other.

3. View users as an important member of the development team

Design teams that are knowledgeable about their users’ needs and goals, are more likely to produce usable, effective, and pleasing user experiences. The excellent development teams look to their users as partners and consider them to be an indispensable part of the development team.

4. Get buy-in from stakeholders

The best way to get people to see the benefits of testing is to have them observe a user interacting with a design. On every one of my projects, I suggest that stakeholders sit and observe at least one usability test. This will give team members the opportunity to observe first-hand the information gathered from tests.

5. Reduce implementation time

Every prototype goes through the same four stages: Plan, Implement, Measure, and Learn.

In the Plan stage, teams look at their products’ areas of highest risk and identify what information they need to make key design decisions. During the Implement stage, the team builds just enough of the product so they have something to test. In the Measure stage, the team collects data that will help them make informed design decisions, with tools such as usability testing. In the Learn stage, the team responds to what they’ve observed by adjusting the interface, functionality, or schedule for the product.

When I ask designers what stage they spend the bulk of their time in when launching a product, the majority of designers answer, the Implementation Stage. However, teams that launch the most usable products on schedule and on budget spend the bulk of their time in the Measure and Learn stage.

The key to a successful process is for development teams to iterate as much as possible going through the stages very quickly, ideally in a matter of days rather than weeks or months. By reducing implementation time, development teams can go through more iterative cycles and discover key information earlier in the project.