Case Study 2023
The client had an existing software solution used to monitor and report on their physical product, however they identified that their current solution lacked the functionality required to land sales, and had a poor user experience.
The task we were hired to do was two fold:
- Understand the core user jobs, and ensure that critical functionality was implemented.
- Create a smooth, enjoyable user experience that empowers users.
The outcome we worked towards was giving the client a software solution to sell alongside their physical product, that included all the functionality their clients need. The client already had a sales milestone set, so we worked to a fixed deadlines and scaled the team in order to achieve this for the client.
Initially the team included only myself, a Product Manager, and the Lead Developer. This allowed us to operate as a Product Trio, and ensured we prioritised the work correctly, and focused on building a product that was feasible, usable, and viable.
We later extended the team to include additional developers, after an initial discovery phase had been completed and we understood the build requirements.
My responsibilities on this project included:
- User research
- Building out a design system
Working closely with the client, we defined a process we wanted to follow in order to achieve the desired outcome by the deadline:
- Initial discovery: Using the concepts included in a typical Design Sprint, we adjusted the formula to fit our needs. We created a map, and performed an ‘ask the experts’ exercise. This allowed us to start understanding the user flows, which allowed us to abstract them into the core Jobs To Be Done (JTBD), however since the client has yet to sell, we simply adjusted the JTBD framework to skip sections such as customer interviews, and instead the client provided us with their assumptions.
- Prioritisation workshop: Internally, we conducted a story mapping exercise using all the information we had gathered from the client. During this step, we reduced the scope and defined the MVP, prioritising a working MVP that covered all the core JTBD for the target users over trying to build too many features.We then presented this back to the client to ensure we were all aligned on priorities for the deadline.
- Low fidelity wireframes and design system: Next we worked to define the content for the core flows, and started to create multiple lo-fi iterations. During this design exploration, we worked in parallel to define a design system that aligned with the clients branding. This meant as we explored different layouts, we were also ensuring that they aligned with the look and feel of the client's brand. Building out the design system also meant that moving forward we would have a collection of components signed off by the client that would increase the speed of the next rounds of design iteration.
- High fidelity designs and prototypes: Once we had a layout defined and a design system signed off, we built out the final high fidelity designs using the design system we’d already built. During this step we were able to user test with the client and their team, and make final tweaks to the design pre-development.
- Handoff to development: While as a team, we aim to keep the product trio making decisions, there was still a handover from design to development to clarify any nuances or questions around the user experience. Throughout development, we also do regular check-ins with design and developers to ensure that we all stay aligned and address any usability or functionality questions that arise.
We were able to deliver a MVP to the client that aligned with their brand vision, however throughout the process we had to reprioritise and reduce the scope that the client originally wanted in order to deliver a software solution that provided end to end functionality. The process involved a lot of research in order to focus on building the right thing, at the right time – essential in the startup space. Throughout the whole process however, it reinforced some core product beliefs of mine:
- There’s no such thing as over-communicating
- Always be an advocate for good UX and accessibility
- Adapt methodologies to the situation