Part4では,業務をプロセスに分割して,正確に業務を把握しました。Part5では,業務の概念を明確にすることで,関係者間の合意形成を図ります。そのためには,業務を説明する用語を定義することが重要です。
Part5は,演習編の3回目です。Part3は,業務の目的を一言で表現して,作業の基本的な流れで概要を把握しました。そしてPart4は,業務をプロセスに分割して,正確に業務を把握しました。これらは,業務システムの目的と,動的な振る舞いであるプロセスに着目した演習でした。
Part5の演習は,対象とする業務を説明するために必要な概念を明確にすることが目的です。具体的な作業として,演習では「業務概念オブジェクト図」と「業務概念図」を作成します(図1)。
普遍的な関係を表す
Part5の内容は,これまでと異なり,業務システムの静的な構造に着目する演習です。静的な構造とは,時間軸に影響されない,業務システムを構成する要素の普遍的な関係です。Part5では特に,業務レベルのエンティティ(情報)に着目します。本講座では,業務レベルのエンティティモデルを概念モデルと呼びます。
概念モデルは,時間軸に影響されない普遍的な関係を表します。しかし,いきなり普遍的な関係をとらえるのは困難な場合があります。その業務が開始してから終了するまでには,様々な事柄が次から次へと起こるからです。
そこで本講座では,まずは業務のある瞬間における出来事を“スナップショット”としてとらえ,具体的に考えることにします。それから,それらのスナップショットをまとめることで,ある期間にわたる普遍的な関係をとらえます。
概念モデルは,現実世界の業務を分析したモデルであり,関係者間の合意を形成するための用語辞書になります。関係者には,業務分析者やシステム開発者,プロジェクト運営者など,専門領域が異なる人達が含まれます。専門領域の異なる人達の合意を形成するためには,用語を定義することが重要です。
用語を明確にする
Part5の1つ目の演習は,対象とする業務のある瞬間における状況を,具体的に説明するために必要な用語を明確にすることです。そのような用語を概念オブジェクトと呼ぶことにします。
本講座では,具体的なサンプルとして中古車販売業務を取り上げています。今回は,その中古車販売業務の一部である,中古車を受注するプロセスを取り上げて解説します。
最初に,Part4で想定した中古車受注プロセスの作業から,具体的な作業手順を考えます。例えば,以下の作業手順が考えられます。
- お客様は中古車の購入を希望する
- 販売担当は在庫を問い合わせる
- 在庫管理担当は在庫を伝える
- 販売担当は中古車の見積を作成する
- お客様は中古車を注文する
- 在庫管理担当は在庫を引き当てる
- 販売担当はお客様を登録する
- 販売担当は中古車を受注する
この中古車受注プロセスの作業手順に沿って,管理・記録したい業務上重要な事柄を取り上げ,その事象を具体的に説明するために必要十分な用語を明確にしていきます。
「者-事-物」で考える
まずは「お客様が中古車の購入を希望した」という出来事を考えます。この出来事は,業務上重要な事象である「購入希望」が発生した瞬間のスナップショットです。「購入希望」の主体者(送り手)は「お客様」です。受け手は「販売担当」になります。
したがって「お客様が中古車の購入を希望した」瞬間における状況を具体的に説明する用語は「購入希望」と「お客様」,「販売担当」です。「お客様」と「販売担当」は「購入希望」に関与しているという関係になります。
このような用語を明確に可視化するのが業務概念オブジェクト図です。サンプルを図2に示します。表記法はUMLの「オブジェクト図」です。(1)が先ほど取り上げた出来事です。「購入希望」を中心にして「お客様」と「販売担当」が関係しています。
実は,この表現で使用している「お客様」という用語は,不特定多数の人の集まりではなく,ある特定の人物を指しています。本来は,そのお客様の名前で表現するべきところです。しかし,このように名前を明示せずに,普通名詞で実例を指すことも多いのです。
このような無名オブジェクトを正確に表記する場合は,オブジェクト名の前に「:」を付加します。具体的には「:お客様」と表記すれば,不特定多数の人の集まりではなく,名無しのお客様という意味になります。
図2の(2)「販売担当が中古車の見積を作成した」という出来事は,名詞で表現すると「見積」でしょう。「見積」の主体者(送り手)は「販売担当」,受け手は「お客様」になります。「見積」の対象物は「中古車」です。その「中古車」は「在庫」に登録されています。
したがって「販売担当が中古車の見積を作成した」瞬間における状況を具体的に説明する用語は「見積」と「販売担当」,「お客様」,「中古車」,「在庫」になります。そして「販売担当」と「お客様」,「中古車」は「見積」に関与していて「中古車」は「在庫」に関係があります。
同様にして,図2の(3)「お客様が中古車を注文した」という出来事を考えますと「注文」を中心にして「お客様」と「販売担当」,「中古車」が関与しています。
このように,業務概念オブジェクト図は「事」を中心にして「者」と「物」が関与する「者-事-物」で考えることができるのです。図2の(6)「販売担当が中古車を受注した」という出来事も「者-事-物」で考えれば「受注」という事を中心にして「販売担当」と「顧客」という者,および「中古車」という物が関与しています。
それに加えて「受注」という出来事は「注文」という出来事が存在して初めて存在する出来事です。したがって「受注」という概念オブジェクトは,必ず「注文」という概念オブジェクトに関係があります。このように「事」と「事」には,前後関係があると考えられる場合もあります。
用語をきちんと区別する
図2の(5)「販売担当がお客様を登録した」という出来事は「○○を××した」という形式です。したがって,その成果物(出力)は「××された○○」と言い換えることで明らかになります。すなわち,この出来事の出力は,登録されたお客様です。実は「登録されたお客様」という概念には名前が付けられています。それが「顧客」という用語です。
一般的には「お客様」という用語と「顧客」という用語は,同じ意味で使われることがあります。しかし,今回の場合は,それぞれの用語の概念が異なります。特にこのような場合は,用語をきちんと区別して使い分けましょう。
それでは,図2の説明の最後です。(4)「在庫管理担当が在庫を引き当てた」という出来事は「中古車」と「在庫」の関係がなくなることです。ここで「在庫」とは,在庫管理台帳のようなもので,売れる状態にある中古車すべての集合を意味しています。