designing for complexity
Balancing roles, actions, and changing requirements
The configuration workflows quickly became one of the most complex parts of the project. Different users had different permissions and actions, while new development requirements continued to change how earlier interactions needed to work.
Rather than designing each request in isolation, I looked at the full workflow to understand which steps were necessary, which could be combined, and where different users needed different options. This helped me streamline interactions while keeping the flexibility required by the development team.
The Edit Configuration flow required the most iteration. I initially designed the flow around the understanding that developers could update, confirm, validate, and submit mappings. A later clarification from the development team introduced two distinct roles with different permissions: developers could update and confirm mappings, but a product owner needed to validate them before the developer could submit the finalized mappings.
This changed more than the sequence of actions. I also had to rethink the interface views, permissions, and editability for each role. I designed and presented the Edit Configuration experience from both perspectives to demonstrate how the interface should change based on the user's role and where the configuration was in the workflow.
This process strengthened my systems thinking and ability to translate evolving technical requirements into clear, role-based interactions without losing sight of the overall user flow.