Fast exploration
What is vibe coding?
Vibe coding means you describe the feel, behavior, or rough outcome you want, then use an AI
assistant to quickly generate and refine code until the result feels close.
Same example
"Reduce failed checkout retries by showing a clearer payment error, without changing payment provider behavior."
Prompt example
"Make the checkout error feel clearer and calmer. Try a better message and update the UI until it feels right."
What gets better
The prompt is fast and creative, but it does not define files, tests, non-goals, or release evidence.
Best for quick exploration, but risky if the result moves toward production without tests and review.
Defined before build
What is spec-driven development?
Spec-driven development starts with a written specification. The team defines behavior,
constraints, interfaces, tests, and acceptance criteria before asking AI to implement.
Same example
"Reduce failed checkout retries by showing a clearer payment error, without changing payment provider behavior."
Prompt example
"Use the checkout error spec. Update only the displayed error copy and UI state. Preserve provider calls, status handling, telemetry names, and retry behavior. Add or update tests for the allowed error states and acceptance criteria."
What gets better
The prompt now gives the assistant rules, expected behavior, non-goals, and tests before generation starts.
Use it when accuracy, contracts, compliance, or cross-team review matters more than speed alone.
Outcome first
What is intent-driven development?
Intent-driven development starts with the reason for the change. You name the user, business,
security, or operational outcome before deciding what code, configuration, or tests should change.
Same example
"Reduce failed checkout retries by showing a clearer payment error, without changing payment provider behavior."
Prompt example
"The goal is fewer failed checkout retries caused by confusing payment errors. Improve the message so customers know what to do next. Keep provider behavior unchanged. Explain how the change supports the metric and what evidence should prove it worked."
What gets better
The prompt connects the work to a business outcome, success metric, customer behavior, and human acceptance.
Use it when the team needs AI output to stay connected to product value, risk, and release evidence.
Lifecycle control
What is AIDLC?
AIDLC turns the AI-assisted change into a lifecycle: intent, context, generation, verification,
acceptance, release evidence, and learning. The assistant can help, but the team owns the decision.
Same example
"Reduce failed checkout retries by showing a clearer payment error, without changing payment provider behavior."
Prompt example
"Use AIDLC Brownfield Flow. Intent: reduce failed checkout retries caused by unclear payment errors. Scope: checkout error copy and UI state only. Non-goals: no provider call, retry, telemetry, or payment logic changes. Return affected files, candidate diff, assumptions, regression checks, acceptance evidence, release notes, and rollback signal."
What gets better
The prompt becomes production-ready: bounded scope, context, non-goals, verification, acceptance, release, and rollback are all visible.
Use it when AI output needs to be reviewable, testable, explainable, and safe enough for a real release.