Duo’s Object Oriented UX (OOUX) Design Process
The number one enemy of security is complexity. This is a value we hold true at Duo during our product development process. Yet, we know that complexity is a reality for our customers when securing their environments against ever changing threats.
As our customers’ attack surfaces have become broader and more complex with increased numbers of remote workers, cloud based tools, “bring your own” devices (BYODs), etc. — their ecosystem of security tools have become more complex. In fact, today a true zero trust security implementation requires at least a handful of tools, if not a dozen or more.
Complexity is also an inevitable part of the business at times. Companies will need to update or migrate tech stacks. New tools need to be integrated into systems. Or, as we experienced at Duo in 2018, an acquisition or merger occurs. All of these events introduce, what can feel like, insurmountable complex challenges.
For these reasons, we at Duo vigilantly look for opportunities to clarify complexity and make our product intuitive. One of the ways we do this is by ensuring a deep understanding of the problem space through a process called Object-Oriented User Experience (OOUX).
What is OOUX design?
OOUX is a process that helps our teams understand and visualize their problem space by ensuring they:
- Know the pieces they’re working with
- Know how each piece or object relates to another
- Share a detailed definition of each object or piece
Let’s suppose designing for a complex problem is like putting together a 10,000 piece jigsaw puzzle. OOUX is a set of activities that help you manage and accomplish this feat and ensure the final product matches users’ mental models. You begin a puzzle by first making sure all the pieces are out of the box and are facing right side up. The OOUX process begins by identifying the main objects in a system.
Why would you start designing a system when you don’t know what objects you’re working with?
Step 1: Identify the Main Objects
In practice, this is a review of previous UX research, product requirements, and existing systems. In other words, what are the recurring nouns? Keep seeing users, BYODs, and endpoints mentioned? Then those likely are your main objects.
Once the team has identified the main objects in play, it’s time to make sure everyone has the same understanding of each object and how the objects relate to each other.
Step 2: How Do the Objects Relate to Each Other?
Can each user have more than one endpoint? Can an endpoint be associated with more than one user? These are important questions to answer.
Without OOUX, it is difficult to have this kind of abstract conversation about how the system works. Usually, teams look at wireframes that try to illustrate these relationships, but they end up focusing on button placement or placeholder language. This process of defining the relationships between objects forms the intuitive foundation for our designs. Inevitably the discussion around relationships leads to the last key piece of our OOUX process: object definition.
Step 3: Object Definition
This final step is straight forward. Document the key pieces of information or metadata that make up each object, including other objects that may be nested underneath.This final step ensures that everyone on the team, designers, product managers, and engineers are actually aligned at all levels. And despite this, it’s easy to skip this last step because team members “feel” in sync with each other.
The value of this step lies in the act of documentation. It forces our teams to take all of the knowledge and details that are in everyone’s (especially subject matter experts) minds and put it down on paper. In this way, it democratizes the system’s information so that all participants can contribute to the process and design, regardless of previous knowledge. We like to think of it as an equalizer for all roles working on a project.
There is a lot of more to the process of OOUX, but these first steps are critical when it comes to dissecting a complex system and beginning any project. By investing this time up front, we mitigate complexity in our solutions, which in turns allows our customers to easily secure their complex environments.
If solving problems like this interests you, we're hiring! You’ll get to collaborating with inspiring teammates, and create and support products that make a difference. Check out our open positions!
*Illustrations provided by Kristen Kite, a Senior Product Design at Duo Security.
Try Duo For Free
With our free 30-day trial and see how easy it is to get started with Duo and secure your workforce, from anywhere and on any device.