従来の方法で開発してみました。ここからは、まったく同じプログラムをオブジェクト指向的に開発するとどうなるのかを、見ていきたいと思います。 設計書の表現方法には必要に応じてUMLを使いたいと思います。
最初は、ユースケース図を用いて、今回作成する計算機システムの実現範囲と機能を明確にします。
ユースケースは決してオブジェクト指向特有のものではなく、利用者から見た機能を明確にし、合わせてシステムの守備範囲を明確にします。
UMLでは、規定されていませんが、一般的にはユースケースと対でユースケース記述を作成します。
ユースケース記述は、利用者から見たシステムの振る舞いを、ユースケース単位で記載していきます。
また、外部仕様をより明確にしたい場合は、ユースケース図とともに従来の外部仕様書をあわせて作成することがよくあります。
ユースケース名:計算をする |
アクタ:利用者 |
目的:利用者は計算システムを使って計算した結果を得る。 |
メインフロー: 1. 利用者は、計算したい数字(x、y)、数式(×、÷)を入力装置より入力します。 2. システムは、入力された内容の妥当性をチェックします。 3. システムは、入力された内容で計算を行います。 4. システムは、答を出力装置に出力します。 |
ユースケース名:掛算をする |
アクタ:利用者 |
前提条件:利用者の入力した数式が「×」であること。 |
目的:利用者は計算システムを使って掛算した答を得る。 |
メインフロー: 1. システムは、入力された数字より計算(x × y)を行います。 |
ユースケース名:割算をする |
アクタ:利用者 |
前提条件:利用者の入力した数式が「÷」であること。 |
目的:利用者は計算システムを使って割算した答を得る。 |
メインフロー: 1. システムは、入力された数字より計算(x ÷ y)を行います。 |