diff --git a/docs/all-anchors.adoc b/docs/all-anchors.adoc index 0bafe16..9e99e04 100644 --- a/docs/all-anchors.adoc +++ b/docs/all-anchors.adoc @@ -105,6 +105,8 @@ include::anchors/adr-according-to-nygard.adoc[leveloffset=+2] include::anchors/arc42.adoc[leveloffset=+2] +include::anchors/atam.adoc[leveloffset=+2] + include::anchors/c4-diagrams.adoc[leveloffset=+2] include::anchors/clean-architecture.adoc[leveloffset=+2] diff --git a/docs/anchors/atam.adoc b/docs/anchors/atam.adoc new file mode 100644 index 0000000..0f9615b --- /dev/null +++ b/docs/anchors/atam.adoc @@ -0,0 +1,46 @@ += ATAM +:categories: software-architecture +:roles: software-architect, team-lead, product-owner +:related: arc42, adr-according-to-nygard +:proponents: Rick Kazman, Mark Klein, Paul Clements +:tags: architecture evaluation, quality attributes, tradeoffs, utility tree, SEI, risk analysis + +[%collapsible] +==== +Full Name:: Architecture Tradeoff Analysis Method + +Also known as:: Architecture Evaluation, ATAM Review + +[discrete] +== *Core Concepts*: + +Utility Tree:: Hierarchical decomposition of system quality goals into concrete, prioritized quality attribute scenarios (e.g., Performance → Response Time → "Search results returned in < 1s under peak load") + +Quality Attribute Scenarios:: Testable, concrete expressions of quality requirements consisting of stimulus, source, environment, artifact, response, and response measure + +Architectural Approaches:: Design decisions and patterns (e.g., caching, replication, layering) used to achieve quality attributes + +Sensitivity Points:: Architectural decisions that significantly affect one specific quality attribute + +Tradeoff Points:: Architectural decisions that affect two or more quality attributes in conflicting ways — the core insight of ATAM + +Risks and Non-risks:: Identified architectural decisions that may (risks) or demonstrably will not (non-risks) lead to future problems + +Nine-step process:: Presentation of ATAM → presentation of business drivers → presentation of architecture → identification of architectural approaches → generation of utility tree → analysis of architectural approaches → brainstorming scenarios → analysis of scenarios → presentation of results + +Key Proponents:: Rick Kazman, Mark Klein, Paul Clements (SEI / Carnegie Mellon University) + +[discrete] +== *When to Use*: + +* Evaluating a software architecture before major investment in implementation +* When multiple stakeholders have conflicting quality requirements (e.g., performance vs. security) +* During architecture reviews of safety-critical or high-availability systems +* When making buy-vs.-build decisions or selecting between competing architectural styles + +[discrete] +== *Related Anchors*: + +* <> +* <> +==== diff --git a/docs/anchors/atam.de.adoc b/docs/anchors/atam.de.adoc new file mode 100644 index 0000000..f470cc6 --- /dev/null +++ b/docs/anchors/atam.de.adoc @@ -0,0 +1,46 @@ += ATAM +:categories: software-architecture +:roles: software-architect, team-lead, product-owner +:related: arc42, adr-according-to-nygard +:proponents: Rick Kazman, Mark Klein, Paul Clements +:tags: architecture evaluation, quality attributes, tradeoffs, utility tree, SEI, risk analysis + +[%collapsible] +==== +Vollständiger Name:: Architecture Tradeoff Analysis Method (Architektur-Kompromiss-Analysemethode) + +Auch bekannt als:: Architekturbewertung, ATAM-Review + +[discrete] +== *Kernkonzepte*: + +Utility Tree:: Hierarchische Zerlegung von Systemqualitätszielen in konkrete, priorisierte Qualitätsattribut-Szenarien (z.B. Performance → Antwortzeit → „Suchergebnisse werden in < 1s unter Spitzenlast geliefert") + +Qualitätsattribut-Szenarien:: Testbare, konkrete Ausdrücke von Qualitätsanforderungen bestehend aus Stimulus, Quelle, Umgebung, Artefakt, Reaktion und Reaktionsmaß + +Architekturansätze:: Entwurfsentscheidungen und Muster (z.B. Caching, Replikation, Schichtung), die zur Erreichung von Qualitätsattributen eingesetzt werden + +Sensitivitätspunkte:: Architekturentscheidungen, die ein bestimmtes Qualitätsattribut maßgeblich beeinflussen + +Kompromißpunkte (Tradeoff Points):: Architekturentscheidungen, die zwei oder mehr Qualitätsattribute in widersprüchlicher Weise beeinflussen — die zentrale Erkenntnis von ATAM + +Risiken und Nicht-Risiken:: Identifizierte Architekturentscheidungen, die zu zukünftigen Problemen führen können (Risiken) oder nachweislich nicht führen werden (Nicht-Risiken) + +Neunstufiger Prozess:: Präsentation von ATAM → Darstellung der Geschäftsziele → Präsentation der Architektur → Identifikation von Architekturansätzen → Erstellung des Utility Tree → Analyse der Architekturansätze → Brainstorming von Szenarien → Analyse der Szenarien → Präsentation der Ergebnisse + +Schlüsselvertreter:: Rick Kazman, Mark Klein, Paul Clements (SEI / Carnegie Mellon University) + +[discrete] +== *Wann zu verwenden*: + +* Bewertung einer Softwarearchitektur vor größeren Investitionen in die Implementierung +* Wenn mehrere Stakeholder widersprüchliche Qualitätsanforderungen haben (z.B. Performance vs. Sicherheit) +* Bei Architekturreviews von sicherheitskritischen oder hochverfügbaren Systemen +* Bei Kauf-vs.-Bau-Entscheidungen oder der Auswahl zwischen konkurrierenden Architekturstilen + +[discrete] +== *Verwandte Anker*: + +* <> +* <> +==== diff --git a/website/public/data/anchors.json b/website/public/data/anchors.json index 1946096..f231223 100644 --- a/website/public/data/anchors.json +++ b/website/public/data/anchors.json @@ -34,6 +34,36 @@ "tags": [], "filePath": "docs/anchors/arc42.adoc" }, + { + "id": "atam", + "title": "ATAM", + "categories": [ + "software-architecture" + ], + "roles": [ + "software-architect", + "team-lead", + "product-owner" + ], + "related": [ + "arc42", + "adr-according-to-nygard" + ], + "proponents": [ + "Rick Kazman", + "Mark Klein", + "Paul Clements" + ], + "tags": [ + "architecture evaluation", + "quality attributes", + "tradeoffs", + "utility tree", + "SEI", + "risk analysis" + ], + "filePath": "docs/anchors/atam.adoc" + }, { "id": "bem-methodology", "title": "BEM Methodology", diff --git a/website/public/data/categories.json b/website/public/data/categories.json index dbcb0f5..e5675bd 100644 --- a/website/public/data/categories.json +++ b/website/public/data/categories.json @@ -84,6 +84,7 @@ "anchors": [ "adr-according-to-nygard", "arc42", + "atam", "c4-diagrams", "clean-architecture", "domain-driven-design", diff --git a/website/public/data/metadata.json b/website/public/data/metadata.json index b638def..615af9d 100644 --- a/website/public/data/metadata.json +++ b/website/public/data/metadata.json @@ -1,5 +1,5 @@ { - "generatedAt": "2026-03-06T17:54:22.119Z", + "generatedAt": "2026-03-06T17:47:31.258Z", "version": "1.0.0", "counts": { "anchors": 55, diff --git a/website/public/data/roles.json b/website/public/data/roles.json index 30b2f09..01074c4 100644 --- a/website/public/data/roles.json +++ b/website/public/data/roles.json @@ -97,6 +97,7 @@ "id": "product-owner", "name": "Product Owner / Product Manager", "anchors": [ + "atam", "chatham-house-rule", "cynefin-framework", "impact-mapping", @@ -135,6 +136,7 @@ "anchors": [ "adr-according-to-nygard", "arc42", + "atam", "c4-diagrams", "clean-architecture", "cynefin-framework", @@ -203,6 +205,7 @@ "anchors": [ "adr-according-to-nygard", "arc42", + "atam", "bluf", "c4-diagrams", "chatham-house-rule", diff --git a/website/public/sitemap.xml b/website/public/sitemap.xml index c9bd7a9..b778900 100644 --- a/website/public/sitemap.xml +++ b/website/public/sitemap.xml @@ -3,7 +3,7 @@ https://llm-coding.github.io/Semantic-Anchors/ - 2026-02-16 + 2026-03-06 weekly 1.0 @@ -11,7 +11,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/about - 2026-02-16 + 2026-03-06 monthly 0.8 @@ -19,7 +19,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/contributing - 2026-02-16 + 2026-03-06 monthly 0.7 @@ -27,7 +27,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/adr-according-to-nygard - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -35,7 +35,15 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/arc42 - 2026-02-16 + 2026-03-06 + monthly + 0.6 + + + + + https://llm-coding.github.io/Semantic-Anchors/#/anchor/atam + 2026-03-06 monthly 0.6 @@ -43,7 +51,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/bem-methodology - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -51,7 +59,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/bluf - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -59,7 +67,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/c4-diagrams - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -67,7 +75,15 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/chain-of-thought - 2026-02-16 + 2026-03-06 + monthly + 0.6 + + + + + https://llm-coding.github.io/Semantic-Anchors/#/anchor/chatham-house-rule + 2026-03-06 monthly 0.6 @@ -75,7 +91,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/clean-architecture - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -83,7 +99,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/control-chart-shewhart - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -91,7 +107,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/conventional-commits - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -99,15 +115,15 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/cynefin-framework - 2026-02-16 + 2026-03-06 monthly 0.6 - + https://llm-coding.github.io/Semantic-Anchors/#/anchor/devils-advocate - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -115,7 +131,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/diataxis-framework - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -123,7 +139,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/docs-as-code - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -131,15 +147,15 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/domain-driven-design - 2026-02-16 + 2026-03-06 monthly 0.6 - + https://llm-coding.github.io/Semantic-Anchors/#/anchor/dry-principle - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -147,7 +163,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/ears-requirements - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -155,7 +171,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/feynman-technique - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -163,7 +179,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/five-whys - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -171,15 +187,23 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/fowler-patterns - 2026-02-16 + 2026-03-06 + monthly + 0.6 + + + + + https://llm-coding.github.io/Semantic-Anchors/#/anchor/gom + 2026-03-06 monthly 0.6 - + https://llm-coding.github.io/Semantic-Anchors/#/anchor/hexagonal-architecture - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -187,7 +211,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/iec-61508-sil-levels - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -195,7 +219,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/impact-mapping - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -203,7 +227,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/jobs-to-be-done - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -211,7 +235,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/madr - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -219,7 +243,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/mece - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -227,7 +251,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/mental-model-according-to-naur - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -235,7 +259,15 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/morphological-box - 2026-02-16 + 2026-03-06 + monthly + 0.6 + + + + + https://llm-coding.github.io/Semantic-Anchors/#/anchor/moscow + 2026-03-06 monthly 0.6 @@ -243,7 +275,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/mutation-testing - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -251,7 +283,15 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/nelson-rules - 2026-02-16 + 2026-03-06 + monthly + 0.6 + + + + + https://llm-coding.github.io/Semantic-Anchors/#/anchor/owasp-top-10 + 2026-03-06 monthly 0.6 @@ -259,7 +299,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/problem-space-nvc - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -267,7 +307,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/property-based-testing - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -275,7 +315,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/pugh-matrix - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -283,7 +323,15 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/pyramid-principle - 2026-02-16 + 2026-03-06 + monthly + 0.6 + + + + + https://llm-coding.github.io/Semantic-Anchors/#/anchor/regulated-environment + 2026-03-06 monthly 0.6 @@ -291,7 +339,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/rubber-duck-debugging - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -299,7 +347,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/semantic-versioning - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -307,7 +355,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/socratic-method - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -315,7 +363,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/solid-principles - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -323,7 +371,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/sota - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -331,7 +379,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/spc - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -339,7 +387,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/spot-principle - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -347,7 +395,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/ssot-principle - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -355,7 +403,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/tdd-chicago-school - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -363,7 +411,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/tdd-london-school - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -371,7 +419,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/testing-pyramid - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -379,7 +427,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/timtowtdi - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -387,7 +435,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/todotxt-flavoured-markdown - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -395,7 +443,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/user-story-mapping - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -403,7 +451,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/wardley-mapping - 2026-02-16 + 2026-03-06 monthly 0.6 @@ -411,7 +459,7 @@ https://llm-coding.github.io/Semantic-Anchors/#/anchor/what-qualifies-as-a-semantic-anchor - 2026-02-16 + 2026-03-06 monthly 0.6