←講義のツボメニューへ
ソフトウェア設計学
【日付 2004,11,28】 【連載回数 第11,12回】
・DFDを分割する手法の1つ
・入力から出力に至る主要なデータフローが1つの時に有効
・データの流れに着目して、Source(入力)Transform(変換)Sink(出力)に分割する
STS分割の手順
(1)モジュール分割
①機能の分割
・対象となる機能を分割
・主要なデータフローを見極める
②最大抽象化の決定
・データの変化に着目して「入力」「変換」「出力」の境界を定める
③STS分割
・「入力」「変換」「出力」の3種類に分け、それぞれをモジュールとする
(2)モジュール構造組み立て
・3つのモジュール「入力」「変換」「出力」を制御するモジュールを新たに作成して3つのモジュールの上位に配置する
・必要に応じて階のモジュールを更に分割していく、下位は3分割でなくてもよい
(3)モジュール間IF定義
・モジュール間のデータのやり取りを決める
STS分割の例1 (モジュール分割)
STS分割の例 (モジュール構造組み立てorモジュール間IF定義)
TR分割
TR分割とは
・TR分割はトランザクション(Transaction)分割の略
・主要なデータフローがデータの種類ごとに分岐するとき個々の主要なデータフローをトランザクションと呼ぶ
・TR分割では、個々のトランザクションに対応する処理群をまとめてモジュールとする
(1)モジュール分割
①機能の分割
・対象となる機能を分割
・主要なデータフローがデータの種類毎に分岐するとき個々の主要なデータフロー毎に分割する
TR分割の手順
(2)モジュール構造組み立て
・分岐、合流を制御するモジュールを新たに作成して2つのモジュールの上位に配置する
・必要に応じて下位モジュールを更に分割していく
(3)モジュールのIF定義
・モジュール間のデータのやり取りを決める
TR分割とSTS分割の使い分け
主要なデータフローが | 1つ | STS分割を使う |
| データ種類によって複数に分岐 | TR分割を使う |
共通機能分割
共通機能分割とは
・分割したモジュールの中に共通的に含まれる機能があるときに、これを共通機能として切り出すこと
・共通機能分割の結果は、逆向きの木構造となる
・言語や開発環境が提供しているモジュール組織で作成済みのモジュールが多い
分割技法の併用
・まずはSTS分割とTR分割を用いてモジュール分割を始める
・最後に共有機能分割を行う
・モジュール構造は、TR分割とSTS分割を行っている間は木構造だが、共通機能分割を行うことによりモスク型になる