Published on November 14, 2025 Research Diary

Prompt Patterns We Actually Use

From chaos to clarity: how structured prompting evolved in our daily workflows
Prompt Patterns We Actually Use
Tuğcan ÖNBAŞ UXD / AI
LH
Lina Hoffmann Collaborator

Introduction

We’ve written thousands of prompts — some elegant, some embarrassing. Over time, patterns emerge.
This post collects real prompt patterns we use across our research projects, UX workflows, and development pipelines.

“Prompt engineering is not an art of magic — it’s an art of maintenance.”
— A very tired developer

Our Emotion Agent project heavily relies on LLMs for generating user scenarios, analyzing multimodal data, and drafting research reports. Through trial and error, we distilled several prompt patterns that consistently yield reliable results.

Now it’s time to share this Beyond Checklists: Pragmatic Accessibility in HCI Curricula paper with you and document how we structure our prompts for maximum clarity and repeatability.

While this is thought on our prompting workshop, consider this a living document. We’ll update it as we refine our techniques. And here’s a thesis diving deeper into prompt engineering best practices. Thanks to Monika Szuban for co-authoring this post!

Dive deeper in SwiftUI Prototyping Tips for Researchers.


1. The Instructional Stack

We layer our prompts like lasagna: context first, task next, then constraints.

SYSTEM: You are an expert UX researcher writing a comparative analysis.
USER: Compare the interaction models of autonomous shuttles in our dataset.
CONSTRAINTS: Use concise academic tone, include a summary table, cite 2 sources.

Here’s my personal as tugcanonbas.com:

Why it works:

  • Context primes the model without overloading.
  • Constraints anchor creativity.
  • Explicit task type prevents drift.

2. The Sandwich Pattern

When collaborating with LLMs, we use the sandwich:
context → task → output structure → tone reminder.

{
	"context": "Research project: Emotion-Aware Driver Agent",
	"task": "Write user story",
	"output_format": "Markdown",
	"tone": "Human-centered and data-informed"
}

This pattern works wonders in SvelteKit or SwiftUI documentation generation.


3. Self-Check Loop

We make the model critique itself before we trust it.

### Step 1 — Generate

Create 3 hypotheses for driver emotion classification errors.

### Step 2 — Evaluate

For each, add a confidence score (0–1) and a rationale.

### Step 3 — Reflect

Pick the most plausible hypothesis and rephrase it as a design insight.

This “self-loop” style produces near peer-review–ready insights.


4. Output Scaffolding

When generating structured content like YAML, we predefine the schema in the prompt:

# Schema
title: string
summary: string
takeaways: [string]
references: [string]

Then we ask:

“Fill the schema with insights from our last driving study.”

The result stays valid and ready for version control.


5. The “Critique + Rewrite” Pattern

Used for academic drafts and UX copy reviews.

You are a senior editor.

  1. Critique the following text in 3 bullet points.
  2. Then rewrite it for clarity and flow.

This ensures we keep both diagnostic and prescriptive outputs.


6. The Simulation Prompt

We simulate human behavior for multimodal systems.
It’s structured like a screenplay:

ROLE: Driver
CONTEXT: Rainy day, low visibility
EMOTION: Frustrated
ACTION: Misses a traffic sign and sighs
RESPONSE (System): Gentle haptic vibration + calming voice cue

Such pseudo-scripts drive data augmentation for Emotion Agent.


7. The “If–Then” Meta Prompt

Meta prompts guide smaller prompts dynamically.

if "data" in user_task:
    model_role = "data analyst"
elif "design" in user_task:
    model_role = "UX designer"
else:
    model_role = "general assistant"

We embed this logic in our internal LLM orchestrator to match tone and expertise per task.


8. The Context Memory Trick

LLMs forget easily. To maintain continuity:

“You are continuing from the previous session. Recall our last summary on multimodal input fusion. Do not reintroduce context; build upon it.”

This mimics working memory — essential in iterative design reviews.


9. Tables, Lists, and Checkboxes

Even in conversational design, structure improves reasoning.

Pattern Used For Example Output
Table Comparative summaries Emotion model metrics
Checklist Task breakdowns ✅ Collect data ✅ Preprocess ✅ Train
List Brainstorming 1. Audio cues 2. Haptic responses

10. Embedding References

We often reference connected projects directly in text:

Our iterative prompting approach evolved from our 2024 CHI paper, later tested in Emotion Agent.
Further teaching materials appear in prompting-ws25.


Example Image

Prompt evolution diagram Figure 1: Prompt structures evolving over time.

Default Profile Image Figure 2: Relative path.

Prompt engineering workflow Figure 3: Relative path.


Footnotes

  1. Prompt failure rate decreases ~40% after introducing schema-based output.
  2. Using meta-prompts for reflection yields 1.6× higher factual consistency.

Conclusion

The best prompts are not clever — they are repeatable.
We’ve learned that structure beats intuition and clarity scales better than creativity.

When your prompts start reading like documentation, that’s when you know you’re doing it right.


Resources


“The goal isn’t to write perfect prompts. It’s to build systems that don’t need perfect prompts.”