構造化分析・構造化設計とは?こうぞうかぶんせき・こうぞうかせっけい
構造化分析・構造化設計とは、機能を単位にシステムを分割していく開発技法の一群。分析側はDFD・データ辞書・ミニ仕様書で対象業務のデータの流れを段階的に詳細化して構造化仕様書にまとめ、設計側はその流れをSTS分割やトランザクション分割でモジュールの階層構造(構造図)へ写す。データではなく処理を分割の軸に置く点が、オブジェクト指向との分かれ目になる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
1970年代、規模が膨らんだプログラムが読めず直せなくなったことへの答えとして整理された。トム・デマルコやエドワード・ヨードンらが、分析の成果物を図として表し、その図から設計へ手順を追って写せる筋道を用意した。現在の新規開発でこの技法をそのまま採ることは少ないが、システムアーキテクトの読者にとってはレガシー刷新で引き継ぐ既存設計書がこの記法で書かれているため、読み解く側の知識として要る。
具体例
受注業務のDFDで、プロセス「受注を登録する」を最大抽象入力点と最大抽象出力点で切り、入力・変換・出力の3系統へ分けて構造図を得るのがSTS分割。トム・デマルコ『構造化分析とシステム仕様』が分析側の、ヨードン/コンスタンチンの構造化設計が設計側の原典にあたる。
試験での引っ掛け
ライフサイクル上、構造化分析の次に来るのは構造化設計であり、分析は問題領域を理解する工程、設計は解の構造を決める工程という役割の違いを取り違えない。DFDはデータの流れだけを表し、処理の順序や制御の流れ、繰返しや分岐は表現しないため、フローチャートと同じものとして読むと設問を落とす。
関連用語
出た過去問
出典:平成28年度 秋期 システムアーキテクト試験 午前Ⅱ 問6(IPA)
図は、デマルコの提唱による構造化技法を基本としたシステム開発プロジェクトのライフサイクルを表現したものである。図中のaに入れる適切なプロセスはどれか。
正解:構造化設計
要点:構造化分析の次に構造化設計が仕様書を設計へ変える
デマルコの構造化技法によるライフサイクルでは、調査、構造化分析、構造化設計、ハードウェアの調査、システム開発という流れをとる。構造化分析が出力した構造化仕様書を受け取り、ハードウェア構成の情報と合わせて、テスト計画とパッケージ化した設計を作り出す位置にあるのは構造化設計である。
出典:平成28年度 秋期 システムアーキテクト試験 午前Ⅱ 問7(IPA)
プログラムの構造化設計におけるモジュール分割技法の説明のうち、適切なものはどれか。
正解:STS分割は、データの流れに着目してプログラムを分割する技法であり、入力データの処理、入力から出力への変換処理及び出力データの処理の三つの部分で構成することによって、モジュールの独立性が高まる。
要点:STS分割は入力・変換・出力の流れで分ける技法
STS分割は、プログラムを入力(Source)、変換(Transform)、出力(Sink)という三つの部分に分けるデータの流れに着目した技法で、各部分の役割が明確になるためモジュールの独立性が高まる。TR分割も同じくデータの流れに着目してトランザクションの種類ごとに分ける技法であり、データ構造に着目するのはジャクソン法である。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。