4月26日のレポート
このレポートの採点A
1.プログラムの構造の設計とは何をやるのか説明せよ。
2.モジュールの独立性は何故重要なのか説明せよ。
また、モジュールの独立性を決める要素はどんなものが考えられるか考察せよ。
1、プログラムを1つのものに長々と書くと分りづらく、
そして、少しの変更が全てに影響を与えるような仕様になってします。
それでは、開発や保守に時間も掛かるし、信頼性もなくなってしまう。
だから、そうならないようにしていくものである。
左の図1では、いろいろな機能が1つのモジュールに
入っている。もし、その中で検索で呼び出す方法を
変えた場合、他の追加等の方も変更しなくては
ならなくなる場合が多い。
しかし、図2のように分割すると、
他の部分も変更しなくてはいけない
可能性は減り、手魔盗が省ける。
このように、開発・保守における労働力・時間の削減や、
信頼性の向上を目標として、
・適切なモジュール分割
・適切な構造に組み立てる
のが、構造の設計である。
よいプログラム構造の設計とは・・・
適切なモジュール分割ができている。
→・プログラムの変更・保守が容易
・各モジュールの昨日が明確になり、分かりやすい。
=
信頼性の向上、労働力の削減、開発・保守を容易にする
だが、機能をモジュール分割したところで、それがバラバラのままではダメである。
それらを再び1つにまとめる必要が有る。
よって、各機能をトップダウン設計する。(理解しやすくするため)
@まず、上位階層を定義する。
A上位階層の昨日を分割し、モジュールを作成する。
Bモジュール間のインターフェースを作成する。
モジュール間のインターフェースの定義は50〜100ステップが望ましい。
2、モジュールには独立性というものが有る。
表の図1のように、少しの変更が全てに影響するようなものは独立性が低く、
図2のような状態になると独立性が上がる。
独立性を高める手段として、
・各モジュール間の定義等を共有しない。
・モジュールがいくつかの機能を持ち、それらが他のモジュールにまで影響しない。
・1万の乱数を敵のウニファイルに保存したのを自動的に読み込むなどの
連結をしない。
などが、考えられた。
そして、独立性がとても高いモジュールができた場合、
それは、ブラックボックスと呼ばれる。
ブラックボックスはモジュールの内容を変更する時に
・処理の手順を意識しなくてよい
・他のモジュールの影響を与えない という、特性をもつ
↓
プログラムの保守・変更が容易になる。
ソフトウェア設計学のTOPに戻る
2002年前期のツボプロジェクトのTOPに戻る