Thema
Fase 1 · Ideation
Map: solution-explorer/ · Vraag: wat bouwen we, en waarom?
Dit is de grootste fase van de roundtrip — en de fase die het vaakst wordt onderschat. Ze loopt van "ik heb een idee" of "ik ben geïnteresseerd in dit domein" tot een launch-klare, machineleesbare solution-map waar de rest van de keten op kan bouwen.
De fase kent drie ingangen, afhankelijk van hoe scherp het startpunt is.
Ingang 1 · xplore — het idee leegvragen
xplore is een interviewer, geen adviseur. De skill stelt vragen tot het idee volledig in kaart is, en doet nadrukkelijk niets anders.
De tien dimensies
| Dimensie | Kernvragen |
|---|---|
| What | Wat is het idee? Wat doet het? Wat is het eindresultaat? |
| Why | Welk probleem lost het op? Wat was de aanleiding? Wat gebeurt er als we niets doen? |
| Who | Voor wie is het? Wie zijn de stakeholders? Wie voert het uit? |
| Scope | Wat zit erin? Wat is expliciet uitgesloten? Waar liggen de grenzen? |
| Context | In welke situatie of omgeving? Zijn er bestaande systemen of processen? |
| Constraints | Welke beperkingen? Tijd, budget, technisch, organisatorisch? |
| Dependencies | Waar hangt het van af? Wat moet er eerst gebeuren? |
| Success criteria | Wanneer is het geslaagd? Hoe meet je dat? |
| Risks | Wat kan er misgaan? Wat is onzeker? |
| Open questions | Wat weet de gebruiker zelf nog niet? |
De regels die het werkend houden
- Eén vraag tegelijk. Nooit meerdere vragen vooraan gooien.
- Volg de natuurlijke flow, niet de volgorde van de tabel.
- Elke 3–5 beurten samenvatten om begrip te bevestigen.
- Geen kritiek, geen oordeel, geen alternatieven. Ook geen "goed idee".
- Sla geen dimensie over — is er één niet gedekt, dan vraag je ernaar.
- Antwoord in de taal van de gebruiker.
Waarom die onthouding het punt is
Zodra een interviewer gaat evalueren, begint de geïnterviewde te verdedigen in plaats van te vertellen. De informatie die je dan mist, mis je permanent — die komt niet terug in spoor 3 als je hem in de ideation niet hebt opgehaald.
Afsluiting en output
De gebruiker beslist wanneer het stopt, nooit de skill. Bij afsluiting drie keuzes: doorgaan, afronden met een Context Summary, of afronden met Context Summary + gedetailleerde specificaties.
| Variant | Bevat |
|---|---|
| A · Context Summary | Idee · probleem · doelgroep · scope (in/out) · context & omgeving · constraints · dependencies · succescriteria · risico's · open vragen |
| B · Specificaties | Alles uit A, plus functionele requirements (met must/should/could), non-functionele requirements, aannames, een dependency-tabel en een risicotabel met kans/impact/mitigatie |
Stopt de gebruiker vroeg, dan komt er een coverage-gap-tabel bij: per dimensie ✅ gedekt / ⚠️ deels / ❌ niet besproken. Geen stilzwijgende gaten.
Ingang 2 · ontdek-kansen — het domein afzoeken
Waar xplore één idee uitdiept, zoekt ontdek-kansen een heel interessegebied af en levert een gerangschikte lijst kansen op.
Kerncontext die altijd meegaat
| Geografie | Nederland. NL-bronnen hebben voorrang: CBS, Rijksoverheid, NOS, FD, vakbladen, branche-organisaties, CPB, SCP, RIVM. Internationaal alleen bij ontbrekende NL-data. |
| Taal | Nederlands |
| Product-lens | Softwareproducten — geen diensten, geen hardware |
| Tijdsbudget | Maximaal 60 minuten totaal |
De twee strategische lenzen
Geen harde filter, wel een bonus in de score:
| Lens | Wat het zoekt |
|---|---|
| L1 · Goedkopere her-implementatie | Bestaande software in het domein die 'te duur' is en waarvoor een goedkoper alternatief kansrijk is. AI en moderne stacks maken herbouw goedkoper en robuuster dan 5–10 jaar geleden. |
| L2 · Niet-beeldscherm-interfaces | Kansen die beter landen via audio, dialoog, smartglasses, smart headphones of smartwatches, terwijl bestaande oplossingen nog primair op een scherm leunen. |
Persona-samenstelling
De pipeline werkt met 8–15 domeinspecifieke persona's, bij voorkeur via Track A — derive: neem 8–12 bestaande persona's uit personas/ met expliciete diversiteit (minstens 3 leeftijdsbanden, mix van G4 / middelgrote stad / dorp, sociaaleconomische spreiding, gender en migratieachtergrond representatief) en leg er een domeinrol overheen.
| Wat je verandert | Wat je behoudt |
|---|---|
| Beroep / hobby-focus, domeinspecifieke doelen, pains, gains, dagelijkse routines rond het domein | Demografie, familiecontext, financiële situatie, persoonlijkheid, mentale gezondheid, taalvoorkeur, digitale vaardigheid |
Bij conflict — een blinde persona in een scherm-zware rol — kies je een andere basispersona. De afgeleide persona's krijgen een traceerbare naam: 001_anouk_de_vries_as_hobby_zanger.md.
Ingang 3 · kans-uitwerken — de vijf sporen
Eén opportunity wordt hier omgevormd tot een launch-klare solution-map. Vaste volgorde; je kunt spoor 3 niet starten zonder spoor 1 en 2.
Pas toe of leg uit
Alle skills per spoor worden gedraaid, óf expliciet met reden overgeslagen in de spoor-README. Er is geen stille overslag.
Spoor 1 — Scherp probleem
Segment + pijn + value-prop scherp krijgen.
| Skill | Output |
|---|---|
customer-segmentation | 01-probleem/segment-keuze.md |
jtbd-analysis (deep op 1 segment) | 01-probleem/jtbd-deep.md |
value-proposition-canvas | 01-probleem/value-proposition-canvas.md |
problem-solution-fit | 01-probleem/problem-solution-fit.md |
Gate: "Is er één duidelijk segment met een scherpe, niet-oplosbare pijn en een passende value-prop?"
Spoor 2 — Markt & positionering
Marktgrootte + concurrentiediepte + positionering.
| Skill | Output |
|---|---|
market-sizing | 02-markt/market-sizing.md |
competitive-analysis (deep) | 02-markt/competitive-deep.md |
industry-benchmarking | 02-markt/industry-benchmarking.md |
trend-analysis (refined op segment) | 02-markt/trend-analysis.md |
Het positioning-statement destilleer je uit die vier → 02-markt/positioning.md.
Gate: "Is de markt groot genoeg en de positionering onderscheidend genoeg?"
Spoor 3 — MVP-spec
Productscope + pricing + user stories + acceptatie + risico's. Dit spoor bepaalt de functionele behoefte — en daarmee wat fase 2 straks moet scaffolden.
| Skill | Output |
|---|---|
business-case-management (lean canvas) | 03-mvp/lean-canvas.md |
functional-specifications | 03-mvp/functional-spec.md |
user-story-generator | 03-mvp/user-stories.md |
acceptance-criteria-writing | 03-mvp/acceptance-criteria.md |
roi-modeling / financial-forecasting | 03-mvp/pricing-roi.md |
pre-mortem | 03-mvp/pre-mortem.md |
risk-register | 03-mvp/risk-register.md |
story-mapping | 03-mvp/story-map.md |
Gate: "Is de MVP-scope concreet genoeg om te prototypen en groot genoeg om te bouwen?"
Spoor 4 — Prototype + user-test
De MVP-spec toetsen met een runnend prototype.
| Skill | Output |
|---|---|
wireframing | 04-prototype/wireframe-app/ — een runnende Vue 3 + Vite-app |
ab-hypothesis-framing | 04-prototype/hypothesen.md |
rapid-prototyping | 04-prototype/rapid-proto.md |
survey-design | 04-prototype/test-protocol.md |
cognitive-walkthrough | 04-prototype/walkthrough.md |
Verplicht en expliciet gemarkeerd
De wireframing-skill wordt altijd gedraaid als spoor 4 gekozen is — er is geen markdown-alternatief. En de testresultaten worden geredeneerd vanuit de persona's, dus ze worden expliciet als gesimuleerd gemarkeerd. Geen echte gebruikerssessies.
De wireframes gebruiken @for-the-people-initiative/wireframe-kit — de hand-getekende Rough.js-componenten uit wireframe-ds/. Zie Wireframe-kit.
Gate: "Houdt de spec stand tegen de walkthrough?"
Spoor 5 — GTM + launch-klaar
Visie + go-to-market + launch-metrics. Output in 05-gtm/.
De verplichte afsluiting
kans-vitepress-documentation is de verplichte laatste stap van kans-uitwerken, ongeacht bij welk spoor de pipeline eindigt. De skill scaffoldt of her-aligneert de VitePress-sub-site voor de solution — idempotent: config en theme worden bijgetrokken naar het huidige patroon, de solution-content zelf blijft onaangeraakt.
Hij wired ook het hub-niveau mee: srcExclude, de nav-dropdown, de SUB_SITES-set en de landing-features.
De wireframe-embed — drie details die kritisch zijn
Als spoor 4 gedraaid is, moet de wireframe ook via de docs-site bereikbaar zijn, anders krijgt de lezer een 404.
- Workspaces. De hub-
package.jsonmoet"solutions/*/04-prototype/wireframe-app"als workspace hebben — zonder dat installeertnpm installde wireframe-deps niet en faalt de build. - Relatieve iframe-src.
../wireframe/, niet/wireframe/. Absoluut resolvet naar de domeinroot en mist de sub-site-base. srcExclude.04-prototype/wireframe-app/**moet uitgesloten zijn, anders probeert VitePress de Vue-app als markdown te renderen.
base: './' en hash-history in vite.config.ts zijn al boilerplate-default sinds wireframing v1.1.1 — zonder die twee breken asset-paden en routes onder een subpath.
De kandidaat-registry
Seifer moet als orchestrator kunnen opvragen welke exploraties echte build-kandidaten zijn, zonder Nederlands proza te parsen. Daarvoor emit deze fase twee machineleesbare bestanden:
| Bestand | Rol |
|---|---|
solutions/<slug>/solution-manifest.json | Bron van waarheid, naast het werk. kans-uitwerken actualiseert het bij elke spoor-gate. |
solutions/candidates.json | Gegenereerde index (scripts/build-candidates.mjs). Nooit met de hand bewerken. |
Het signaal splitst in twee assen:
| As | Veld | Vraag |
|---|---|---|
| Verdict (strategisch) | verdict = build-now · build-conditional · platform-play · feature · no-go · exploring | Mogen we dit bouwen? |
| Readiness (artefact) | sporenComplete (0–5) + scaffoldReady | Kán het al de keten in? |
Een oplossing is nu startklaar bij verdict = build-now én sporenComplete = 5. scaffoldReady vertelt of de naad A-normalisatie nog moet. candidates.json bucketet in buildReady / greenlit / conditional / platforms / features / exploring.
Grens
De skill zet alleen het per-solution verdict uit zijn eigen gates. De portfolio-herclassificatie naar platform-play of feature is een aparte cross-solution-pass die role, bundle en verdict mag overschrijven.
Draaien
bash
cd solution-explorer
npm install
npm run dev # VitePress-hub met alle solutions
npm run candidates # candidates.json opnieuw genererenUitzondering op de workspace-regel
solution-explorer/package.json heeft wél interne workspaces (solutions/* en de wireframe-apps). Die zijn lokaal en vallen buiten de harde regel.