Compare commits

..
2 Commits
Author SHA1 Message Date
Tirsvad 02b520b570 Merge pull request 'Add QC-LANG-001 (language and domain); rewrite QC-DICT-001 criterion 7' (#4) from language-domain-checklist into main
TirSystem/github-action: Sync GitHub mirror metadata / sync-metadata (push) Successful in 5s
Reviewed-on: #4
2026-10-05 07:18:56 +02:00
TirsvadandClaude Sonnet 5.5 95e18adcf6 Add QC-LANG-001 (language and domain) and rewrite QC-DICT-001 criterion 7
QC-LANG-001 is a cross-cutting checklist for every artifact type written in the
Product Owner's language: Language and Domain metadata, content in the stated
language and register, domain terms from the dictionary, structural vocabulary
in English, no translated twin, a language change reviewed again, and domain
terms confirmed by a competent reviewer. Ten criteria, each tagged with an
ISO/IEC 25010:2023 characteristic.

QC-DICT-001 criterion 7 no longer checks translated artifacts (there are none
under the single-file rule); it checks that the dictionary's language and domain
match the project registry. Both checklists are Proposed.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-03 08:45:23 +08:00
3 changed files with 61 additions and 3 deletions
+2
View File
@@ -11,6 +11,8 @@ ISO/IEC 25010:2023 quality characteristic.
Model Canvas, BPMN, Governance, Milestones and gateways Model Canvas, BPMN, Governance, Milestones and gateways
- Requirements and design: Use Case Diagram, Use Case, User Story, Domain Model, - Requirements and design: Use Case Diagram, Use Case, User Story, Domain Model,
SSD, Operation Contract, Sequence Diagram, DCD, ERD, ADR SSD, Operation Contract, Sequence Diagram, DCD, ERD, ADR
- Cross-cutting: Language and Domain (applies to every artifact type written in
the Product Owner's language), Domain Dictionary
- Source code: Python, C, C++, C# - Source code: Python, C, C++, C#
## Use ## Use
+6 -3
View File
@@ -4,12 +4,13 @@
| Key | Value | | Key | Value |
| --- | --- | | --- | --- |
| ID | QC-DICT-001 | | ID | QC-DICT-001 |
| CrossReference | [QC-DM-001], [QC-OC-001], [QC-DCD-001] | | CrossReference | [QC-DM-001], [QC-OC-001], [QC-DCD-001], [QC-LANG-001] |
## Version History ## Version History
| Date | Status | Author | Reviewer | Change | Commit | | Date | Status | Author | Reviewer | Change | Commit |
| --- | --- | --- | --- | --- | --- | | --- | --- | --- | --- | --- | --- |
| 2026-10-02 | Accepted | Jens Tirsvad Nielsen | S07 | Initial version | — | | 2026-10-02 | Accepted | Jens Tirsvad Nielsen | S07 | Initial version | — |
| 2026-10-03 | Proposed | Jens Tirsvad Nielsen | S07 | Criterion 7 rewritten for the single-file rule (no translated twins); QC-LANG-001 added to CrossReference | — |
--- ---
@@ -29,7 +30,7 @@ Level: **Mandatory** criteria are the baseline every instance must meet; **Optio
| 4 | The Operation Contracts, Sequence Diagrams, Design Class Diagrams and ERD use the IT term, not the PO term | Mandatory | Maintainability | A PO term in design artifacts is a defect | | 4 | The Operation Contracts, Sequence Diagrams, Design Class Diagrams and ERD use the IT term, not the PO term | Mandatory | Maintainability | A PO term in design artifacts is a defect |
| 5 | Definitions are written in the PO language and are one sentence | Optional | Usability | | | 5 | Definitions are written in the PO language and are one sentence | Optional | Usability | |
| 6 | "Used as PO term in" and "Used as IT term in" name artifact types that exist in the project | Optional | Maintainability | | | 6 | "Used as PO term in" and "Used as IT term in" name artifact types that exist in the project | Optional | Maintainability | |
| 7 | Translated artifacts (`<artifact>.<language>.md`) use the PO terms of the dictionary | Mandatory | Usability, Maintainability | Applies only when the PO language is not English | | 7 | The dictionary's `Language` and `Domain` rows, and the language of every row, match the PO language and domain in the project registry | Mandatory | Usability, Maintainability | Replaces the translated-artifacts check: there is no translated twin, the PO-language file is the artifact. Whether other artifacts use the dictionary's terms is checked by the language and domain checklist ([QC-LANG-001]) |
## Common Defects ## Common Defects
@@ -37,14 +38,16 @@ Level: **Mandatory** criteria are the baseline every instance must meet; **Optio
- The IT term used in the Domain Model, or the PO term in a design class - The IT term used in the Domain Model, or the PO term in a design class
- Two PO terms for one IT term - Two PO terms for one IT term
- A definition copied from the IT term in the wrong language - A definition copied from the IT term in the wrong language
- A dictionary whose `Domain` row differs from the PO domain, or that mixes terms of two domains
## Traceability Rule ## Traceability Rule
- Backward: Every row traces to a concept in the Domain Model checklist ([QC-DM-001]) or a term in the Business Case - Backward: Every row traces to a concept in the Domain Model checklist ([QC-DM-001]) or a term in the Business Case
- Forward: Feeds the Operation Contract ([QC-OC-001]) and Design Class Diagram ([QC-DCD-001]) checklists, which must use the IT terms - Forward: Feeds the Operation Contract ([QC-OC-001]) and Design Class Diagram ([QC-DCD-001]) checklists, which must use the IT terms, and the language and domain checklist ([QC-LANG-001]), which checks that PO-language artifacts use the PO terms
--- ---
[QC-DM-001]: ./qc-domain-model.md [QC-DM-001]: ./qc-domain-model.md
[QC-OC-001]: ./qc-operation-contract.md [QC-OC-001]: ./qc-operation-contract.md
[QC-DCD-001]: ./qc-dcd.md [QC-DCD-001]: ./qc-dcd.md
[QC-LANG-001]: ./qc-language-domain.md
+53
View File
@@ -0,0 +1,53 @@
# Quality Criteria: Language and Domain
## Metadata
| Key | Value |
| --- | --- |
| ID | QC-LANG-001 |
| CrossReference | [QC-DICT-001] |
## Version History
| Date | Status | Author | Reviewer | Change | Commit |
| --- | --- | --- | --- | --- | --- |
| 2026-10-03 | Proposed | Jens Tirsvad Nielsen | S07 | Initial version | — |
---
## Purpose
Every artifact of a type written in the Product Owner's (PO's) language exists once, in that language and in the vocabulary of its professional domain (for example medical or construction engineering, even when the language is English). This checklist decides whether such an artifact can be read and reviewed by the people it is for. It is cross-cutting: apply it in addition to the checklist of the artifact's own type, to every artifact type the project registry marks as written in the PO language.
## Quality Criteria Checklist
Level: **Mandatory** criteria are the baseline every instance must meet; **Optional** criteria are advanced and may be deferred.
| # | Criterion | Level | ISO/IEC 25010 Characteristic(s) | Notes |
| --- | --- | --- | --- | --- |
| 1 | The Metadata table has a `Language` row and a `Domain` row, and neither is a placeholder | Mandatory | Usability, Maintainability | A reviewer must see at once how to read the document |
| 2 | `Language` is a BCP 47 code and `Domain` is a value from the registry's domain list | Mandatory | Maintainability | Free-text values cannot be listed or compared |
| 3 | The content (prose and table cells) is written in the stated language | Mandatory | Usability | Quoted source text and established technical terms may stay in another language; a document half in one language and half in another fails |
| 4 | The register matches the one the registry gives for the artifact type | Mandatory | Usability | The register fixes the reader the text assumes and how much it explains |
| 5 | Domain terms are the PO terms of the domain's dictionary, with no synonyms | Mandatory | Usability, Maintainability | A second word for a dictionary term is a defect |
| 6 | Metadata keys, section headings, IDs and statuses are in English | Mandatory | Maintainability, Compatibility | The scripts read them; only the content is in the PO language |
| 7 | No translated twin (`<name>.<language>.md`) exists beside the document | Mandatory | Maintainability | One file per artifact; two files drift apart |
| 8 | A change of language or domain since the previous accepted version has a Version History row and was reviewed again | Mandatory | Maintainability | Changing the language of an artifact is a material change |
| 9 | A reviewer competent in the domain, and in the language, has confirmed that the domain terms are used correctly | Mandatory | Functional Suitability | May be a second reviewer named on the review record when the first does not read the language or know the domain |
| 10 | Abbreviations are spelled out on first use, in the stated language | Optional | Usability | |
## Common Defects
- A `Domain` or `Language` row left as a placeholder, or a free-text domain
- Sections in two languages, or headings translated so that a script cannot find them
- A PO term in the domain's dictionary replaced by a near-synonym in one section
- The English document replaced by a translation without a Version History row or a new review
- A translated copy kept beside the document "for convenience"
- Domain terms used loosely because the reviewer does not know the domain
## Traceability Rule
- Backward: Every PO term traces to a row of the Domain Dictionary ([QC-DICT-001]) of the same domain
- Forward: Applies together with the checklist of the artifact's own type; it feeds no other checklist
---
[QC-DICT-001]: ./qc-dictionary.md