DFDにおけるプロセス、アクティビティ図におけるアクティビティなどは、業務=動作だがら、動詞で示されるのが自然である。たとえば、営業部の業務としては
営業部
受注する
発注する
在庫を確認する
などなど・・・
ところが、これらを詳細化する場合、たとえば「受注する」を詳細化した図をかこうとした場合、その図のタイトルを「受注する」という動詞のままだとかっこ悪いので(まあ、動詞のままでもいいんだけど)名詞化して「受注」とする。
受注
受注内容を入力する
受注データをチェックする
受注データを保存する
受注票を発行する
みたいな。。。
これは、動詞の名詞化だから、プログラム的には、ここで書いたように、メソッドをクラス化することで対応できる。
クラスで書くとこんな感じ
// 営業部 class eigyo { // 受注する public void jyutyu() { // 受注処理 // 受注オブジェクトを生成する Jyutyu gyomu = new Jyutyu(); // 必要な値をセッターを使ってセット // いろいろ実行 } // 発注する public void hattyu() { // 発注処理 } // 在庫を確認する public void zaikoKakunin() { // 在庫確認処理 } } // 受注 class Jyutyu { // 必要な値をプロパティに書く // setter,getterを書く // 受注内容を入力する public void nyuryoku() { } // 受注データをチェックする public void check() { } // 受注データを保存する public void hozon() { } // 受注票を発行する public void zyutyuhyo() { } }
みたいなかんじに、いままでの理屈ではなる。
しかし、じつは、そうはならず、この場合、受注業務が一連の業務であれば、
package eigyo; // 受注 class Jyutyu { // 必要な値をプロパティに書く // setter,getterを書く // 受注内容を入力する public void nyuryoku() { } // 受注データをチェックする public void check() { } // 受注データを保存する public void hozon() { } // 受注票を発行する public void zyutyuhyo() { } }
というかんじで、営業部のパッケージを作り、その中に、受注、発注、在庫確認などの処理を作ったほうがいい。というか、そうするのが、ふつうだろう。
つまり、クラスにするようなものは、パッケージにすることもできる。
では、どのようなとき、パッケージで、どのようなとき、クラスにするのか?
・・・については、話が長くなるので、またこんど