This is the first of an in-depth, two-part series on Rangle's project design discovery process.
Some Historical Context and Constraints
Beginning a new project and bringing clients’ ideas to life is exciting for us at Rangle. We practice Scrum to do product development for a wide variety of clients. As a result, we understand the importance of quickly getting up to speed, to start projects well-informed and focused on the right priorities.
Rangle values a measured sense of urgency and timeboxes sprint 0 to a maximum of one week. That doesn’t leave much time to get things set up to start development. With that constraint in mind, we embarked on the challenge of creating a discovery process that consistently and surgically defines the smallest version of the product that will most effectively progress our clients towards their goals.
Whether our clients arrive with a detailed specification or simply a concept, we wanted a process to help the team focus their preparation for delivering working software in the first few sprints. This sets up the continuous delivery of value as enhancements to that first version of the product. In turn, setting up this value-delivery system lets our clients do just-in-time planning, sprint by sprint. Focusing on what is needed for the next sprint allows for deep thought, input from the team and the latest information. It also accommodates scenarios where new information changes existing priorities.
We developed this requirements analysis process using a process design sprint (a version of Google’s Design Sprint), in order to get the full team involved in creating the process. The name ‘Clarity Canvas’ was inspired by participating in a business model canvas workshop where the group filled in the canvas together using the note and vote technique within time-boxed periods. We were so in awe of the creative synergy, level of involvement and shared ownership that took place in the session, that we decided to make use of a similar format. We run Clarity Canvas sessions to explore and refine stakeholders’ desired project outcomes. Based on those outcomes, we define the problems that the product should solve, and for whom, with all the key stakeholders in the room.
Having all the key stakeholders in the room is a crucial first step. The project team’s time is valuable and limited; by having everyone there whose contribution and approval you need to make the project successful, you’re drastically reducing the likelihood that the team will spend their time on the wrong priorities. It also helps resolve the issue of stakeholders with contradicting or competing interests. Similarly, having everyone present creates shared understanding across our delivery team, who works collaboratively as an extension of the client organization. Clarity Canvas rapidly transfers the context and the value system of the client to the Rangle team. This strengthens alignment with the client organization and makes the team more informed during product design and development.
Through many attempts and multiple iterations, we’ve figured out what essential topics to cover and how to facilitate the discussions and activities that deliver amazing results. We now have a streamlined discovery process that is class leading and optimized to get projects started off on the right foot.
Introducing the Clarity Canvas
When setting up the Clarity Canvas, it is crucial to have all the stakeholders and Scrum team members attend the session. This ensures there is a shared understanding of the direction of the project. While it is ideal that all participants attend in person at an agreed location, sometimes it may not be an option for our clients. However, we have found ways to conduct the session virtually using tools like Google Docs and Hangouts.
The session is flexible and can run for a day or more depending on if there is a need for extended discussions to flush out information for the success of the project.
The Clarity Canvas is divided into 4 sections:
- Project Goals
- Target Users
- User Journey
- Risky Assumptions
In each section, we ask a single, important question. Working with project stakeholders to arrive at clear answers, helps give the Scrum team the majority of the context they need to hit the ground running in the right direction.
In Project Goals, we aim to define what outcomes the stakeholders ultimately want to see as a result of a successful engagement.
“What are all the activities that need to happen to help the end user reach their goal?”
In doing so, we call out the main driver for the project. The stakeholders discuss the desired outcomes collaboratively to reveal any differing perspectives or competing priorities amongst them. Facilitating this section with stakeholders can also reveal any milestones that we can help the client reach (e.g. sales meetings, conference presentations, marketing screenshots, or investor pitches).
Clients affinity mapping the Goals section of Clarity Canvas
Here are some questions that can help provide a solid foundation at this stage for making product decisions going forward:
- What problems are you trying to solve with this software product?
- What outcomes do you hope this application helps you achieve during and directly after this engagement?
- What technical infrastructure exists to support this project currently, and will there be additional support?
- Overall, what’s the most critical thing you want to happen from this effort?
We facilitate a Target Users discussion where stakeholders list all the individuals or groups whose cooperation we need to make this project successful.
“Who are all the individuals or groups whose cooperation we need to make this project successful.”
For example, In the case of target users, it is extremely valuable to have someone from customer service attend the session. We identify goals and concerns for each user group as they relate to this project. The target users can be subdivided into two main groups: end users and stakeholders. If it isn’t apparent based on the end users themselves, the stakeholders should prioritize the list, in preparation for the User Journey section.
In the User Journey, we take the most important goal of the most important end user and list what needs to happen for them to achieve their most important goal.
“What are all the activities that need to happen to help the end user reach their goal?”
Along with the stakeholders and Scrum team, we repeat this for the next most important goal, and so on. The end result is a hierarchical list of goals, activities and tasks. Since all software exists to support tasks towards a goal, this defines the problem space for the project.
Identifying Risky Assumptions, throughout the Clarity Canvas, we gauge the group's level of confidence in each piece of information and put an asterisk next to anything that we need to validate with additional information later. The list of asterisks is project assumptions.
“What information recorded here that if proven inaccurate, could prevent us from reaching the ultimate goal for this project?”
Examples of common assumptions that really should be validated include:
The project goals are clear and agreed upon: if a major stakeholder isn’t present, it's possible that later in the project we may discover we have been focusing on the wrong problem or priority.
The user journey accurately reflects the mental model of the end users: if the client isn’t confident the process the software is modeling is accurate, and up to date with the expectations of the end user so that they find it intuitive.
Risky assumptions have come up when defining target users and their goals/concerns. These assumptions drive research activities and validation tasks during the project.
Right click to download a Clarity Canvas cheatsheet here:
Clarity Canvas Outcomes
Clarity Canvas produces a collection of valuable artifacts that the whole team is aware of and understands. All of which are scoped to the project goals.
- Project goal statement: A single sentence that describes the goal of the project.
- Project timeline: Important milestones it makes sense to prepare for during and right after the engagement
- Project key performance indicators (KPIs): List of factors that indicate whether the project was successful in business terms.
- Prioritization strategy: High-level approach to sequencing development to minimize risk and take opportunities
- Stakeholder lean personas: List of stakeholders who evaluate or impact the success of the project along with their goals and concerns.
- Target user lean personas: List of end users groups that the application is being developed for as well as their goals and concerns.
- Structure for delivering value and measuring: A hierarchical list of goals, activities, and tasks the application will facilitate or automate. This defines the problem space and reflects our current understanding of the problems the end users think is important for us to solve based on the project goals.
- List of assumptions: List of areas to research and sure up during the project
- List of tasks: List of gaps of information or preparation that needs to happen to get started
Together these represent the information we’ve discovered to be important to know at the start of a project to optimize the likelihood of avoiding issues during the project. The Clarity Canvas feeds into our sprint 0 preparations, product planning and delivery processes.
Rangle Flow Discovery Process Overview
We use story mapping to facilitate our product planning processes. The user journey from the Clarity Canvas helps define and identify the jobs the end user is hiring the software to do and is used as the story map backbone to guide user story writing, tasks for usability assessments and analytics events. We use the project goals, timelines and prioritization strategies to help inform how to design sequential releases, and the assumptions and tasks inform our research and quality activities.
If you want more check out the , where we explore lessons we learned in the quest for a perfect project discovery process and some of the main problems we ran into while developing the Clarity Canvas.