【テンプレあり】英語データ辞書の書き方|ITプロジェクトで使える日英フォーマット付き

※本サイトで紹介している商品・サービス等の外部リンクには、アフィリエイト広告が含まれる場合があります。

技術英語の実践術

英語でデータ辞書を書くよう求められたとき、何を書けばいいか迷った経験はないだろうか。

データ辞書はテーブル・カラム・データ型・制約を一元管理するドキュメントだ。グローバルチームでは英語が基本になるが、6つのセクション構成さえ押さえれば英語でも問題なく書ける。

この記事では、データ辞書に必要な6つの構成要素と、そのまま使える日英テンプレートを紹介する。コピペして使えばすぐに実務で活用できる。


データ辞書に必要な6つの構成要素

データ辞書はデータベース設計の仕様をチーム全体で共有するドキュメントだ。以下の6つが標準的な構成要素になる。

  1. 基本情報(Document Info)
  2. テーブル一覧(Table List)
  3. カラム定義(Column Definitions)
  4. データ型・制約の凡例(Data Types & Constraints Legend)
  5. 用語集(Glossary)
  6. 変更履歴(Change Log)

なぜ英語で書くのか

グローバルチームでは英語がデータベース設計の共通言語になる。英語で書くことで、海外チームや外部ベンダーとのスキーマレビューがスムーズになる。

「このカラムは何を意味するか」「NULLを許可するか」といった仕様の曖昧さを排除するためにも、データ辞書は欠かせない。

データ辞書とER図の使い分け

ER図はテーブル間のリレーションを視覚化するツールだ。一方、データ辞書はカラムの意味・制約・業務ルールなどの詳細を文書化する。両方があることで、設計の意図が正確に伝わる。


テンプレートをダウンロード(Word)

以下のWordファイルをダウンロードして、プロジェクトに合わせてカスタマイズして使ってほしい。表の列・行はそのまま追加・削除できる。

📥 日本語テンプレートをダウンロード(Word)
📥 Download English Template (Word)

日本語版テンプレート(コピペOK)

基本情報

項目内容
ドキュメント名(例:〇〇システム データ辞書)
バージョンv1.0
作成日YYYY-MM-DD
作成者(名前)
最終更新日YYYY-MM-DD
対象DB(例:PostgreSQL 15 / MySQL 8.0)
ステータスDraft / In Review / Approved

テーブル一覧

テーブル名論理名説明主キーレコード数(目安)
usersユーザーシステムに登録したユーザーの情報を管理するuser_id〜10万件
orders注文ユーザーが行った注文を管理するorder_id〜100万件
products商品販売する商品の情報を管理するproduct_id〜1万件
order_items注文明細注文ごとの商品明細を管理するorder_item_id〜500万件

カラム定義(例:usersテーブル)

カラム名論理名データ型NOT NULLデフォルト値説明
user_idユーザーIDUUIDgen_random_uuid()主キー。自動生成
emailメールアドレスVARCHAR(255)なしユニーク制約あり
name氏名VARCHAR(100)なし表示名
roleロールVARCHAR(20)‘user’admin / user のいずれか
is_active有効フラグBOOLEANtruefalseで論理削除
created_at作成日時TIMESTAMPNOW()レコード作成日時
updated_at更新日時TIMESTAMPNOW()レコード最終更新日時

データ型・制約の凡例

記号・用語意味
○(NOT NULL)NULL値を禁止する
PK主キー(Primary Key)
FK外部キー(Foreign Key)
UQユニーク制約(Unique Constraint)
IDXインデックスあり
VARCHAR(n)最大n文字の可変長文字列
TIMESTAMP日時(タイムゾーンなし)
TIMESTAMPTZ日時(タイムゾーンあり)

用語集

用語定義
論理削除レコードを物理的に削除せず、フラグ(is_active等)でアーカイブする方式
ソフトデリート論理削除と同義。deleted_at カラムに削除日時を記録する方式
テナントマルチテナント構成における顧客単位の区分
スラッグURLに使用する識別子。英小文字・数字・ハイフンで構成

変更履歴

バージョン変更日変更者変更内容
v1.0YYYY-MM-DD(名前)初版作成
v1.1YYYY-MM-DD(名前)usersテーブルにphone_numberカラムを追加
v1.2YYYY-MM-DD(名前)ordersテーブルのstatus定義を更新

英語版テンプレート(コピペOK)

Document Info

FieldValue
Document Title(e.g., Data Dictionary for [System Name])
Versionv1.0
Created DateYYYY-MM-DD
Author(Name)
Last UpdatedYYYY-MM-DD
Target Database(e.g., PostgreSQL 15 / MySQL 8.0)
StatusDraft / In Review / Approved

Table List

Table NameLogical NameDescriptionPrimary KeyEstimated Rows
usersUserManages registered user informationuser_id~100K
ordersOrderManages orders placed by usersorder_id~1M
productsProductManages product catalog informationproduct_id~10K
order_itemsOrder ItemManages line items for each orderorder_item_id~5M

Column Definitions (Example: users table)

Column NameLogical NameData TypeNOT NULLDefaultDescription
user_idUser IDUUIDYesgen_random_uuid()Primary key. Auto-generated.
emailEmail AddressVARCHAR(255)YesUnique constraint applied.
nameDisplay NameVARCHAR(100)YesUser’s display name.
roleRoleVARCHAR(20)Yes‘user’Either “admin” or “user”.
is_activeActive FlagBOOLEANYestrueSet to false for soft delete.
created_atCreated AtTIMESTAMPYesNOW()Record creation timestamp.
updated_atUpdated AtTIMESTAMPYesNOW()Record last updated timestamp.

Data Types & Constraints Legend

Symbol / TermMeaning
Yes (NOT NULL)NULL values are not allowed.
PKPrimary Key
FKForeign Key
UQUnique Constraint
IDXIndexed column
VARCHAR(n)Variable-length string up to n characters
TIMESTAMPDate and time without time zone
TIMESTAMPTZDate and time with time zone

Glossary

TermDefinition
Soft deleteArchiving a record by setting a flag (e.g., is_active) instead of physically deleting it.
Soft delete (timestamp)Variant of soft delete that records the deletion timestamp in a deleted_at column.
TenantA customer-level partition in a multi-tenant system.
SlugA URL-friendly identifier composed of lowercase letters, numbers, and hyphens.

Change Log

VersionDateAuthorChanges
v1.0YYYY-MM-DD(Name)Initial version created.
v1.1YYYY-MM-DD(Name)Added phone_number column to users table.
v1.2YYYY-MM-DD(Name)Updated status definitions in orders table.

各セクションの書き方と例文

テンプレートを埋めるときに悩みやすいセクションを解説する。

カラム定義(Description)の書き方

Descriptionは「何を格納するか」を1文で書く。業務ルールや制約の意味も添えると、後から読む人が助かる。

日本語英語
主キー。UUIDv4で自動生成されるPrimary key. Auto-generated as UUIDv4.
論理削除フラグ。falseで削除済みを表すSoft-delete flag. Set to false when the record is deleted.
注文のステータス。pending / confirmed / shipped / cancelled のいずれかOrder status. One of: pending, confirmed, shipped, or cancelled.
外部キー。usersテーブルのuser_idを参照Foreign key referencing users.user_id.
NULL許可。値がない場合は未設定を意味するNullable. A null value indicates the field has not been set.

Glossary(用語集)の書き方

用語集はチームで使う業務用語の定義を統一するためのセクションだ。「この言葉がシステム上で何を意味するか」を明確に書く。

日本語英語
〇〇とは、〇〇する仕組みのことです[Term] refers to a mechanism that [description].
このシステムでは〇〇を〇〇と定義しますIn this system, [Term] is defined as [definition].
〇〇は〇〇と区別して使います[Term A] is used separately from [Term B].

英語でのデータベース設計議論をさらに深めたい方は、エンジニアの英語データベース設計議論術も参考にしてほしい。


データ辞書でよく使う英語表現

実務でよく使う英語表現を場面別にまとめた。

カラム説明

日本語英語
主キーPrimary key
外部キーForeign key
ユニーク制約Unique constraint
NOT NULL制約NOT NULL constraint
デフォルト値Default value
自動採番Auto-increment / Auto-generated
論理削除Soft delete
物理削除Hard delete
インデックスありIndexed
複合主キーComposite primary key

データ型

日本語英語
可変長文字列Variable-length string (VARCHAR)
固定長文字列Fixed-length string (CHAR)
整数Integer (INT)
大きな整数Big integer (BIGINT)
真偽値Boolean
日時Timestamp / Datetime
JSON型JSON / JSONB
列挙型Enum

変更・レビューコメント

日本語英語
このカラムはNULLを許可しますか?Should this column allow NULL values?
デフォルト値は何ですか?What is the default value for this column?
このカラムにインデックスは必要ですか?Does this column need an index?
論理削除と物理削除、どちらを使いますか?Should we use soft delete or hard delete?
このテーブルの命名規則は何ですか?What is the naming convention for this table?

オンボーディングチェックリストのテンプレートは、英語オンボーディングチェックリストの書き方でも紹介しているので参考にしてほしい。

まとめ:英語データ辞書は6つのセクションで完成する

英語データ辞書に必要な構成要素を整理した。

  • 基本情報・テーブル一覧で「データ構造の全体像」を定義する
  • カラム定義で「各テーブルの詳細仕様」を記録する
  • 凡例・用語集で「チーム内の定義を統一」する
  • 変更履歴で「いつ・誰が・何を変えたか」を追跡する

テンプレートをコピーして、プロジェクトのテーブル数に合わせてカラム定義のシートを追加してほしい。Descriptionを丁寧に書いておくことで、スキーマレビューや引き継ぎのコストが大幅に下がる。

アーキテクチャ設計書のテンプレートは英語アーキテクチャ設計書の書き方で、技術仕様書のテンプレートは英語技術仕様書の書き方でそれぞれ紹介しているので合わせて参考にしてほしい。

コメント

タイトルとURLをコピーしました