home
diamond Go Premium
Data Engineering Path  ·  Data & AI
AWS CORE PLATFORM CASE STUDY

Case Study, Part 2 of 5: Ideation Phase

Where we are: Building synth-data, a synthetic-data CLI. Setup is done, we kicked off with feature scope, and Initialization just finished. Now the workflow enters Ideation — the phase that turns a brief into a confirmed, scoped intent before any design or code happens.

In plain English: Before any code gets written, the AI first makes sure it actually understands the idea — who it's for, what "done" looks like, whether it's even worth building, and what's deliberately left out. Think of this phase as the conversation you'd have with a teammate before opening your code editor, just written down and agreed on instead of assumed.

Every prompt we actually type is highlighted like this.


Stage 1.1: Intent Capture (product agent)

The status line at the bottom of the terminal updates:

[AIDLC] IDEATION > Intent Capture [▓░░░░░░░░░] 1/7 -- product

The product agent asks how we want to work:

▸ Choose interaction mode:
  (1) Guide Me — agent asks structured questions
  (2) Edit File — write directly to the artifact
  (3) Chat — freeform discussion

You: 1

It asks its questions one at a time; we answer inline:

Claude Code: Who is this for — you personally, or a wider audience? You: Just me and my team at first, but I'd like to publish it publicly if it turns out useful.

Claude Code: What counts as "done" for the MVP? You: All four output formats work, and a schema with 5-10 columns generates 10,000 rows in under a few seconds.

Claude Code writes intent-statement.md and intent-capture-questions.md itself, then opens the gate:

# Intent Capture & Framing Complete

| Artifact | Contents |
|---|---|
| intent-statement.md | Problem statement, target users, success criteria |
| intent-capture-questions.md | 2 questions, all answered |

▸ How would you like to proceed?
  (1) Approve — Continue to Market Research
  (2) Request Changes

You: Approve

Behind the scenes: Each answer fires QUESTION_ANSWERED; writing the two files fires ARTIFACT_CREATED via aidlc-write-audit-log. The same write triggers aidlc-run-sensors, which checks the new files against whatever sensors this stage declares — a SENSOR_PASSED (or SENSOR_FAILED, which would block the gate) follows. Approving fires GATE_APPROVED, and aidlc-state.md's checkbox for this stage flips [?] → [x].


Stage 1.2: Market Research (product agent)

Claude Code looks at what already exists in this space — Faker as a library, Mockaroo as a hosted tool, SDV for statistically-realistic synthetic data — and writes market-research.md:

Claude Code: The gap: Faker generates realistic values but has no schema/constraint layer or multi-format export; Mockaroo does both but is a hosted web tool, not a CLI you can script into a test pipeline. synth-data sits in that gap — a scriptable CLI with a constraint-aware schema and native multi-format export. Approve

Stage 1.3: Feasibility & Constraints (product agent)

Claude Code: Feasible — every dependency (Faker, pandas, pyarrow, click) is mature and MIT/BSD licensed. One real constraint: Parquet output requires pyarrow, a heavier dependency than the others — worth making it an optional extra later, not blocking the MVP now. Written to constraints.md. Approve

Stage 1.4: Scope Definition (product agent)

Claude Code: scope-document.md confirms the MVP boundary from vision.md: schema definition, generation, four export formats. Explicitly out: a web UI, cross-table referential integrity, streaming generation. Approve

Stage 1.5: Team Formation (product agent)

For a solo project this stage still runs, just briefly:

Claude Code: Single owner, no team to form — recorded in team-formation.md as "solo, no delegation needed." If contributors join later, this file is where their areas of ownership would get defined. Approve

Stage 1.6: Rough Mockups (design agent)

Claude Code: A mockup of the CLI's actual usage, since there's no visual UI to sketch: text $ synth-data generate --schema schema.yaml --rows 10000 --format csv --out data.csv Generating 10,000 rows... done (0.8s) Wrote data.csv Written to rough-mockups.md. Approve

Stage 1.7: Approval & Handoff (product agent)

The last Ideation stage summarizes everything above into one handoff artifact:

# Ideation Complete — Handoff to Inception

| Artifact | Decision |
|---|---|
| intent-statement.md | Personal + eventual public tool |
| market-research.md | Fills a real gap vs. Faker/Mockaroo |
| constraints.md | Parquet needs pyarrow — flag as optional extra |
| scope-document.md | Schema, generation, 4 formats — no UI, no streaming |
| rough-mockups.md | CLI usage sketch |

▸ [Approve — Continue to Inception / Request Changes]

You: Approve

Behind the scenes: aidlc-state.md now shows Progress: 7/33 overall | 7/7 IDEATION stages complete. Every artifact this phase produced is committed under aidlc/spaces/default/intents/260909-synthetic-data-generator/ideation/ — nothing here is thrown away once we move on; Inception's Requirements Analysis reads intent-statement.md and scope-document.md directly rather than re-asking us the same questions.


‹ Back to: Part 1 — Setup & Kickoff Continue to: Part 3 — Inception Phase

Find this content helpful? ☕ Buy me a coffee

Entity Details

Create New Item

help

Submit Technical Query

Have a question or run into an issue? Describe it below, upload an optional screenshot, and our engineering team will answer it!

image Attach image (optional)

Submit Feedback

build Free Developer Utility Free Tool
gavel

Privacy & Legal Disclaimer

1. Client-Side Browser Processing

All utility tools on DeepEngineerHub (including Image to PDF, Text Formatters, JSON Converters, and Encryptors) execute 100% locally within your client browser using WebAssembly and JavaScript. No uploaded images, text, or documents are transmitted, collected, or stored on remote servers.

2. Limitation of Liability ("As-Is" Provision)

Tools and services are provided free of charge for convenience and educational purposes "as-is" without warranties of any kind. DeepEngineerHub shall not be held liable for any data loss, formatting inconsistencies, or indirect damages resulting from tool usage.

3. Open Source & Third-Party Software

Certain utilities utilize open-source client libraries (such as jsPDF, Mermaid.js, Pyodide) licensed under MIT, Apache, or BSD open licenses. All intellectual property remains with their respective copyright holders.