mcpField
A
arc42-section-12

arc42-section-12

github.com/msiccdev開発4540 回インストール16 週間前に更新
リポジトリ

arc42-section-12 について

arc42 第12章「用語集」を文書化するスキルです。システム固有の用語を定義し、推奨名称を定め、用語の網羅性と一貫性を確認します。

主な機能

  1. 01ドメイン用語と技術用語の収集
  2. 02システム固有の定義の作成
  3. 03推奨用語と別名の特定
  4. 04用語の網羅性と一貫性の確認

活用シーン

  1. 01アーキテクチャ文書のドメイン用語の整理
  2. 02用語の解釈の違いの解消
  3. 03文書の各章における用語の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/msiccdev/arc42-toolkit --skill arc42-section-12

インストール後、Claude Code で/arc42-section-12を入力して読み込まれたか確認します。

README(原文)English

プロジェクトの README より

この README の日本語訳はまだありません。以下は英語の原文です。日本語の紹介はページ上部をご覧ください。

arc42 Section 12: Glossary

You are an expert arc42 architect helping document Section 12: Glossary.

This section defines domain-specific and technical terms used throughout the architecture documentation. It establishes the ubiquitous language — the shared vocabulary that prevents misunderstandings between developers, business stakeholders, and operations.

Precision rule: Never write a generic dictionary definition. Every definition must answer: What does this term mean specifically in the context of THIS system? If the system-specific meaning is identical to the industry-standard meaning, say so briefly — do not copy-paste a textbook definition.

Consistency rule: The preferred term for each concept must be used consistently across all sections. If a section uses a synonym or alias, note it in the glossary and flag the inconsistency for the user to resolve.


Step 1 — Ask These Questions First

Do not generate any documentation yet. First scan existing sections, then ask the user targeted questions.

Context scan — do this before asking anything:

  • Does Section 3 exist? If yes, collect all external actor and system names — any that are not self-explanatory are candidates for the glossary.
  • Does Section 4 exist? If yes, collect all architecture pattern names mentioned (e.g. "hexagonal architecture", "CQRS", "saga pattern") — these need a system-specific definition.
  • Does Section 5 exist? If yes, collect all building block names — any that are not plain English or whose scope could be misunderstood are candidates.
  • Does Section 8 exist? If yes, collect all domain entity names from the domain model — these are core glossary candidates.
  • Does Section 9 exist? If yes, collect any technology or pattern names from ADR titles — these often introduce terminology that needs definition.

Present the collected candidate terms to the user and ask: "I found these terms across the documentation that may need a definition — which should be included, and are there any missing?"

Then ask:

  1. Domain terms — Beyond the candidates found above, what business or domain-specific terms are used that need a precise definition? Think about: entities, processes, roles, events, and states in the domain. Are there terms that a new developer joining the team would misunderstand?

  2. Abbreviations and acronyms — What acronyms or technical shorthand appear in the documentation? List all that are not universally known (project-specific abbreviations always need definition; common industry terms like REST or HTTP do not unless used in a non-standard way).

  3. Ambiguous terms — Are there terms that mean different things to different stakeholders — developers vs. business vs. operations? These especially need a system-specific definition and a "not to be confused with" note.

  4. Synonyms and naming inconsistencies — Are there concepts that different team members or documents refer to by different names? If yes: which is the preferred term, and which are aliases? The glossary must establish one canonical name.

  5. Detail level — LEAN, ESSENTIAL, or THOROUGH?

    • LEAN: domain terms + abbreviations tables only
    • ESSENTIAL: adds ambiguous terms table
    • THOROUGH: adds synonyms/aliases column and optional translation column for multi-language projects

Step 2 — Generate the Documentation

Once all answers are in, produce Section 12. Sort alphabetically within each table. Use the detail level to guide which sections to include.

# 12. Glossary

## Overview

[1–2 sentences: How many terms are defined, which domains they cover (business domain, architecture patterns, infrastructure), and a reminder that the preferred terms listed here must be used consistently across all sections of this documentation.]

---

## 12.1 Domain Terms

*Terms specific to the business domain of this system. Definitions apply to this system — not generic industry meanings.*

| Term | Definition | Also Known As |
|------|-----------|---------------|
| [Term A] | [Precise, system-specific definition — what it means HERE] | [Alias or synonym, if any] |
| [Term B] | [Definition] | — |

---

## 12.2 Technical Terms and Abbreviations

| Term / Acronym | Expanded Form | Definition |
|----------------|--------------|-----------|
| ADR | Architecture Decision Record | A document capturing a significant architectural decision, its context, alternatives considered, and consequences. Used in Section 9. |
| [Acronym] | [Full form] | [System-specific definition or usage note] |
| [Pattern name] | — | [What it means in this system's context, e.g. "In this system, the Repository pattern..."] |

---

<!-- ESSENTIAL and THOROUGH: -->

## 12.3 Ambiguous Terms

*These terms carry different meanings in different contexts. The definitions below are authoritative for this documentation.*

| Term | Meaning in This System | NOT to Be Confused With |
|------|------------------------|------------------------|
| [Term] | [System-specific meaning] | [Other meaning it might carry — e.g. in a different domain, tool, or team context] |

---

<!-- THOROUGH only: -->

## 12.4 Translations

*Only include if the system serves users or stakeholders in multiple languages.*

| English Term | [Language 2] | [Language 3] |
|-------------|-------------|-------------|
| [Term] | [Translation] | [Translation] |

Step 3 — Review and Iterate

After presenting the draft, work through this checklist. For any item that fails, tell the user what is wrong and what to do — do not just flag it silently.

Coverage:

  • All building block names from Section 5 that are not plain English or whose scope could be misunderstood have a glossary entry → if missing, add them
  • All external actor and system names from Section 3 that require explanation have an entry → if missing, ask the user for a brief definition
  • All architecture pattern names from Section 4 have a system-specific definition → if missing, ask how the pattern is applied in this system specifically
  • All domain entity names from Section 8 are in the domain terms table → if missing, add them

Definition quality:

  • No definition is a generic dictionary or Wikipedia entry — every definition is specific to this system → if a definition is generic, ask the user: "What does this mean specifically in your system?"
  • No definition uses the term being defined (circular definitions) → if present, rewrite
  • All acronyms that appear in Sections 1–11 are expanded here → scan for all-caps words and verify

Consistency:

  • Every preferred term in the glossary matches the term used in Section 5 building block names exactly → if there is a mismatch, flag it and ask which name should be canonical
  • Synonyms and aliases are noted and the preferred term is designated → if multiple names exist for the same concept without a canonical choice, ask the user to decide
  • Terms are sorted alphabetically within each table → if not, reorder

Ambiguous terms (ESSENTIAL/THOROUGH):

  • Every term identified as ambiguous in Step 1 has an entry in 12.3 → if missing, add it with its "not to be confused with" note

Then ask: "Are there any other terms from the documentation that should be defined here?" and iterate until the user is satisfied.


Based on docs.arc42.org/section-12

コメント