Empathising, Defining, Ideating, Prototyping, Testing, Iterating.

Building from scratch a software web application to control the industrial waste water.

*Note: Due to a NDA (Non Disclosure Agreement), I am not allowed to show final designs and the images of this case study have been treated for privacy reasons.

artistic photo with the texture of water
image of user persona's cards


Each industry is allowed by law to discharge a certain amount of toxic waste to the waste water system.

This activity is strictly controlled by certain public organisations to ensure that the toxins released are within the legal limits, and in case of infraction, to be able to track down the offenders.

This project's goal is to design and develop a web application (software) that helps the workers of these organisations accomplish their goals and tasks as easily and intuitively as possible.

Roles and responsibilities

I worked in this project with the Project Manager, with the in-house Waste Water Specialists, the Development team and my Product Designer colleague.

I was in charge of preparing and facilitating several workshops with the end users.

Working with my teammate to analyse the data, extract insights, create diagrams, wireflows, low fidelity and high fidelity wireframes, conducting user tests and developing final designs, ensuring the technical viability and validating the final results with the development team.

working with water samples in a lab

Scope and constraints

The company does not have a high level of UX maturity so my colleague and I would show and defend the value of the work previous to final designs/solutions (evangelizing).

The data’s level of complexity, as neither me nor my teammate come from a science background, was challenging, but thanks to our curious nature, we really enjoyed the learning process.


Getting to know the users / Empathising

For this product, there are a few different types of end users.

In one hand, there is the administration worker, responsible of the waste control, who’s mission is to control a whole area, in most cases a town, city, or a few of them.

In the other hand, there are the workers from the waste water treatment plant, who need to make sure that the water leaves the plant within the legal quality condition. Therefore, they do benefit from this software as it can warn them of any abnormal activity before the waste reaches the plant.

engineer working on computer
table with data about the users

How did we get this information?

  1. The project manager and other stakeholders inform the UX team about the project.
  2. Conducting desk research, collecting what has already been decided and what information is already there and interviewing the stakeholders, we obtain information about who the users are.
  3. We request access to them, making sure that they represent every type of the product’s end user.
  4. We prepare and conduct interviews with these users.

Understanding users and their needs / Defining

With the data collected in the previous step, and conducting several interviews with users as their processes are very complex, we get to know who the users are, what are their goals and needs, and what are their day to day tasks.

Developing task flows, to discover what they need to do, and how they do it now. Discovering what they cannot do yet and what value can we offer them. We get then to analyse and understand the problem.

After this, we, together with the Project Manager, define the requirements and priorisation of the different areas of the product.

screenshot of workshop with users
data extracted from research
data extracted from research

Wireframing / Ideating

We will work on low fidelity wireframes, creating wireflows, to validate if they satisfy the agreed requirements, to work then in higher fidelity wireframes.

data extracted from research
table with data about the users

Working on the solution / Prototyping

We create prototypes based on the validated wireframes, to test them with the end users and validate them with the stakeholders to make sure that they are in line with the business goals as well as with the user's needs.

Working on the solution / Testing

The product designer and I would define a task for the user to complete, and ask them to think out loud while they perform it. This way, we can find out what struggles or difficulties they find.

We would take notes with our observations and discuss afterwards. Making decisions about iterations in the design in order to improve it.

table with data about the users
table with data about the users

Final designs (considering that iterations will be made in the future)

Is only now when we create the final designs, making use of our design system, and adding components when necessary.

We create user stories adding images, videos, and/or flows, to hand to the development team.

We work with them to make sure that the final results follow the design and to help with any question or problem they may have.


Because of the complexity of the data, we had to spend a lot of time to understand the processes, and we didn't question enough certain decisions made during the process.

I have learned that the complexity of the data is something to consider when estimating the time of a project's research.