前置き
私は日頃、CakePHPやLaravelを利用してアプリケーションコードを書くことが多いです。
ただ、今回の記事では絶賛苦労している要件定義に関して記事を書きたいと思います。
要件定義の大切さ
アプリケーション構築において、「要件定義」は非常に大切な工程です。
要件定義が失敗していると、その後の工程で挽回する労力は大きなものになります。
要件定義を成功させるためには正しい現状認識が必要です。
例えば、業務アプリケーションを作成する場合は対象の業務への理解が必要になります。
さらに複数部門の業務を統合する場合は、各担当者が個別の業務を認識するだけでは足りず、
他の部門の担当者に正しく現状を共有する必要があります。
要件定義における用語の大切さ
正しい現状認識、現状共有のためには、正しい「用語」が欠かせません。
用語がズレていると認識にもズレが発生します。
用語が紛らわしかったり、同じ言葉でも意味が異なる場合もありますね。
例) 紛らわしい用語
- 北部九州は寒い
- 北九州は寒い
全然意味が違いますよね。(ちなみに私は北九州市出身です。)
北部九州は「福岡県・佐賀県・長崎県・熊本県・大分県」の5県を
北九州は「福岡県北九州市」を指します。
(注意) 北部九州の範囲は諸説あるそうです。
例) 同じ言葉で意味が異なる(同音異義語)
- 利益
利益と言っても、営業利益なのか経常利益なのかわかりませんよね。
例) 違う言葉で意味が同じ(異音同義語)
- FMT
- フォーマット
「FMT出して」という連絡を受け、私は目が点になりました。
用語の認識がずれる傾向と対策
ここからが記事の本題になります。(前置きが長いですね)
私なりに用語の認識がずれる傾向と対策をまとめてみました。
用語のズレ方については上記の同音異義語、異音同義語に大別されると思います。
どういった原因で同音異義語、異音同義語は発生するのか、私なりに考えてまとめてみました。
階層の問題
動物の分類がわかりやすい例ですが、分類上の階層が異なる言葉をまとめて使ってしまうケースがあります。
「哺乳類」「猫」「マンチカン」これらは別の階層の言葉ですね。
はじめに営業売上を管理していたシステムが「売上という用語で営業売上」を管理していたとします。
その後、追加開発で経常利益も確認したという要望が発生して「売上」「経常利益」という階層が異なる用語が
同列で利用されるケースを散見します。
軸の問題
階層ではなく、そもそも分類軸が異なるケースです。
人間だと「性別:男女」「年齢:10代、20代...」は別の分類軸ですね。
整理されていないと下記のようなケースになることがあります。
20代の顧客が多いのでそこだけ性別を分けて確認したいというケースです。
[顧客カテゴリー ]
-
10代
-
20代[男]
-
20代[女]
-
30代
-
40代
このケースではわかりやすいですが、業務システムの要件定義をしているとよく見かけます。
ビジネス上の要件もあってのカテゴリーですが、要件定義をするときはしっかり分類軸を意識して用語を分ける必要があると感じています。
主語の問題
「AさんはBさんからリンゴを買った」
上記の文章はこう言い換えることが可能です。
「BさんはAさんにリンゴを売った」
こういった主語によって表現が変わるケースがあります。
また、受発注を管理システムがあった際に下記のような機能名を見かけることがあります。
「注文管理機能」
この言葉だけでは、受注した注文の管理なのか、発注した注文の管理なのか判断がつきません。このケースも主語を意識していない用語と言えます。
まとめ
言葉って難しいですね。。。。
ただ、この辺にこだわらないと良い案件にならないので頑張りたいと思います。
他にも何か良い傾向と対策があればコメントいただけると嬉しいですー。