はじめに
◆この記事は何?
変数名付き用語集の作り方を紹介する記事です。
「上流品質を高める用語集」の作り方を紹介します。
◆対象は?
開発に関わる人
◆この記事のねらい
より良い用語集を作れるようになること
先に結論
- 用語集で変数名を定義することで品質が高くなった
- 品質が高いのは、ドキュメント/コード/テストデータで表記揺れがなくなったため
- 良い用語集にするために
- メンテナンスしやすさを重視する
- ジャンル別で整理する
「良い用語集」とは?
「良い用語集」とは、上流品質の向上に寄与している用語集だと考えます。
プロジェクト開始前に用語集を作成し、「用語集を正」として、要件定義書を作成して、データベース設計書を作成して、設計書を作成して、コーディングして、テストをしていきます。
つまり、全てのフェーズで用語集を活用し、表記揺れを無くします。
その結果、品質向上の活動をより上流に移すこと(Shitf Left)ができます。
変数名を定義する
上流品質を高めるために、変数名を定義します。
例えば、次のように整理します。
# | 用語 | 変数名 | 意味 | 備考 |
---|---|---|---|---|
1 | 在庫型物流センター | distribution_center | 商品が一時的に保管され、さらなる配送のために分類される施設 | DC(Distribution Center)とは? |
2 | 最終目的地 | final_destination | 商品が最終的に届けられる場所 | 例:消費者の住所 |
3 | バース | berth | 荷降ろしをするためにトラックを停車させておく場所 | 関連:バース予約 |
この変数名をテーブル定義、コーディング、テストなどで採用します。
◆用語集で変数名を定義するメリット
用語集で変数名を定義するメリットは次のとおりです。
- 変数の表記揺れがなくなる
- 変数名を考える時間が減る
- 使いまわせる箇所が増えて効率が上がる
- レビューの工数が減る
- 可読性が上がる
- 検索性が上がる
変数名を定義するだけで、挙げればキリがないくらいのメリットを享受できます。
メンテナンスしやすさを重視する
特にプロジェクト序盤では、用語集は高い頻度で更新されます。
そのため、メンテナンスしやすい状態を保つことが重要です。
具体的には、列を増やしすぎないようにしています。
補足したいことは「備考」を積極的に使います。
ジャンル別に整理する
用語はジャンル別で整理します。
これは用語集を使いやすくするための工夫であると同時に、用語集のメンテナンス性を高める工夫でもあります。
例えば、「場所に関する用語」と「時間に関する用語」は分けて整理します。
先ほど挙げた例は「場所に関する用語」です。
下記は「時間に関する用語」です。
◆時間に関する用語
# | 用語 | 変数名 | 意味 | 備考 |
---|---|---|---|---|
1 | 予定配達日時 | estimated_delivery_datetime | 顧客に通知される商品の予定配達日時 | |
2 | リードタイム | lead_time | 顧客が注文してから届くまでの時間 | 単位は時間(hour) |
3 | 出荷日 | ship_date | 商品が倉庫や配送センターを出発する日 |
※接尾語について、日付に関するものは「date」、日時は「datetime」などとあらかじめポリシーを決めておきます。
プロジェクトごとにジャンルを考える必要がありますが、まずは次のようなジャンルを考えると良いかと思います。
- 組織図/役職
- ステークホルダ
- 時間に関する用語
- 場所に関する用語
- お金に関する用語
- 業務フローに登場する用語
- マスタテーブルで使われる用語
- 既存サービス/システム
おわりに
この記事では、良い用語集の作り方を紹介しました。
私は、変数名付きの用語集を作るようになって、良い開発ができるようになりました。
「上流品質が高い開発ができる」と自信を持てたのは「変数名付き用語集」のおかげです。
皆さんの用語集の工夫があれば、ぜひ教えてください。
この記事がお役に立てれば幸いです。
それでは。