data-architecture-design
Skill8 starsChanged 6 months agoMITView on GitHub
Create data architecture design documents for a specific canonical data object, including integration traceability, ownership, lifecycle, quality, privacy, and governance. Use when the user asks to design, document, review, or update the architecture of a data object and link it to Target Architecture Phase C.
In this repository17 other files it gives its agents.
- AGENTS.mdAGENTS.md
- architecture-decision-recordSkill
- assess-solutionSkill
- capability-overviewSkill
- check-readabilitySkill
- create-an-agentSkill
- create-a-skillSkill
- create-drawio-diagramSkill
- grill-meSkill
- integration-designSkill
- problem-to-solutionSkill
- publish-to-confluenceSkill
- solution-architecture-designSkill
- target-architecture-documentSkill
- to-epicsSkill
- ubiquitous-languageSkill
- write-a-principleSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
37 rules. About 0 are common, 21 are distinctive, and 16 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈21
Distinctive · estimate
This author's own choices. Worth a look.
16
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 16
Use templates/data-architecture-design-template.md as the output structure.
- Very specific: line 27
When <data-object-slug> ends in -data, use <data-object-slug>-architecture-design.
- Very specific: line 29
Never generate a filename containing -data-data-.
- Distinctive: line 33
Do not write real-company data architecture details into this public toolkit repository.
- Distinctive: line 49
Ask which target architecture document this data architecture design supports.
- Very specific: line 50
Start a mandatory grill-me clarification session using ../grill-me/SKILL.md.
- Very specific: line 60
After the clarification session, validate that <private-lab-root>/GLOSSARY.md was created or updated during the current run.
- Distinctive: line 61
Ask for the canonical data object, source of truth, owner, main capability, producers, consumers, and known integrations when still not …
- Very specific: line 63
Create or update <data-architecture-basename>.md from templates/data-architecture-design-template.md.
- Distinctive: line 64
Create diagrams that make the data architecture understandable:
- Very specific: line 67
Create every Draw.io diagram with ../create-drawio-diagram/SKILL.md because it contains the required diagram instructions, style rules, and …
- Very specific: line 70
Add it to the ## Data Architecture Designs table in 06-phase-c-data-architecture.md when section files exist.
- Distinctive: line 73
Run the glossary and readability gate before final delivery:
- Very specific: line 77
Run the check-readability skill in ../check-readability/SKILL.md on the data architecture design.
- Very specific: line 78
Update the top-table Readability Score row with the rounded numeric Flesch Reading Ease score.
- Distinctive: line 80
If the score remains below 40, make sure there are no sentences over 30 words in stakeholder-facing sections and explain any unavoidable …
- Very specific: line 86
Start with the document metadata table, then the Data Architecture Overview table with the data object, source of truth, main capability, …
- Very specific: line 88
Write stakeholder-facing sections in plain business language first: Short Summary, Description, Data Flow, Ownership and Source of Truth, …
- Distinctive: line 89
Prefer short sentences and active voice.
- Distinctive: line 90
Keep dense implementation detail in tables or linked integration designs.
- Distinctive: line 91
Treat the data architecture design as the source of truth for the canonical data model.
- Distinctive: line 96
Document data quality rules, validation points, reconciliation, lineage, observability, and stewardship responsibilities.
- Distinctive: line 98
Keep relevant links bidirectional.
- Very specific: line 99
Use linked document names as link labels.
- Distinctive: line 114
If the score remains below 40, stakeholder-facing sections have no sentences over 30 words and any unavoidable specialist terms are briefly …
- Very specific: line 119
Use ../create-drawio-diagram/templates/data-architecture-diagram.drawio as the starting point for the Data Architecture Design diagram.
- Distinctive: line 124
Treat the New Webshop and Backend-for-Frontend as a related stack.
- Distinctive: line 125
Do not add a standalone box, node, or component for the canonical data object.
- Distinctive: line 126
Use the business data object name in a connector label only when it helps distinguish the flow.
- Distinctive: line 129
Keep the diagram focused on integration traceability for the data object.
- Distinctive: line 133
Use this table shape in Target Architecture Phase C:
- Distinctive: line 145
Keep real-company data architecture designs in a private company lab repository.
- Very specific: line 146
Write generated files to <private-lab-root>/data-architectures/, not inside this public toolkit repository.
- Distinctive: line 147
Do not create or update a data architecture design without an explicit target architecture link.
- Very specific: line 148
Do not create or update a data architecture design without first running the grill-me clarification session and updating the private lab …
- Distinctive: line 149
Do not invent internal system names, data fields, classifications, retention periods, integration contracts, or non-public business context.
- Distinctive: line 150
Do not overwrite existing documents or diagrams unless the user explicitly asks.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Data Architecture Design
Quick Start
Assume the Data Architect Agent role from agents/data-architect.md: clarify the canonical data object, ownership, source of truth, lifecycle, quality, privacy, retention, integration flows, and governance expectations.
Before creating or updating any data architecture design files, run a grill-me clarification session using ../grill-me/SKILL.md. Ask one question at a time until the target architecture link, data object meaning, ownership, lifecycle, integrations, quality expectations, privacy concerns, assumptions, and open questions are clear enough to avoid avoidable misunderstanding.
During that clarification session, use ../ubiquitous-language/SKILL.md whenever terms are vague, missing, overloaded, conflicting, or important enough to become shared domain language. Create or update <private-lab-root>/GLOSSARY.md inline as terms are clarified; do not batch glossary updates until the end.
Use templates/data-architecture-design-template.md as the output structure. Replace placeholders and drafting guidance with concrete content; mark unknown facts as TBD or open questions.
Store generated data architecture designs under the consuming repository's private lab root:
data-architectures/<data-object-slug>/<data-architecture-basename>.md
data-architectures/<data-object-slug>/diagrams/Derive <data-architecture-basename> without repeating data:
- When
<data-object-slug>ends in-data, use<data-object-slug>-architecture-design. - Otherwise, use
<data-object-slug>-data-architecture-design. - Never generate a filename containing
-data-data-.
Examples: customer-data becomes customer-data-architecture-design.md, customer-user-data becomes customer-user-data-architecture-design.md, and audiences becomes audiences-data-architecture-design.md.
Do not write real-company data architecture details into this public toolkit repository.
Required Inputs
- Target architecture document to link to
- Canonical data object name
- Data object description and business purpose
- Main capability or business process using the data object
- Source of truth and data owner
- Data classification
- Producing systems, consuming systems, and integration touchpoints
- Data lifecycle states, retention, privacy, and classification expectations
- Known quality rules, reconciliation needs, lineage needs, and governance constraints
Workflow
- Ask which target architecture document this data architecture design supports. Read it when a path is provided.
- Start a mandatory
grill-meclarification session using../grill-me/SKILL.md. Ask one question at a time and cover:- Canonical data object meaning and aliases
- Business purpose and main capability
- Source of truth, data owner, steward, allowed writers, and consumers
- Producing systems, consuming systems, integrations, and transformations
- Lifecycle states, retention, archival, deletion, audit, and exception handling
- Quality rules, reconciliation, lineage, observability, and operational ownership
- Privacy, classification, access, residency, masking, encryption, and compliance constraints
- Assumptions, unresolved decisions, and open questions
- During the
grill-mesession, validate terminology against<private-lab-root>/GLOSSARY.md. If the data object, applications, capabilities, integrations, lifecycle states, or important terms are missing or ambiguous, use../ubiquitous-language/SKILL.mdimmediately to update the private lab glossary. - After the clarification session, validate that
<private-lab-root>/GLOSSARY.mdwas created or updated during the current run. If it was not created or updated, stop before generating data architecture files and ask the user to rungrill-mefollowed byubiquitous-languageso the glossary is updated first. - Ask for the canonical data object, source of truth, owner, main capability, producers, consumers, and known integrations when still not provided.
- Determine the output folder as
<private-lab-root>/data-architectures/<data-object-slug>/and derive<data-architecture-basename>with the naming rule above. - Create or update
<data-architecture-basename>.mdfromtemplates/data-architecture-design-template.md. Replace{{DATA_ARCHITECTURE_BASENAME}}with the derived basename. Preserve the two opening tables: the document metadata table first, followed by theData Architecture Overviewtable. - Create diagrams that make the data architecture understandable:
- Data Architecture Design diagram at
diagrams/<data-architecture-basename>.drawiofrom../create-drawio-diagram/templates/data-architecture-diagram.drawio, showing systems, interfaces, events, files, APIs, or batches - Optional conceptual data model when the object has important relationships
- Data Architecture Design diagram at
- Create every Draw.io diagram with
../create-drawio-diagram/SKILL.mdbecause it contains the required diagram instructions, style rules, and templates. Store each editable.drawiosource indiagrams/. - Export a same-basename
.svgfile for each Draw.io diagram that must be embedded, embed the SVG in the document, and link the.drawiosource near the embedded SVG. - Link the data architecture design from Phase C of the target architecture:
- Add it to the
## Data Architecture Designstable in06-phase-c-data-architecture.mdwhen section files exist. - Also update the assembled
target-architecture-document.mdwhen it exists.
- Populate
## Relevant Linkswith the target architecture, capability overview, solution architecture design, integration designs, ADRs, and glossary references that are explicitly related. Use linked document titles as Markdown link labels when available. - Run the glossary and readability gate before final delivery:
- Read
<private-lab-root>/GLOSSARY.md. - In the Glossary, find the
Jargonsection and its Avoid list. - Replace avoidable jargon in stakeholder-facing sections:
## Short Summary,## Description,## Data Flow,## Ownership and Source of Truth,## Lifecycle,## Data Quality and Lineage, and## Privacy, Security, and Compliance. - Run the
check-readabilityskill in../check-readability/SKILL.mdon the data architecture design. - Update the top-table
Readability Scorerow with the rounded numeric Flesch Reading Ease score. - Aim to improve the full document toward a Flesch Reading Ease score of 40-50, while allowing lower scores when architecture documents require specialist terms.
- If the score remains below 40, make sure there are no sentences over 30 words in stakeholder-facing sections and explain any unavoidable specialist terms.
- Capture unresolved ownership, lineage, quality, retention, privacy, integration, and operational facts as open questions rather than inventing details.
Writing Guidance
- Center the document on one canonical data object.
- Start with the document metadata table, then the
Data Architecture Overviewtable with the data object, source of truth, main capability, data owner, and classification. - Include a
Short Summarysection beforeDescriptionthat gives the business meaning, ownership, and main architecture concern in a few plain-language sentences. - Write stakeholder-facing sections in plain business language first:
Short Summary,Description,Data Flow,Ownership and Source of Truth,Lifecycle,Data Quality and Lineage, andPrivacy, Security, and Compliance. - Prefer short sentences and active voice. Use technical terms only when they affect ownership, risk, integration behavior, support, privacy, or a decision.
- Keep dense implementation detail in tables or linked integration designs.
- Treat the data architecture design as the source of truth for the canonical data model. Solution architecture documents should reference this model and describe application-specific usage, not redefine it.
- Be explicit about source of truth, authoritative owner, allowed writers, and downstream consumers.
- Identify data lifecycle states, create/update/delete behavior, retention, archival, purge, and audit requirements.
- Describe data movement in business terms first, then technical integration details.
- Link related integration designs instead of duplicating full interface contracts.
- Document data quality rules, validation points, reconciliation, lineage, observability, and stewardship responsibilities.
- Include privacy and security concerns such as classification, sensitive attributes, access controls, consent, residency, masking, encryption, and audit logging.
- Keep relevant links bidirectional. If the data architecture design is linked from Target Architecture Phase C, link back to the target architecture from the data architecture design.
- Use linked document names as link labels. For local Markdown files, derive the name from the first
#heading; otherwise use the filename without extension. - Maintain
<private-lab-root>/GLOSSARY.mdwhile writing whenever the design introduces or changes domain terms, applications, canonical data objects, lifecycle states, integration names, ownership roles, relationships, jargon, deprecated terms, or words to avoid.
Readability Requirements
Data architecture designs are stakeholder-facing architecture documents. Architects and delivery teams need enough detail to act, but the opening and ownership sections must be understandable to non-technical business stakeholders.
Use the check-readability skill in ../check-readability/SKILL.md before finishing a data architecture design. Treat the target audience as non-technical business stakeholders unless the user gives a different audience. Aim to improve the Flesch Reading Ease score toward 40-50, but allow lower scores when required architecture terms, legal terms, data object names, system names, or quoted source text make that target impractical.
The data architecture design is not complete until the readability check confirms these expectations:
- The top metadata table's
Readability Scorerow contains the rounded numeric Flesch Reading Ease score. - Glossary
Jargonterms from<private-lab-root>/GLOSSARY.mdare removed from stakeholder-facing sections unless they are quoted source text or explicit glossary references. - Preferred glossary terms are used exactly when the glossary gives one. If a preferred term is missing or unclear, use plain language and capture the terminology gap as an open question.
- Acronyms and specialist terms are explained the first time they appear unless they are already defined in
GLOSSARY.md. - If the score remains below 40, stakeholder-facing sections have no sentences over 30 words and any unavoidable specialist terms are briefly explained.
- Long table cells are moved into notes, linked integration designs, or later technical sections when they make ownership, quality, lifecycle, privacy, risks, or decisions hard to scan.
Data Architecture Design Diagram Format
Use ../create-drawio-diagram/templates/data-architecture-diagram.drawio as the starting point for the Data Architecture Design diagram. Follow the Data Architecture Diagram Layout rules in ../create-drawio-diagram/SKILL.md.
Adapt the data architecture overview elements to show the data object's source systems, owners, consumers, integrations, governance touchpoints, and external systems.
- Always place the Backend-for-Frontend directly below the New Webshop component. Keep both components inside the Frontend layer and align them on the same x-position. Prefer a vertical connector from the lower component's explicit outer top-center boundary to the upper component's bottom-center boundary. Use side ports in adjacent whitespace when the vertical route would be crowded or ambiguous.
- Treat the New Webshop and Backend-for-Frontend as a related stack. Place other peer components horizontally instead of stacking them vertically unless they are part of the same direct end-to-end flow.
- Do not add a standalone box, node, or component for the canonical data object. Show where the data is mastered, stored, transformed, and consumed through the named system or capability components and their labeled connectors.
- Use the business data object name in a connector label only when it helps distinguish the flow. Do not represent the same data object as an application or architecture component.
- Route every connector through whitespace between components. A connector may touch its source and target only at deliberate boundary ports; every other segment must stay at least 10 px from component bodies, application headers, layer labels, and other connector labels. A connector may attach to the outer top-center boundary of a composite component with an application-name header only when it immediately travels outward and never enters the header interior. Move components, enlarge layer bands, choose an unobstructed side or bottom port, and add explicit orthogonal waypoints until the complete rendered route is clear.
- Omit deprecated components and their connectors from the diagram. When their status still affects the design, explain it in the document rather than adding it to the diagram.
- Keep the diagram focused on integration traceability for the data object; put interface detail in the Data Architecture Design table or linked integration designs.
Phase C Link Format
Use this table shape in Target Architecture Phase C:
## Data Architecture Designs
| Data Architecture Design | Data Object | Source of Truth | Description |
| ----------------------------------------------------------------------- | --------------- | ------------------- | --------------- |
| [{{DATA_ARCHITECTURE_DESIGN_TITLE}}]({{DATA_ARCHITECTURE_DESIGN_LINK}}) | {{DATA_OBJECT}} | {{SOURCE_OF_TRUTH}} | {{DESCRIPTION}} |Guardrails
- Keep real-company data architecture designs in a private company lab repository.
- Write generated files to
<private-lab-root>/data-architectures/, not inside this public toolkit repository. - Do not create or update a data architecture design without an explicit target architecture link.
- Do not create or update a data architecture design without first running the
grill-meclarification session and updating the private lab glossary withubiquitous-languagewhen terminology is missing or unclear. - Do not invent internal system names, data fields, classifications, retention periods, integration contracts, or non-public business context.
- Do not overwrite existing documents or diagrams unless the user explicitly asks.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

