Skip to content

Commit 7fa675a

Browse files
authored
Merge pull request #425 from raifdmueller/feat/7-new-anchors
feat: add 7 new anchors (Red/Green TDD, 4MAT, Walking Skeleton, Tracer Bullet, Thin Vertical Slice, Spike Solution, MVP)
2 parents e618176 + 465983c commit 7fa675a

23 files changed

Lines changed: 1555 additions & 131 deletions

docs/all-anchors.adoc

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ include::about.adoc[leveloffset=+1]
99

1010
== Communication & Presentation
1111

12+
include::anchors/4mat.adoc[leveloffset=+2]
13+
1214
include::anchors/bluf.adoc[leveloffset=+2]
1315

1416
include::anchors/gutes-deutsch-wolf-schneider.adoc[leveloffset=+2]
@@ -45,6 +47,8 @@ include::anchors/three-act-structure.adoc[leveloffset=+2]
4547

4648
== Design Principles & Patterns
4749

50+
include::anchors/cohesion-criteria.adoc[leveloffset=+2]
51+
4852
include::anchors/crc-cards.adoc[leveloffset=+2]
4953

5054
include::anchors/fowler-patterns.adoc[leveloffset=+2]
@@ -141,6 +145,10 @@ include::anchors/semantic-versioning.adoc[leveloffset=+2]
141145

142146
include::anchors/sota.adoc[leveloffset=+2]
143147

148+
include::anchors/spike-solution.adoc[leveloffset=+2]
149+
150+
include::anchors/thin-vertical-slice.adoc[leveloffset=+2]
151+
144152
include::anchors/timtowtdi.adoc[leveloffset=+2]
145153

146154
<<<
@@ -235,8 +243,12 @@ include::anchors/lasr.adoc[leveloffset=+2]
235243

236244
include::anchors/madr.adoc[leveloffset=+2]
237245

246+
include::anchors/tracer-bullet.adoc[leveloffset=+2]
247+
238248
include::anchors/vertical-slice-architecture.adoc[leveloffset=+2]
239249

250+
include::anchors/walking-skeleton.adoc[leveloffset=+2]
251+
240252
<<<
241253

242254
== Statistical Methods & Process Monitoring
@@ -257,6 +269,8 @@ include::anchors/impact-mapping.adoc[leveloffset=+2]
257269

258270
include::anchors/jobs-to-be-done.adoc[leveloffset=+2]
259271

272+
include::anchors/mvp.adoc[leveloffset=+2]
273+
260274
include::anchors/pert.adoc[leveloffset=+2]
261275

262276
include::anchors/pugh-matrix.adoc[leveloffset=+2]
@@ -287,6 +301,8 @@ include::anchors/owasp-top-10.adoc[leveloffset=+2]
287301

288302
include::anchors/property-based-testing.adoc[leveloffset=+2]
289303

304+
include::anchors/red-green-tdd.adoc[leveloffset=+2]
305+
290306
include::anchors/stride.adoc[leveloffset=+2]
291307

292308
include::anchors/tdd-chicago-school.adoc[leveloffset=+2]

docs/anchors/4mat.adoc

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
= 4MAT
2+
:categories: communication-presentation
3+
:roles: educator, consultant, technical-writer, team-lead
4+
:related: pyramid-principle, feynman-technique, diataxis-framework
5+
:proponents: Bernice McCarthy
6+
:tags: learning-cycle, didactics, presentation, teaching, communication
7+
:tier: 3
8+
9+
[%collapsible]
10+
====
11+
Full Name:: 4MAT System of Instruction
12+
13+
Also known as:: 4MAT Learning Cycle, McCarthy's 4MAT
14+
15+
[discrete]
16+
== *Core Concepts*:
17+
18+
Why:: Establish *relevance and motivation* first. Why should the audience care? Connect the topic to their experience, problems, or goals before introducing new information.
19+
20+
What:: Present the *facts, concepts, and structure*. The core content — definitions, models, theory, how the pieces fit together.
21+
22+
How:: Show *practical application*. Demonstrate usage, walk through examples, let the audience try it hands-on. Translate theory into skill.
23+
24+
What If:: Explore *extension, variation, and transfer*. What happens at the edges? How does this apply to new situations? Encourage creative application and critical questioning.
25+
26+
Four-quadrant cycle:: The order matters — why before what prevents "so what?" disengagement; how before what-if prevents premature abstraction.
27+
28+
Left-right brain modes:: Each quadrant alternates between reflective observation and active experimentation, engaging different cognitive styles in one flow.
29+
30+
Four learner types:: Innovative (Why), Analytic (What), Common Sense (How), Dynamic (What If) — every presentation serves all four instead of only the "analytic learner" that default lecture formats assume.
31+
32+
33+
Key Proponents:: Bernice McCarthy ("The 4MAT System: Teaching to Learning Styles with Right/Left Mode Techniques", 1980; "About Learning", 1996)
34+
35+
[discrete]
36+
== *When to Use*:
37+
38+
* Structuring training sessions, workshops, or technical presentations
39+
* Writing tutorials, explainers, or onboarding documentation
40+
* Designing conference talks that engage both practitioners and theorists
41+
* Planning educational content across the motivation-to-mastery arc
42+
* LLM prompting for instructional material: "Explain X using the 4MAT cycle"
43+
44+
[discrete]
45+
== *Related Anchors*:
46+
47+
* <<pyramid-principle,Pyramid Principle>> - Top-down structure for written communication; complements 4MAT which is experience-first
48+
* <<feynman-technique,Feynman Technique>> - Self-directed learning; 4MAT is teacher-directed instructional design
49+
* <<diataxis-framework,Diátaxis Framework>> - Documentation types (tutorial/how-to/reference/explanation) map loosely to 4MAT quadrants
50+
====

docs/anchors/4mat.de.adoc

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
= 4MAT
2+
:categories: communication-presentation
3+
:roles: educator, consultant, technical-writer, team-lead
4+
:related: pyramid-principle, feynman-technique, diataxis-framework
5+
:proponents: Bernice McCarthy
6+
:tags: learning-cycle, didactics, presentation, teaching, communication
7+
:tier: 3
8+
9+
[%collapsible]
10+
====
11+
Vollständiger Name:: 4MAT System of Instruction
12+
13+
Auch bekannt als:: 4MAT Lernzyklus, McCarthys 4MAT
14+
15+
[discrete]
16+
== *Kernkonzepte*:
17+
18+
Warum:: Etabliere zuerst *Relevanz und Motivation*. Warum sollte sich das Publikum dafür interessieren? Verbinde das Thema mit seinen Erfahrungen, Problemen oder Zielen, bevor neue Informationen eingeführt werden.
19+
20+
Was:: Präsentiere *Fakten, Konzepte und Struktur*. Der inhaltliche Kern — Definitionen, Modelle, Theorie, wie die Teile zusammenpassen.
21+
22+
Wie:: Zeige *praktische Anwendung*. Demonstriere die Nutzung, gehe Beispiele durch, lass das Publikum selbst ausprobieren. Übersetze Theorie in Fertigkeit.
23+
24+
Was wäre wenn:: Erkunde *Erweiterung, Variation und Transfer*. Was passiert an den Rändern? Wie lässt sich das auf neue Situationen übertragen? Ermutige kreative Anwendung und kritisches Hinterfragen.
25+
26+
Vier-Quadranten-Zyklus:: Die Reihenfolge ist wichtig — Warum vor Was verhindert "Na und?"-Desinteresse; Wie vor Was-wäre-wenn verhindert verfrühte Abstraktion.
27+
28+
Links-rechts-Hirn-Modi:: Jeder Quadrant wechselt zwischen reflektierender Beobachtung und aktivem Experimentieren und engagiert so verschiedene kognitive Stile in einem Fluss.
29+
30+
Vier Lernertypen:: Innovativ (Warum), Analytisch (Was), Pragmatisch (Wie), Dynamisch (Was wäre wenn) — jede Präsentation bedient alle vier, statt nur den "analytischen Lerner" anzusprechen, den klassische Vortragsformate voraussetzen.
31+
32+
33+
Schlüsselvertreter:: Bernice McCarthy ("The 4MAT System: Teaching to Learning Styles with Right/Left Mode Techniques", 1980; "About Learning", 1996)
34+
35+
[discrete]
36+
== *Wann zu verwenden*:
37+
38+
* Strukturierung von Trainings, Workshops oder technischen Präsentationen
39+
* Verfassen von Tutorials, Erklärungen oder Onboarding-Dokumentation
40+
* Design von Konferenzvorträgen, die sowohl Praktiker als auch Theoretiker ansprechen
41+
* Planung von Bildungsinhalten entlang des Motivations-zu-Meisterschaft-Bogens
42+
* LLM-Prompting für Lehrmaterialien: "Erkläre X nach dem 4MAT-Zyklus"
43+
44+
[discrete]
45+
== *Verwandte Anker*:
46+
47+
* <<pyramid-principle,Pyramid Principle>> - Top-down-Struktur für schriftliche Kommunikation; ergänzt 4MAT, das erfahrungsorientiert beginnt
48+
* <<feynman-technique,Feynman Technique>> - Selbstgesteuertes Lernen; 4MAT ist lehrergesteuertes Instruktionsdesign
49+
* <<diataxis-framework,Diátaxis Framework>> - Dokumentationstypen (Tutorial/How-to/Reference/Explanation) entsprechen grob den 4MAT-Quadranten
50+
====

docs/anchors/mvp.adoc

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
= Minimum Viable Product (MVP)
2+
:categories: strategic-planning
3+
:roles: product-owner, team-lead, consultant
4+
:related: jobs-to-be-done, impact-mapping, user-story-mapping, walking-skeleton
5+
:proponents: Eric Ries, Frank Robinson
6+
:tags: lean-startup, validated-learning, hypothesis-testing, product, mvp
7+
:tier: 3
8+
9+
[%collapsible]
10+
====
11+
Full Name:: Minimum Viable Product
12+
13+
Also known as:: MVP, Lean Startup MVP
14+
15+
[discrete]
16+
== *Core Concepts*:
17+
18+
Smallest thing that tests a hypothesis:: An MVP is the minimum product that allows a team to learn whether a specific hypothesis about user needs is valid — with the least amount of effort.
19+
20+
Validated learning is the output:: The defining output is not a feature set, not revenue, not users — it is *learning*. "Did we learn whether our hypothesis is true?" is the only success criterion.
21+
22+
One hypothesis at a time:: An MVP targets a single, falsifiable hypothesis ("users will pay for X", "users need feature Y more than feature Z"). Bundling hypotheses into one MVP makes the learning ambiguous.
23+
24+
Minimum means minimum:: If a hand-drawn mockup, a landing page, or a concierge service can test the hypothesis, that *is* the MVP. Code is often not required. The "P" stands for product, but the product can be an illusion.
25+
26+
Build-measure-learn loop:: The MVP is the first turn of a tight feedback cycle: build a minimal thing, measure how real users respond, learn from the data, then decide whether to pivot or persevere.
27+
28+
Not a small v1:: A common misuse is calling the first release of a polished product "the MVP". A real MVP would be embarrassing to ship in production — its job is learning, not market entry.
29+
30+
Pivot or persevere:: The MVP gives you the evidence to choose: continue in the same direction (persevere) or change course based on what you learned (pivot).
31+
32+
Distinct from Walking Skeleton:: A Walking Skeleton validates *architecture*; an MVP validates *market demand*. You can have one without the other.
33+
34+
35+
Key Proponents:: Eric Ries ("The Lean Startup", 2011); Frank Robinson coined the term in 2001
36+
37+
[discrete]
38+
== *When to Use*:
39+
40+
* Validating whether a new product or feature solves a real user problem before investing in full development
41+
* Testing pricing, positioning, or target-segment hypotheses with minimal risk
42+
* Early-stage startups with limited runway who cannot afford to build the wrong thing
43+
* Internal product experimentation where feature ideas need evidence before prioritization
44+
* LLM prompting: "design an MVP for X" signals *test the hypothesis, don't ship a complete product*
45+
46+
[discrete]
47+
== *Related Anchors*:
48+
49+
* <<jobs-to-be-done,Jobs to be Done>> - Framework for articulating the user need an MVP is trying to validate
50+
* <<impact-mapping,Impact Mapping>> - Technique for aligning MVP scope with business outcomes
51+
* <<user-story-mapping,User Story Mapping>> - Visual tool for identifying the minimum set of stories for an MVP
52+
* <<walking-skeleton,Walking Skeleton>> - Architectural counterpart; validates structure rather than market demand
53+
====

docs/anchors/mvp.de.adoc

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
= Minimum Viable Product (MVP)
2+
:categories: strategic-planning
3+
:roles: product-owner, team-lead, consultant
4+
:related: jobs-to-be-done, impact-mapping, user-story-mapping, walking-skeleton
5+
:proponents: Eric Ries, Frank Robinson
6+
:tags: lean-startup, validated-learning, hypothesis-testing, product, mvp
7+
:tier: 3
8+
9+
[%collapsible]
10+
====
11+
Vollständiger Name:: Minimum Viable Product
12+
13+
Auch bekannt als:: MVP, Lean-Startup MVP
14+
15+
[discrete]
16+
== *Kernkonzepte*:
17+
18+
Das Kleinste, das eine Hypothese testet:: Ein MVP ist das minimale Produkt, das einem Team erlaubt zu lernen, ob eine spezifische Hypothese über Benutzerbedürfnisse valide ist — mit dem geringstmöglichen Aufwand.
19+
20+
Validiertes Lernen ist das Ergebnis:: Das definierende Ergebnis ist kein Feature-Set, kein Umsatz, keine Benutzer — es ist *Lernen*. "Haben wir gelernt, ob unsere Hypothese stimmt?" ist das einzige Erfolgskriterium.
21+
22+
Eine Hypothese nach der anderen:: Ein MVP zielt auf eine einzige, falsifizierbare Hypothese ("Benutzer zahlen für X", "Benutzer brauchen Feature Y mehr als Feature Z"). Mehrere Hypothesen zu bündeln macht das Lernen uneindeutig.
23+
24+
Minimum heißt Minimum:: Wenn ein handgezeichnetes Mockup, eine Landing Page oder ein Concierge-Service die Hypothese testen kann, *ist* das das MVP. Code ist oft nicht erforderlich. Das "P" steht für Produkt, aber das Produkt kann eine Illusion sein.
25+
26+
Build-Measure-Learn-Zyklus:: Das MVP ist die erste Runde eines engen Feedback-Zyklus: baue etwas Minimales, miss die Reaktion echter Benutzer, lerne aus den Daten, entscheide dann über Pivot oder Persevere.
27+
28+
Keine kleine v1:: Ein häufiger Missbrauch ist, das erste Release eines polierten Produkts "MVP" zu nennen. Ein echtes MVP wäre in Produktion peinlich — sein Job ist Lernen, nicht Markteintritt.
29+
30+
Pivot oder Persevere:: Das MVP liefert die Evidenz zur Wahl: in gleicher Richtung weitermachen (Persevere) oder aufgrund des Gelernten den Kurs ändern (Pivot).
31+
32+
Abgrenzung zum Walking Skeleton:: Ein Walking Skeleton validiert *Architektur*; ein MVP validiert *Marktnachfrage*. Man kann eines ohne das andere haben.
33+
34+
35+
Schlüsselvertreter:: Eric Ries ("The Lean Startup", 2011); Frank Robinson prägte den Begriff 2001
36+
37+
[discrete]
38+
== *Wann zu verwenden*:
39+
40+
* Validierung, ob ein neues Produkt oder Feature ein echtes Benutzerproblem löst, bevor in vollständige Entwicklung investiert wird
41+
* Test von Preisgestaltung, Positionierung oder Zielsegment-Hypothesen mit minimalem Risiko
42+
* Frühphasige Startups mit begrenztem Runway, die sich nicht leisten können, das Falsche zu bauen
43+
* Interne Produktexperimente, bei denen Feature-Ideen Evidenz vor der Priorisierung brauchen
44+
* LLM-Prompting: "Entwirf ein MVP für X" signalisiert *teste die Hypothese, liefere kein komplettes Produkt*
45+
46+
[discrete]
47+
== *Verwandte Anker*:
48+
49+
* <<jobs-to-be-done,Jobs to be Done>> - Framework zur Artikulation des Benutzerbedürfnisses, das ein MVP validieren soll
50+
* <<impact-mapping,Impact Mapping>> - Technik zur Ausrichtung des MVP-Umfangs auf Geschäftsziele
51+
* <<user-story-mapping,User Story Mapping>> - Visuelles Werkzeug zur Identifikation des minimalen Story-Sets für ein MVP
52+
* <<walking-skeleton,Walking Skeleton>> - Architektonisches Gegenstück; validiert Struktur statt Marktnachfrage
53+
====

docs/anchors/red-green-tdd.adoc

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
= Red/Green TDD
2+
:categories: testing-quality
3+
:roles: software-developer, qa-engineer, educator
4+
:related: tdd-chicago-school, tdd-london-school, bdd-given-when-then
5+
:proponents: Kent Beck
6+
:tags: tdd, testing, red-green-refactor, test-first, classical
7+
:tier: 3
8+
9+
[%collapsible]
10+
====
11+
Also known as:: Red-Green-Refactor, Classical TDD Cycle, Test-First Development
12+
13+
[discrete]
14+
== *Core Concepts*:
15+
16+
Red phase:: Write a failing test *first*, before any production code. The test must actually run and fail for the right reason — compilation errors don't count as red.
17+
18+
Green phase:: Write the *minimum* production code required to make the failing test pass. Resist the urge to add functionality the test does not demand.
19+
20+
Refactor phase:: With tests passing, improve the design — rename, extract, deduplicate — confident the test suite will catch regressions.
21+
22+
Small steps:: Each cycle is deliberately small (seconds to minutes), not hours. Large leaps break the feedback loop.
23+
24+
Watch it fail:: Verifying that the test actually fails *before* implementation catches tautological tests and typos in the test itself.
25+
26+
Test names describe behavior:: Not method names. "Returns empty list when no users exist" tells you what the code does; "test getUsers" does not.
27+
28+
Minimum to pass:: Fake it ('return 42'), hardcode, or copy-paste — whatever makes the test pass fastest. Generalization happens in the refactor phase via triangulation.
29+
30+
One test at a time:: Only one failing test in the suite at any moment. Never add a second failing test before the first is green.
31+
32+
33+
Key Proponents:: Kent Beck ("Test-Driven Development: By Example", 2002); popularized for LLM coding agents by Simon Willison
34+
35+
[discrete]
36+
== *When to Use*:
37+
38+
* Instructing LLM coding agents that default to implementing features first and writing tests afterwards
39+
* New production code where requirements can be expressed as concrete examples
40+
* Bug fixes — write a failing test that reproduces the bug, then fix
41+
* Refactoring legacy code that lacks test coverage (start by characterizing behavior)
42+
* Teaching disciplined incremental development
43+
44+
[discrete]
45+
== *Related Anchors*:
46+
47+
* <<tdd-chicago-school,TDD Chicago School>> - State-based classical TDD focused on real objects over mocks
48+
* <<tdd-london-school,TDD London School>> - Mock-heavy, interaction-based, outside-in variant
49+
* <<bdd-given-when-then,BDD Given-When-Then>> - Behavior-driven complement for higher-level acceptance tests
50+
====

docs/anchors/red-green-tdd.de.adoc

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
= Red/Green TDD
2+
:categories: testing-quality
3+
:roles: software-developer, qa-engineer, educator
4+
:related: tdd-chicago-school, tdd-london-school, bdd-given-when-then
5+
:proponents: Kent Beck
6+
:tags: tdd, testing, red-green-refactor, test-first, classical
7+
:tier: 3
8+
9+
[%collapsible]
10+
====
11+
Auch bekannt als:: Red-Green-Refactor, Klassischer TDD-Zyklus, Test-First-Entwicklung
12+
13+
[discrete]
14+
== *Kernkonzepte*:
15+
16+
Red-Phase:: Schreibe *zuerst* einen fehlschlagenden Test, bevor irgendwelcher Produktionscode existiert. Der Test muss tatsächlich laufen und aus dem richtigen Grund scheitern — Kompilierfehler zählen nicht als rot.
17+
18+
Green-Phase:: Schreibe das *Minimum* an Produktionscode, das den fehlgeschlagenen Test grün macht. Widerstehe dem Drang, Funktionalität hinzuzufügen, die der Test nicht verlangt.
19+
20+
Refactor-Phase:: Mit grünen Tests verbessere das Design — umbenennen, extrahieren, Duplikate entfernen — im Vertrauen darauf, dass die Testsuite Regressionen fängt.
21+
22+
Kleine Schritte:: Jeder Zyklus ist bewusst klein (Sekunden bis Minuten), nicht Stunden. Große Sprünge zerstören die Feedback-Schleife.
23+
24+
Scheitern beobachten:: Zu verifizieren, dass der Test tatsächlich *vor* der Implementierung fehlschlägt, fängt tautologische Tests und Tippfehler im Test selbst.
25+
26+
Testnamen beschreiben Verhalten:: Nicht Methodennamen. "Gibt leere Liste zurück, wenn keine Benutzer existieren" sagt, was der Code tut; "test getUsers" nicht.
27+
28+
Minimum zum Bestehen:: "Fake it" (return 42), hardcoden, kopieren — was auch immer den Test am schnellsten grün macht. Verallgemeinerung passiert in der Refactor-Phase durch Triangulation.
29+
30+
Ein Test nach dem anderen:: Zu jedem Zeitpunkt nur ein fehlschlagender Test in der Suite. Niemals einen zweiten fehlschlagenden Test hinzufügen, bevor der erste grün ist.
31+
32+
33+
Schlüsselvertreter:: Kent Beck ("Test-Driven Development: By Example", 2002); für LLM-Coding-Agents popularisiert durch Simon Willison
34+
35+
[discrete]
36+
== *Wann zu verwenden*:
37+
38+
* Instruktion von LLM-Coding-Agents, die standardmäßig Features zuerst implementieren und Tests hinterher schreiben
39+
* Neuer Produktionscode, bei dem Anforderungen als konkrete Beispiele ausgedrückt werden können
40+
* Bugfixes — schreibe einen fehlschlagenden Test, der den Bug reproduziert, dann behebe ihn
41+
* Refactoring von Legacy-Code ohne Testabdeckung (beginne mit Charakterisierungstests)
42+
* Vermittlung disziplinierter inkrementeller Entwicklung
43+
44+
[discrete]
45+
== *Verwandte Anker*:
46+
47+
* <<tdd-chicago-school,TDD Chicago School>> - Zustandsbasiertes klassisches TDD, das echte Objekte statt Mocks bevorzugt
48+
* <<tdd-london-school,TDD London School>> - Mock-lastige, interaktionsbasierte, outside-in Variante
49+
* <<bdd-given-when-then,BDD Given-When-Then>> - Verhaltensgetriebene Ergänzung für höhergelegene Akzeptanztests
50+
====

0 commit comments

Comments
 (0)