Audience Analysis
Why this exists
Knowing who the learner is (role, context, responsibilities) is not enough to design effective content. Fraya also needs to understand the emotional and practical journey — where the learner is now, where the course takes them, and what they will be able to do by the end.
This is the second step of audience analysis, building directly on the learner profile. It defines pain (point A), transformation (point B), learning objectives, and complexity — all still learner-centered, before any course structure decisions are made.
How it works
flow_audience_define_profile ← step 1: who the learner is
↓ audience_profile
flow_audience_analyze ← step 2: what the learner needs
↓ JSON (pain, transformation, objectives, complexity)
course outline, section content, quizzes, artifacts
Inputs: course_title, audience_profile, course_reasoning.
Output: JSON with four fields — pain, transformation, learning_objectives, course_complexity.
The four elements
Pain — Point A
A specific, scenario-based description of the learner's struggles before taking the course. Not generic ("they lack skills") but concrete and empathetic — daily situations, fears, frustrations, knowledge gaps, or overload that the learner recognizes as their own reality.
Good pain is scenario-based, not diagnostic. It shows the struggle in action.
Example (weak): Managers struggle with giving feedback. Example (strong): Feedback conversations get postponed until review season. When they do happen, they feel vague or personal. Team members leave unsure what to change, and the manager leaves unsure the message landed.
Do not use "You will..." — write a clear statement of reality at point A.
Transformation — Point B
An outcome-focused description of the learner's state after the course. New skills, renewed confidence, and concrete changes in behavior or output. Describes what is now possible that was not before.
Do not use "You will..." — write a clear statement of reality at point B.
Learning objectives
3–5 high-level, learner-centered objectives. Each follows the structure: action verb + content + context.
Grouped into three mandatory categories:
| Category | Purpose | Example |
|---|---|---|
| Knowledge | What the learner knows | "The learner names the 5 stages of the feedback model." |
| Skills | What the learner can do | "The learner applies the SBI model in a live feedback conversation." |
| Attitude | How the learner approaches the topic | "The learner shows willingness to give feedback proactively rather than waiting for formal reviews." |
All three categories must be present. Objectives must be specific and measurable — avoid restating the topic title as an objective.
Course complexity
Defines the difficulty level appropriate for the audience.
⚠️ Incomplete. The current schema only includes
"Beginner". Needs to be expanded to at leastBeginner / Intermediate / Advancedbefore the workflow can handle varied audience profiles accurately.
Where course_reasoning comes from
course_reasoning is the strategic rationale — why this course exists for this specific
audience. It is a human input, not generated by another prompt. It might explain a
business context, a skills gap, a compliance need, or a performance problem.
It shapes the tone and focus of pain, transformation, and objectives — the same topic
for a junior employee vs. a senior manager needs a different angle, and course_reasoning
is what makes that explicit.