An object-oriented framework to UX design

Managing complexity in Color's supply chain ordering tool


Since the heat of the pandemic, Color had rapidly expanded to four different areas of healthcare - precision care, essential care, infectious disease, and behavioral health. With this expansion came an incredible amount of supply chain complexity. In the effort to streamline and simplify, I took an object-oriented approach to designing an integrated ordering service for our internal team.

Project details

Time: Jan 2023
I worked closely with a product manager and engineer, who were both incredibly thoughtful and collaborative.

My contributions

1. Managing complexity with object-oriented mapping
2. Wireframes with consistent logic and organization
3. High fidelity mocks based on Color’s design system

Handfuls of partners, dozens of work streams, thousands of patients

Because of Color’s rapid business expansion, our supply chain team was inundated with dozens of work streams across multiple product lines. The process required a heavy amount of expert knowledge, and the cost of user error was high.

In order to streamline our supply chain operations, I took on the project of designing an ordering tool for the supply chain team. This tool needed to integrate 4 product lines and 12 work streams, accommodating for multiple vendors, dozens of kit types, and a myriad of delivery methods.

Shapeshifting objects

Because the processes were so complex, every team had a different term for the same concepts. If I designed without seeking clarification, I would end up with what Sophie Prater, a chief evangelist of object oriented UX, calls shapeshifting objects, or components that change their shape and name from one screen to the next.

Object mapping to clarify key terms and relationships

To avoid shapeshifting objects, I did an object mapping exercise with four key steps:

1. Identify objects: I outlined which objects would be relevant to the design - who are the key people? What things are these people interacting with? What information does each person and thing carry?

2. Outline calls to action: I also identified actions users can take for each object. Our supply chain team wants to place and manage orders, among other things.

3. Map relationships:  I related these objects to each other. Do all orders belong to only one product line and program? Can an order include multiple items? Does each item have multiple vendors.

4. Rank by importance: Finally, I ranked all of the nested sticky notes by order of importance. If a supply chain user were to interact with this object, what information is most relevant for the task at hand?

Wireframing with consistency

Objects that exist across different screens should remain consistent. I built the scaffolding for key screens based on my object map, making sure each screen contained the same logic and ranking.

Building high fidelity designs with confident logic

With an organized architecture, building the hi-fi mocks were straightforward. I didn’t have to get inspiration from generic designs. I knew what to build and where. This makes a better design for two reasons:

1. Engineers program with the same object-oriented logic. When engineers implement the ordering tool, they can easily map the designs to backend data structures.

2. Users will make fewer errors. I proactively built in guardrails against common errors so that the supply chain team could rely on the tool for quality assurance.

Wrapping up


  • I found the object-oriented mindset so helpful for organizing complexity that I shared this process with the rest of the design team. In subsequent team meetings and design crits, I advocated for this process to teammates on similarly complex projects.


  • Designers shouldn't just make pretty screens. We need to manage complexity from the very beginning.
My first stab at designing this ordering tool looked good but lacked structure and organization. I had to recalibrate, go back to the drawing board, and manage the complexity I had been avoiding. It was 100% worth it!
  • Keep reading and learning. Stay inspired.

    I found out about Sophie Prater’s OOUX method through a colleague of mine, who is always reading new books and experimenting with new design ideas. Taking a step aside to learn this method allowed me to move forward with a better strategy and lots of excitement. I’m inspired to keep exploring new ideas and never stop learning.

Other Projects