Design Thinking Presentation Slides
AP Computer Science Principles
Design Thinking: Empathy and Definition
Understanding user needs before building computational solutions
Teacher: Mr. Norman Trujillo
Email: ntrujillo@csa.edu.ni
Speaker Notes: Welcome students to our session on Design Thinking. Today we are focusing on the first two critical stages: Empathy and Definition. My name is Mr. Norman Trujillo, and you can reach me at ntrujillo@csa.edu.ni. This session will establish how we understand human needs before we begin writing code or building computing innovations.
Essential Question
“How does taking the time to understand the real experiences of people change the way a problem is defined, and why does that shift matter before any solution is proposed?”
Speaker Notes: This is our guiding question. Often in computer science, we want to jump straight into writing code or creating a program. However, if we do not understand the people who will use our program, we risk solving the wrong problem. Today we will explore how empathy changes our entire approach to problem-solving.
Learning Objectives
-
- Explain the purpose of the Empathize and Define stages in the design thinking process and describe how insights lead to clearer problem statements.
-
- Gather simple observations about a user’s experience and turn those insights into a concise, human-centered problem definition.
-
- Value the practice of understanding people before inventing solutions, recognizing that a well-framed problem produces more useful results.
Speaker Notes: By the end of this session, you will be able to explain the core purposes of these first two stages of design thinking. You will learn how to turn raw observations into actionable problem definitions. Most importantly, you will appreciate why understanding users is a prerequisite for creating successful computing innovations.
What Is Design Thinking?
Design thinking is a human-centered approach to innovation. It places the experiences, needs, and challenges of real people at the very center of the problem-solving process.
Rather than starting with technology or ready-made code, design thinking demands that we explore the human context before attempting to construct a technical architecture.
Speaker Notes: Design thinking is not about starting with technology or ready-made code. It starts with people. It is a structured methodology used by software engineers, product designers, and innovators worldwide to ensure that the systems we build actually solve genuine human needs.
The Five Stages
1. Empathize
Understand the experiences and frustrations of your users.
2. Define
Formulate a clear, user-focused problem statement.
3. Ideate
Brainstorm creative, expansive solution concepts.
4. Prototype
Build quick, low-cost representations of ideas.
5. Test
Gather authentic feedback from actual users.
Speaker Notes: Here is the complete roadmap of design thinking. Although we list them sequentially, the process is iterative. We frequently loop back to earlier stages as we learn more. Today, we are deep-diving into the first two stages, Empathize and Define, which form the vital foundation.
Empathy in Computer Science
In computer science, empathy means actively listening to and observing the users of our software.
It prevents developers from building complex features based on personal assumptions. By practicing empathy, we discover the real limitations, contexts, and digital access levels of our diverse users.
Speaker Notes: Why does a computer scientist need empathy? Because we do not write code for ourselves. We write code to solve problems for diverse users. Empathy allows us to step outside our own perspective and understand the struggles, preferences, and workflows of our target audience.
The Doctor Analogy
A professional doctor does not prescribe medicine the moment you walk into the clinic. First, they ask detailed questions, listen to symptoms, and perform an examination.
Rushing to write software code without empathy is equivalent to a doctor prescribing medicine without performing a proper diagnosis. It leads to ineffective and potentially harmful results.
Speaker Notes: Imagine walking into a doctor’s office, and before you say a single word, the doctor hands you a prescription. That would be dangerous and highly unprofessional. In the same way, we must examine and understand our users’ pain points before we prescribe a software solution.
The Goal of Empathize
The primary objective is to uncover the genuine, often unspoken needs of the individuals who will interact with our systems.
We achieve this by gathering qualitative data through direct observation, engaging interviews, and putting aside our personal biases.
Speaker Notes: In the Empathize stage, our goal is not to judge or solve. Our goal is to observe and listen. We want to discover what users are experiencing, where they get frustrated, and what they actually need, even if they cannot articulate those needs clearly themselves.
Direct Observation
Observation requires watching users interact with existing systems or navigate physical processes in their natural environment.
- • Pay close attention to physical movements, hesitations, and errors.
- • Identify workarounds, which are manual shortcuts users create to bypass broken systems.
Speaker Notes: Our first major empathy method is observation. When we watch users in their natural environment, we see where they struggle. For example, if a user has to write information on a sticky note and paste it on their screen, that workaround signals a gap in the current software.
Open-Ended Interviews
Interviews allow us to hear user stories directly. To gather rich insights, we must ask open-ended questions that prompt deeper discussion.
- • Avoid simple yes or no questions.
- • Formulate questions starting with “why”, “how”, or “tell me about”.
- • Allow the user to speak without interrupting or offering immediate suggestions.
Speaker Notes: The second method is conducting open-ended interviews. If we ask yes/no questions, we get short, uninformative answers. Instead, asking “Tell me about a time when this app frustrated you” opens the door to detailed stories and hidden needs.
Empathy Mapping
An empathy map is a collaborative visual tool used to synthesize our raw research.
It helps developers organize raw observations into clear categories, revealing patterns and highlights that are not immediately obvious from transcripts.
Speaker Notes: To make sense of our raw notes from observations and interviews, we use an empathy map. This tool forces us to categorize our data into four quadrants. This structured approach helps us see patterns and contradictions that point to core user needs.
Four Map Quadrants
Says
Direct quotes and explicit statements made by the user during your conversations.
Does
Physical actions, steps, and visible workarounds observed in their natural process.
Thinks
Inferred beliefs, motivations, and internal monologues that the user might hold.
Feels
Emotional states, frustrations, anxieties, or joys expressed verbally or non-verbally.
Speaker Notes: Let us break down these four quadrants. “Says” contains literal words from the user. “Does” contains their physical behaviors. “Thinks” requires us to infer their mindset based on their statements. “Feels” captures their emotional state, like frustration, anxiety, or relief.
Empathy Map Solved Example: Says and Does
Scenario: Maria, a high school student, struggling with assignments on the school digital platform.
Says
“I thought I uploaded my essay, but my teacher told me it was completely missing from the grade book.”
Does
Constantly checks email inbox for upload receipts and maintains a secondary physical notepad to track homework dates.
Speaker Notes: Let us look at a solved example. Imagine a student, Maria, who struggles with the school portal. In the “Says” quadrant, we record her quote about confusion. In the “Does” quadrant, we observe her keeping a separate physical notebook because she does not trust the portal.
Empathy Map Solved Example: Thinks and Feels
Scenario: Analyzing Maria’s internal mindset and emotional responses.
Thinks
“The software interface is confusing, and I might fail my class because of a technical glitch on the server.”
Feels
Anxious about her final grade, overwhelmed by multi-step file uploads, and frustrated by a lack of instant feedback.
Speaker Notes: Continuing with Maria’s map, we infer her thoughts and feelings. She thinks the system is working against her and feels constant anxiety. These emotional insights are critical because they show us that the problem is not just technical; it is affecting her well-being.
Transitioning to Define
Empathy maps collect massive amounts of raw user statements, actions, and emotions.
We cannot begin building software features directly from isolated data points. The Define stage is where we filter, analyze, and synthesize this raw qualitative data to identify the true problem.
Speaker Notes: After gathering empathy data, we cannot simply start coding. We have a mountain of quotes, behaviors, and emotions. The Define stage is where we filter this massive amount of data to find the single, core problem that we must solve.
The Define Stage
In the Define stage, we synthesize observations to create an actionable, human-centered focus.
- • Synthesizing means combining separate details to discover deeper patterns.
- • This stage keeps the human user at the center, rather than technology limits.
Speaker Notes: In the Define stage, we synthesize. This is different from summarizing. Synthesizing is about putting the puzzle pieces together to reveal a deeper truth. Our goal is to frame the problem in a way that guides our future design decisions.
The Problem Statement
A problem statement is a clear, precise declaration of the core user challenge that must be addressed.
It serves as the development team’s guiding star. Every feature, database scheme, and interface element is built specifically to address this statement.
Speaker Notes: What is a problem statement? It is a short sentence or paragraph that declares exactly what we are trying to solve. Every programmer, designer, and project manager on the team looks at this statement to ensure their work aligns with the user’s true need.
Why Definition Matters
Skipping definition often results in engineering failures. Teams build highly complex, fast, and secure software that users never adopt because it addresses the wrong challenge.
A precise problem statement focuses developers on solving genuine difficulties rather than engineering artificial solutions based on pure assumption.
Speaker Notes: If we skip this stage, we might build a beautiful, fast, secure app that completely misses the user’s actual problem. A clear definition ensures we are solving the right problem, not just a problem we assumed existed.
Anatomy of a Problem Statement
An excellent problem statement must satisfy three essential criteria:
Human-Centered
Focuses on people and their immediate needs rather than technical elements.
Broad Scope
Provides space for creative solutions rather than forcing a single product path.
Focused Boundaries
Remains narrow enough to keep development manageable and realistic.
Speaker Notes: Let us analyze the three main traits of a high-quality problem statement. It must focus on human beings, not technology. It must be broad enough to allow us to brainstorm many different solutions, but narrow enough that we do not get overwhelmed by an infinite scope.
The Core Formula
We use a structural formula to construct clear problem statements:
[User Name / Segment] needs [Specific Core Need] because [Deep Qualitative Insight Discovered].
Using this precise structure prevents the insertion of premature technology solutions.
Speaker Notes: To make writing problem statements easier, we use a simple formula. It connects three critical elements: the user, their specific need, and the deep insight we discovered during our empathy research. Let us practice using this formula.
Understanding Insights
An insight is a deep, non-obvious realization about user behaviors and emotional motivations.
It answers the fundamental question: “Why does the user behave this way?” It exposes underlying conflicts, values, or mental strains that the user might not recognize.
Speaker Notes: What is an insight? It is not just a summary of what the user did. It is a realization of why they did it. It uncovers a deeper motivation or conflict. For example, a user checking their email ten times is a behavior; the insight is that they suffer from extreme anxiety due to a lack of system feedback.
Solved Example: Locker Dilemma
Scenario: Students are frequently tardy. We observe them struggling with mechanical lockers between periods.
Direct Observation
Students spend ninety seconds turning rotary dials, failing, clearing, and re-spinning combination locks.
User Statement
“I get so nervous about the short transition times that my hands shake and I mix up my padlock sequence.”
Speaker Notes: Let us walk through a complete, step-by-step solved example. We notice students are late because of lockers. We watch them spin dials and struggle. A student shares that nervousness makes them forget their combination. This is our raw empathy data.
Locker Dilemma Synthesis
Analyzing the raw data to extract core needs and insights.
Core Human Need
A reliable, rapid, and stress-free way to retrieve essential school materials between academic blocks.
Underlying Insight
Physical anxiety caused by rapid class transitions directly compromises a student’s cognitive memory under pressure.
Speaker Notes: Now we synthesize. The basic need is not just “a new locker lock.” The need is a stress-free way to access supplies. The key insight is that physical stress directly impairs memory. This insight changes our approach entirely.
Locker Problem Statement
Applying our structural formula to construct the finalized statement:
“Stressed students need a faster, cognitively simple method to retrieve classroom materials because high-pressure transition times impair memory recall of complex sequences.”
Notice that this statement does not prescribe digital keys, biometrics, or mechanical alterations yet. It focuses entirely on human needs and psychological constraints.
Speaker Notes: Here is our finalized, human-centered problem statement. It names the user, the core need, and the insight. Notice that it does not mention technology. It does not say “students need a fingerprint scanner.” This leaves the door open for many creative solutions during the ideation phase.
Connection to AP CSP
This design process directly supports Big Idea 1: Creative Development and Computational Thinking Practice 1: Computational Solution Design.
- • Developing software programs requires designers to clearly articulate program purpose.
- • Authentic computing innovations must be based on genuine user requirements.
- • Understanding user perspectives is key to writing documentation and analyzing program limitations.
Speaker Notes: How does this relate to AP Computer Science Principles? Big Idea 1 is all about Creative Development. In your Create Performance Task, you must design a computational solution. Understanding design thinking helps you justify your design choices and explain how your program addresses a user’s need.
User-Centered Software
Software engineering is not just about writing syntax. High-quality software is built by developers who understand who their users are and what problems they face.
By modeling human needs and frustrations, we can design software architectures, data structures, and logical algorithms that accommodate real human constraints.
Speaker Notes: Excellent programmers are not just good at writing code. They are excellent problem solvers. User-centered software design ensures that our database structures, user interfaces, and algorithms are built around human workflows, not just technical convenience.
Python User Model (Part 1)
We can write simple computer programs to store and model our user empathy data.
Let us look at a basic Python script that represents a user profile and their frustrations.
Speaker Notes: Let us connect this to coding. We can write a simple Python program to represent a user persona. Modeling user needs in code helps us keep the human perspective at the forefront of our software architecture. We will review this basic program step-by-step.
Python User Model (Part 2)
Declaring user parameters using basic variable assignments:
# Define user attributes
user_name = "Maria"
user_frustration = "confusing school portal"
unsubmitted_tasks = 4
# Output the user profile
print("User name is " + user_name)
print("Main frustration is " + user_frustration)
print("Unsubmitted tasks count is " + str(unsubmitted_tasks))
Speaker Notes: Here is a very basic Python program. We declare variables to store the user’s name, their frustration, and the count of their unsubmitted tasks. Then, we use simple print statements and string concatenation to display this user profile. This is how we begin representing human data in computer programs.
User-Centered Logic (Part 3)
We can use conditional statements to check if our user needs assistance:
# Evaluate if the user needs support
if unsubmitted_tasks > 3:
print("Warning: " + user_name + " needs immediate support!")
else:
print("User is managing tasks successfully.")
Speaker Notes: Now, let us add some simple programming logic. We use an ‘if-else’ statement to check if the number of unsubmitted tasks is greater than three. If it is, our program outputs a warning that the user needs immediate support. This basic conditional logic is the starting point for building user-centered assistive tools.
Case Study: Missing Empathy
A major digital health records database was engineered without observing medical doctors in real clinics.
The resulting software required dozens of menu navigation clicks for basic operations, which increased medical worker fatigue and resulted in medication data errors.
Speaker Notes: Let us look at a real-world case study. A major electronic health records system was built without observing doctors. Because programmers designed it based on assumptions, it required dozens of clicks just to order a single medication. This caused massive frustration, fatigue, and led to serious errors.
Case Study: Empathy Success
A ride-sharing application discovered that passengers in busy areas experienced severe anxiety identifying their designated vehicles.
Instead of developing a complex screen interface, they implemented simple features including displaying car models, exact colors, and vehicle descriptions to make immediate recognition easier.
Speaker Notes: In contrast, a major ride-sharing app used empathy mapping. They observed users pacing around streets looking anxious. They realized the core need was rapid, visual identification. By displaying the vehicle’s color and model clearly, they resolved user anxiety and improved safety.
The Iterative Nature
Design thinking is not a linear pathway.
When crafting our problem statement, we frequently discover gaps in our research. This signals that we must return to our users, conduct more observations, and refine our empathy maps.
Speaker Notes: It is important to understand that design thinking is circular and iterative. As we try to define a problem, we might realize we do not have enough data. This signals that we must go back to our users, ask more questions, and refine our empathy maps before moving forward.
Vocabulary (Part 1)
- Design Thinking: A human-centered methodology used to solve complex problems.
- Empathize: The first stage of design thinking, focused on understanding user perspectives.
- Define: The second stage, where user observations are synthesized into a problem statement.
- Insight: A deep, non-obvious understanding of user motivations or challenges.
Speaker Notes: Let us review our key vocabulary for today. These terms are essential for our upcoming assignments and exams. Design thinking is our overall process. Empathize is our first step of gathering research, Define is where we synthesize, and an insight is that deep realization of ‘why’ a user behaves a certain way.
Vocabulary (Part 2)
- Problem Statement: A concise, human-centered sentence that guides the design process.
- User-Centered: An approach that prioritizes the needs of the human user at every step.
- Synthesis: The process of combining separate observations to form a cohesive understanding.
- Workaround: A temporary, manual fix used by a user to bypass a broken or inefficient system.
Speaker Notes: Continuing our glossary, a problem statement is our guiding star. User-centered design is our core philosophy. Synthesis is the puzzle-piecing of data, and a workaround is a manual quick-fix. Understanding these terms will help you explain your performance tasks clearly.
Practical Activity
Working in pairs, you will select a familiar daily frustration (such as school cafeteria lines, study group coordination, or device charging station accessibility).
- • Share real experiences or role-play to gather empathy insights.
- • Focus on understanding the user’s emotions and physical actions.
Speaker Notes: Now, it is your turn to practice. In pairs, choose a common daily frustration from the options on the slide. You will spend time sharing your personal struggles or role-playing a scenario. Your goal is to gather raw empathy data by listing observations, quotes, and emotions.
Activity: Map Creation
Create a simple empathy map on your paper.
- • Record what your partner says, does, thinks, and feels regarding the selected frustration.
- • List at least two detailed items in each quadrant.
- • Look for contradictions (such as saying one thing but doing another).
Speaker Notes: Draw a quick four-quadrant grid on your paper. Label them Says, Does, Thinks, and Feels. Interview your partner and fill in the grid with at least two detailed items per quadrant. Pay attention if your partner says something is easy but their actions suggest they find it stressful.
Activity: Statement Draft
Using your empathy map, draft a single, clear problem statement using our formula:
[User Segment] needs [User Need] because [Insight].
Ensure it is human-centered and does not prescribe a specific technology yet.
Speaker Notes: Once your map is complete, use our core formula to write your problem statement. Ensure it is entirely human-centered. Avoid mentioning a specific technical solution like an app or website. Instead, focus entirely on the user’s human need and your deep insight.
Self-Assessment Checklist
Evaluate your draft problem statement using these questions:
- • Is the statement focused on a human user rather than a specific product or technology?
- • Does the statement clearly define a specific user need?
- • Does the statement offer a non-obvious insight into why the user struggles?
Speaker Notes: Before we share our problem statements with the class, run through this self-assessment checklist with your partner. If your statement says ‘The student needs an app,’ you have prescribed a solution, and you need to rewrite it to focus on the human need and underlying insight.
Homework Questions
Answer the following two analytical questions in writing:
- 1. Why does beginning with empathy often reveal needs that a quick brainstorm would miss, and what risks appear when the Empathize stage is skipped?
- 2. How does a well-crafted problem statement guide later decisions, and what happens when the problem remains vague or too broad?
Speaker Notes: For your homework, you will write a detailed response to these two analytical questions. Think deeply about what we discussed. Consider the doctor analogy, the electronic medical records failure, and the difference between just brainstorming ideas versus observing real people.
Metacognitive Reflection
Write a short paragraph describing:
- • Which part of the Empathize or Define process felt most useful to you?
- • Which aspect of the process still feels challenging?
- • How might today’s focus on understanding people influence the way you approach future software projects?
Speaker Notes: Finally, complete this metacognitive reflection. This is an important exercise to help you internalize today’s lesson. Reflecting on what felt useful and what felt difficult will prepare you to work collaboratively on your AP performance tasks. Thank you, everyone. Please submit your reflections.