- ベストアンサー
詳細設計・プログラム設計について
詳細設計とプログラム設計って内容はどう違うのですか? UMLなどで2つ設計できるのでしょうか? よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
これは難題ですね。何故なら絶対的な基準がないからです。一応それらしいものはありますが、取り扱う業務の知識量や過去からの財産、開発・修正経験や開発・修正量等で、作成手法が変わってくるからです。ですから全てをカバーする基準が立てにくく、開発毎に基準を作るという方法が一般的だからです。 とは言え何かの基準がなければシステムができることは、ありませんので、この回答については、こういう分類もある、という程度のものであると考えて下さい。 ○詳細設計 ・プロセス設計:機能のテーブルの構造を設計する ・テーブル設計:機能で使用するテーブルのレイアウトを設計する ・プログラム設計:処理をモジュールに分解し、モジュールの処理内容を詳細に記述する。(プログラム設計書だけで、プログラムができるまで落とす) ということで、これは詳細設計の中にプログラム設計があるという考え方です。 しかし、大体は詳細設計=プログラム設計となっているのが、現状かと思います。
その他の回答 (2)
- toysmith
- ベストアンサー率37% (570/1525)
学校の先生です(笑 ま、先生は副業で本業は現場の技術者なんですけど… UMLを使って分析/設計する場合、詳細設計とかプログラム設計とかっていう概念は持ち込まないことの方が多いです。 UMLを使う場合、開発工程に明確な線引きをすると非常にやりにくいことになります。 「クラス抽出後、状態図を考えてる最中に属性(=データ)を追加する必要が見つかる」なんて日常の事です。 同様に、イベント図/コラボレーション図を書いている最中に発見されるメソッド(=関数)も存在します。 結果、「手戻りを恐れず、最適な手順を追い求める」ことが必要です。 本題の詳細設計ですが… 設計フェーズの命名や各設計フェーズで記述する仕様書の書類についてはプロジェクトごとに決定するので「これが正解」というものはありません。 ことによるとプログラム設計/詳細設計フェーズが丸ごとなくなってしまう場合もあります(誉められたヤリカタじゃありませんが)。 しいて言えば… プログラム設計には「プログラム外部設計(モジュールインターフェースと大まかな流れ)」と「プログラム内部設計(モジュール内処理手順を考える)」フェーズに分割可能なので、後者を詳細設計と呼ぶ場合があります。
- ykkw_2001
- ベストアンサー率26% (267/1014)
「その手」の職業についていますが・・ 学校の勉強ではどうあれ、実際私が扱っている業界のシステムでは、「詳細設計」=「プログラム設計」ですね。 概略設計で、全体構成(ハード、ネットワーク、購入品、負荷量)やワークフロー、データフロー、モジュール分割が決まれば、後は、各モジュールのインターフェースとプログラム処理内容になります。 UMLでも、概略->詳細の境界線は、グレイゾーンだと思います。 だから >2つ設計できる というのは、2つにすればそうだし、1つや3つもありうるということになります。 要は、全体を表現するのには「概略」が向いていて、「詳細」を細かく表現するのには、プログラムレベルのことも設計しなくてはいけないということを理解すればいいのではないでしょうか? #おそらく、学校の先生などは、「システム設計」と「プログラム設計」は違う!と思い込んでいる方も多くおられると想像します。
お礼
すみません、、ありがとうございました。