読み方 : ドメインちしき

ドメイン知識【domain knowledge】

概要

ドメイン知識とは、ソフトウェア開発において、対象となる特定の業務領域や事業分野に関する専門的な知識のこと。例えば、会計システムを開発するにあたって必要となる、会計の用語や概念、会計業務の知識がこれに当たる。
ドメイン知識のイメージ画像

ここでいう「ドメイン」(domain)とは「分野」とか「領域」という意味で、金融、医療、製造、物流など、システムが対象とする業種や業務、事業分野などのことである。ドメイン知識には、業務手順、関連法規、業界特有の専門用語、商習慣、評価指標、例外処理の考え方などが含まれる。例えば、会計分野であれば仕訳や勘定科目の概念、医療分野であれば診療報酬制度や医療安全に関する規定などが該当する。

システム開発においては、要件定義や設計の段階でドメイン知識が重要となる。開発者がドメイン知識を深く持っていれば、顧客が言葉にしていない潜在的なニーズや、業務上の例外的なパターンを事前に察知できる場合がある。要件定義の段階で発生しがちな認識の齟齬を減らし、実務に即した使い勝手の良い設計を実現できる。

逆に、この知識が不足していると、技術的には正しく動作しても現場の運用に耐えないシステムが構築されるリスクが高まる。開発者は顧客や利用部門へのヒアリングや業務分析を通じて知識を獲得し、業務ルールをデータモデルや業務ロジックに反映させる必要がある。

また、ドメイン知識は開発チーム内での共通言語としても機能する。専門用語をエンジニア側とビジネス側が正しく共有することで、意思疎通のコストを低減して意思決定のスピードを向上させ、複雑な業務ロジックを正確にコードへと落とし込むことができる。近年では、対象領域の概念や用語をソフトウェア設計に明示的に取り込む手法として、「ドメイン駆動設計」(DDDDomain-Driven Design)という考え方も提唱されている。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。