All of us love stories. It is directly connected with the structure of our brain; research shows that we learn best by listening to stories. Thanks to them, we effectively acquire knowledge, pass on information, joke, or speak about our emotions.
One of the aspects of testing is taking on the role of the user or system and interpreting one’s needs. In RPG games, where players take on the roles of characters, everyone creates their own character at the very beginning of the game. It is described by a set of characteristics and skills, equipment, history, and origin. Creating a character is necessary to play an RPG.
I noticed that a similar process of creating a persona is used in Design Thinking – a tool used to prototype new products or services. And it is testing combined with storytelling in RPG games that this article will be about.
Persona – who is this?
A persona is also known as a hero or a character that we create to represent an idea, concept, or research problems. In the RPG world, it will be a character played by the player. Every good story includes a hero we identify with. Using a persona that is a representation of the person who will be using the system will aid you in understanding the user’s needs, behaviors and goals.
By using it, we are able to better understand how a user uses the application differently and what is most important to them. What is more, it allows us to arrange business objectives for the use of end-to-end tests.
In Design Thinking, a persona is used at the beginning of the process, during the phase of researching customer’s needs. This is when we create it, based on such data as:
- origin,
- finances,
- habits.
It is a person or a group of people with certain needs, limitations and characteristics. This gives us an idea of who the product or service is made for.
Also, this tool can be used in teaching to present certain concepts or aggregate data.
A well-designed character in a novel or an RGP has a clear goal in front of them, just as in testing or software design. We can assign objectives to each of the main business processes that we will later present as personas. For example, the goal of an airplane pilot is to safely fly the plane with passengers from one airport to another, and the goal of a bank employee is to correctly process a loan application.
Not only will a persona help us determine what is important in that case, but it will also help us to better understand customer’s needs, e.g., for some airlines, the most important thing will be savings, whereas for others, it will be comfort of travel.
How to create a persona?
We start by collecting information about our user. I encourage you to contact your end customer and, if possible, ask for a common session during which we get to know how they use the system under tests. Apart from that, we can use specifications, user stories and bugs reported by the customer.
Then, we distinguish the most important characteristics and objectives of users on the basis of previously gathered data. The airline employee that is planning a route for the plane will need up-to-date aeronautical data, such as weather, open/closed airspaces, etc. A bank employee will need information confirming creditworthiness and will take into account white and black lists of users.
Character sheet
Every persona should have:
- Name and picture: this is an important step that we can perform at the end when we already know who we are dealing with. Using AI, it is possible to generate any picture. This step is crucial because it will be easier for us to identify ourselves with the needs of a particular character and identify a proper use case.
- Description (gender, age, interests): it is important for our persona to be flesh and blood. It can be into old hovercrafts, collecting models of Japanese robots, or listening to Malaysian electronic music. The more vivid the description, the better.
- Challenges and problems: here we will describe that, e.g., our persona almost never or rarely uses computers (more attention to usability tests and all kinds of prompts), that they do their job very quickly and inaccurately (all facilities connected with shortcuts and speed of operation will be important), or maybe they are focused on acquiring sensitive data (in such a situation, we take safety tests and attacks into account).
- Needs and objectives: from the point of view of test execution, the most important are the characteristics of a persona. Every business objective should have a persona assigned as well as needs realized by the end user. It allows connecting the customer’s requirements and tests and understanding better what the priority of our end user is.
Creating a persona
When we already know what is important, we can create a persona:
- We give a name to our character. It can be a nickname or the main trait of our persona, e.g., Mr. Hurry – if the user’s goal is to get the result as quickly as possible.
- We add a picture. This is an important step that aims to help us identify with a created character.
- Then, we define the most important characteristics and objectives that will be relevant to our tests. For example, if the fast operation of the application is important from the point of view of our customer, we will focus on all the workflow enhancements: keyboard shortcuts and the ability to use the ready-made templates. For others, the most important aspect will be support in analyzing the results provided by the system. In such a situation, we will focus on creating additional notes and calling several instances of the application to make a comparison.
- We bring a persona to life. We write test cases and choose the existing ones that meet the goals listed above. Identified test scenarios should be arranged in such a way as to create a usage scenario. A good practice is to add a couple of negative scenarios that will represent the daily work of our user. The persona’s traits will also be a hint to the requirements of the test environment.
Each of the main business processes should have a separate persona created. We can link the users’ main goals to the requirements and create a coverage map.
Together with software development, our personas will develop as well, and their goals may change.
The use of persona during customer testing, or “To go on a trip, you need to assemble a team”
When our personas are ready, we may start planning and performing tests. Each of the prepared characters has their own needs and goals to be achieved, which we can combine with test scenarios or exploratory test sheets.
Just like in RPG games, we prepare a usage scenario – we can even prepare a customer office simulation with business processes reflected, e.g., in a production management system, we can simulate a shipping day. By testing a system for flight route planning, we can close various airports due to volcano explosions or the landing of an unknown fleet of flying whales. In a banking system, we can carry out full customer service, including an attempt to buy uranium for a backyard reactor by a customer.
Using personas and other RGP game mechanisms such as the character’s development as another iteration of using personas or applying investigative methods to report defects helps not only in structuring the testing process according to the customer’s needs, but it can also have a positive influence on the tester’s motivation and their better understanding of the product.
Pros and cons of the approach
To tell a good story, we need a protagonist. At the beginning of each play, all the dramatis personae are described, so we know who is who. At the beginning of the novel, we get to know its characters. In testing, we would like to understand to whom the tested system will be delivered.
The use of personas may facilitate, firstly, the understanding of the system, its architecture and dependencies, and secondly, the execution of additional tests that can contribute to increasing customer satisfaction. The problem with introducing such a tool can be the lack of information about the customer and their preferences, as well as the time needed to analyze user needs. It can also be difficult to convince the management to accept this style of work, which some people associate too much with fun.
Summary
To sum up, I would like to make a reference to my experience. Introducing personas to the testing process helped identify customer requirements. The basis for a better understanding of the customer was a visit to their office and mapping their business process. We recognized the most important processes, and in such a way, we created customer end-to-end tests.
With the customer’s needs in mind, business analysist were able to better construct functional and non-functional requirements. Introducing the presented approach may be a key factor not only for testers, but also for analysts and developers.
Leave a comment