[cppll:9378] Re: [御意見拝聴] UML をソフトの基本設計で使いますか?

Subject:
[cppll:9378] Re: [御意見拝聴] UML をソフトの基本設計で使いますか?
From:
Hidehiko AKASAKA <akasaka.h@...>
Date:
Tue, 12 Aug 2003 11:25:55 +0900
X-Mailer:
Becky! ver. 2.00.03
Message-Id:
<20030812112238.C784.AKASAKA.H‐at‐nifty.com>
In-Reply-To:
9375
References:
9366 9375
こんにちは、赤坂です。

kenji@... (kenji) san wrote:

> 赤坂さんのように UML を使いこなしていらっしゃる方の意見が聞けて喜んでいます。

いいえ、私は未だUMLに弄ばれています。(C++も同様です(^^;;)

> テストを書いて自動テストをさせるようになってから、要求分析、分析、設計、
> プログラミング、テストの工程の後戻りを何度でも平気で行なうようになって
> しまいました。

それ自体は悪いことではないですよね。
むしろ、面倒な手順のせいで直すべき個所にフタをしてしまうより全然良いです。

> 私のソフト開発の段階は、下の順序で流れます。でも各工程が独立しているの
> ではなく、重みの置き方が移っていくだけです。基本仕様の段階で一部、テス
> トも書いています。最後のテストは詳細仕様をテストを使って書いているとも
> 思っています。一人で全部をやっているから許されることでしょうけれど。
> (Water Fall Model 信者とは喧嘩になります)
>
>   基本仕様の書き出し、  Header file 作成、、 CPP file 作成、デバッグ(テスト書き)

なるほど、1人で開発されているので、対象のシステム(の規模)がそれほど大
きくなくて、小林さんの優秀な頭脳ではいきなり実装レベルで検討、実装、テス
トを行った方が効率が良いというわけですね。
そんな場合は、
 1) (基本仕様で)要求の確認
 2) テスト・実装
 3) 動くプログラムで要求を実現しているかの確認
といった手順でOKですよね。

小林さんは、きっと実装より抽象どの高い分析レベルでの検討の必要がないの
だろうと思いますが、しばらく他の作業に取り掛かる必要がある場合や、他
の開発者に引き継ぐことなどを考えると、分析モデルがあればとすごく戻りや
すい(入りやすい)と思います。

> 赤坂さんはからすれば UML の作成段のような分析段階があるべきだと考えて
> いると思います。でも STL を使うようになってからは、直接 header file を
> 書くようになってしまいました。C++ でも STL を使わないなったら、UML を
> 書くかもしれません。

私達のSTLの使い方は(設計から実装へのマッピングとして)ルール、ガイドライ
ン化しておき、UMLでの設計モデルでは詳細は記述しないという方向です。

> >むしろ、UMLにどんどんダイアグラムが増えて簡単に覚えられなくなってしまう
> >(としたら、その)方が問題だと思っています
>
> 同感です。現状の UML は複雑化しすぎだと思います。

まあ、UMLを使ってるとどうしても「ここまでは表現したい!」と思うことは
多々ありますよね(^^;;

> >UMLで全てのことを表現できない、という意味では機能不足は否めませんね。
> >私は別にそれで構わないと思っています。
>
> 私は回路ブロック図のように、プログラムの全体概要を図形的に表現する方法
> がありうるはずだと思っています。現実には存在していないとも思いますが。

一般的には、レイヤやサブシステム構成を示すクラス図(みなさん、パッケージ
図と呼んでます)が相当するものだと思います。
# もっとも規模が小さすぎるとパッケージが複数ない場合もありますね(^^;;

きっと小林さんの考えるレベルに対して、情報が不足してますよね。
# 私は個人的にはこのレベルでも良いと思っています。

C++に関係ない話に終始してしまい、すみませんでしたm(_._)m。> 管理人様
# NiftyのFPROGみたいに、ノンビリ議論するのも良いですね(^o^)

ではでは。

--
赤坂 英彦 (Hidehiko AKASAKA)
akasaka.h@...

スレッド

Navigation

検索

[検索ヘルプ]

Maintener: Tietew <www.tietew.jp>
Powered by Ruby on Rails, Mongrel, PostgreSQL, and Hyper Estraier.
click here