Designing Product for Your Users: An Approach Using UCD and Persona

Mohamad Rifqy Zulkarnaen
5 min readMay 3, 2021

In process of building a software, there are a lot of phase that developer team must take. One of the most important phase that decides whether a software will leave a great experience towards its user or not is Design phase. Therefore, we should learn what is design phase in software building. Let’s get to know with one of the commonly used method/tools, User Centered Design (UCD) and Persona.

source: uxplanet.org

Before we will dive deeper into User Centered Design and Persona, we will talk about design phase first to uncover why this phase is important in software building.

Design Phase

Design phase is one of the phase in software engineering that focused on how the product made and designed. Usually it involves the product visual and interaction that user can do in our product. We also can define any technical aspect of our software such as architecture, platform, security, class hierarchy, and programming.

The reason why design phase is important is because in this phase, we can brainstorm and visualize our ideas first instead we directly implement it. It really saves our time too, since every bad idea gets filtered at first. We also can get many feedbacks from our potential user so that our products are becoming more realistic toward user requests, which will be explained in next section.

Anyway, on this article, we will focused on user experience aspect of design. So lets get to the next part!

User Centered Design

User Centered Design (UCD) is an approach in designing a product where the designer or developer team involves user in their process. UCD focuses on fulfilling user needs and their expectation on the product that currently being developed. UCD is an iterative process, it means that the steps that defined in UCD can be repeated over time. There are some steps that defined in UCD:

  1. Establishing Requirements — A step where the team gather the requirements from the user that has been involved in the design. Usually, the team gather the requirements by doing some action such as observing and conducting a survey and interview.
  2. Designing — The design itself. In this step, the team will try to design how the product will works. The team will also try to create the product user interface and define how the information in the product can be accessed by users.
  3. Prototyping — In this step, the team will connect any result such as interaction, page, layout, etc. from previous step into a clickable mockup. The purpose of this step is to create a non-functional product that reflects the real product once its implemented.
  4. Evaluation — Last but not least step in UCD. In this step, the team will conduct some test to validate whether the prototype that has been made before in previous step meet users need and expectation. Usually, they use tools and method to do this evaluation such as Usability Test, Heuristic Evaluation, etc.
One of UCD Steps: Design and Prototyping using Figma

For example, in my current project that we took at Proyek Perangkat Lunak (PPL) course, we did utilize UCD to help us create an ideal software for our client. At first, in requirement gathering step, we met with our client to talk about what their needs and their expectation. Then, we start designing a user interface along with its interaction using Figma app for about 1 week. After that, we present our work to the client so that we get feedbacks for prototype that we designed before. Before we start our first sprint, we improve our design according from feedback we got before. Until Sprint 2, we still get feedbacks from clients about the design we improved before too!

Persona

Persona is one of tools that has been used by many designer team. We can say that persona is like a imaginary data or information about people that will become our user. Persona can help us to make decision when we designing a prototype or user interface. This is because persona tells us about our potential user preferences, behavior, goals and frustration.

Persona usually contains information such as:

  1. Basic Information — This information include name, age, occupation, sex, and location.
  2. Photo — A visual how the imaginary user looks like in real life. Usually we take photos of someone or just use stock photos to represent the user.
  3. Description — A paragraph of text that explain our user daily life and activities.
  4. Goals — Usually contains list of action that user will do in our product.
  5. Frustrations — A list of information that contains users dislike and their pain points. Any dislike and pain points that defined here can help designer team to avoid things that will make user upset.
  6. Motivations — Contains why they want to use our product. In this section, we also can define what their preferences and expectation.

To create a persona, we usually started from gathering data about our client or user itself. Some of methods or tools that we can utilize are:

  1. Conduct a research and use method such as surveys and interview to gather data.
  2. Observing our user daily behavior and activities.
  3. Making assumption based on document or our pre-knowledge about our potential users.

In my case at PPL course, we also tried to create a persona based on our client requests. We create the persona information according to their current occupation, average age, and their needs of application. We deduce motivations and frustration based on their behavior, age, and from their story when first we met. So we can say that our team create personas using observation technique and also making assumption from how the user present their story and needs.

Here is one of persona that we made before Sprint 1 starts.

One of Our Persona: BPKH Officer

Conclusion and Thoughts

From explanation above, we can say that UCD really helps the team creating better product for our users. UCD makes us think as user and position ourselves in their point of view. Based on feedback that we get from our client and users, we can make a product that realistic and met with their needs, not the ideal one. And for persona, we can also say that persona is one of the tools that helps us in UCD itself, especially in design phase. It helps us improve our current prototype and avoid things that may make our potential user upset too. Personally, we felt becoming familiar with the user and we become more open person than before. Therefore, lets start implement UCD in our software development!

Thanks for Reading!

--

--

Mohamad Rifqy Zulkarnaen

just your typical curious and storytelling loving software engineer.