Index: [Article Count Order] [Thread]

Date:  Tue, 4 Apr 2000 13:31:11 +0900
From:  Kenji Hiranabe <hiranabe@....jp>
Subject:  [XP-jp:00107] Re: Sec1-Chap9 Back to Basics
To:  extremeprogramming-jp@....jp (extremeprogramming-jp ML)
Message-Id:  <20000404132949F.hiranabe@....jp>
In-Reply-To:  Your message of "Wed, 22 Mar 2000 18:06:57 +0900"	<00Mar22.180736jst.115202@....jp>
References:  <00Mar22.180736jst.115202@....jp>
Posted:  Tue, 04 Apr 2000 13:29:49 +0900
X-Mail-Count: 00107


平鍋です.ちょっと前の話ですが,

On Wed, 22 Mar 2000 18:06:57 +0900,
firo <firo@....jp> said:

>> ちょっと気になるのは、XPでは、「Documenting」が基本の一つになっていないこと
>> です。私の言っている「Documenting」は、ソースコードの文書化と製品の文書化で
>> す。ソースコードの文書化とは、コメントを書く、機能仕様書を書くと言う事です。
>> 製品の文書化は、ヘルプとかユーザーズガイドを書くことです。XPでは、これらをい
>> つ行うのでしょうか?必要無いのでしょうか?スコープ外にして楽な問題を解いてい
>> るのでしょうか(ちょっといじわるな質問)?
>> 

 > 私の現時点での考えを述べます。

 > まずプログラミングそのものには直接関係しない、ユーザーズガイドは、
 > まったくの対象外でしょうね。当然プロジェクトの最終製品の1つには
 > ちがいないのですが、XPではその部分はまったくかやの外でしょう。

 > プログラミングに関する「Document」については、あくまでも私の想像で
 > すが、XPではコードのみが最終のDocumentであると考えているので
 > はないでしょうか?コード以外のDocumentは、補足的に作成されるこ
 > とはあっても、必須ではないし、あるいは不要になったら捨ててもよいと
 > 考えられていると思います。

 > 例えば、XPなFowler氏は、この前行われた日本講演(お題はUMLと
 > アナリシス・パターンです)で、次のようなことを言っていました。

 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 > (講演の話やファウラー氏の著作によれば、全てをインタラクション図
 > で表現するとは考えないということですが、表現しない部分はどうする
 > のですか?という会場からの質問に対して)プログラムコードで表して
 > 十分なところは、インタラクション図を描く必要はない。そのまま(プロ
 > グラムコード)でよい。インタラクション図は有効な方法だが、やたらと
 > 使いまくることはしないほうがよい。たくさんドキュメントを書けばいいと
 > いうものではない。大切なことはコミュニケーションであり、そのために
 > 必要なものだけを作成すればよい。
 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 > また、彼の著書「UMLモデリングのエッセンス」の日本語訳では、

 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 > (134ページ)
 > 「これらの図(矢崎注:シーケンス図やコラボレーション図のこと)は芸術
 > 作品である必要はありません。私はよく紙切れや小さなホワイトボードに
 > 大まかに描いてしまいます。クラスの振る舞いを明確にするのに役立つの
 > で、その図を最新の状態に保つ価値がある、と思うときだけ、ドローツール
 > (やCASEツール)を使って図を書き直します。
 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 > とか、
 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 > (143ページ)
 > 「実際には私は、相互作用のだいたいの形を作るため、ふつうはシーケンス
 > 図を使い、コードを書きながら変更を加えます。相互作用が重要な場合は、
 > 文書の一部としてシーケンス図を更新します。シーケンス図があってもコード
 > がさらに明確にならないと思うときは、ファイルキャビネットにそのラフなシー
 > ケンス図をファイルしてしまい込んでしまいます。
 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 > とか、書いています。

 > また、Fowler著「Refactoring」では、コメントが必要なのは、そのメソッドが長す
 > ぎるからで、コメントがいらないようにメソッドを小さくしろ、というような指針が
 > 書かれてあったような記憶があります。

 > 実は、私は、今この考えにはまっているのですね。。(^^)

オージスさんの今月の矢崎さんの記事

  http://www.ogis-ri.co.jp/otc/hiroba/index.html

を見て思ったのですが,やはり軽量であることが大切ですよね.上
記の中で,

>私も何か考えるときは,シャープペンシルで紙に落書きをしなが
>ら,考えをまとめるのですが,これはPCのキーボードを叩くことで
>は得られない感覚です.

と書かれています.私もやはりこの「シャープペンシルで紙に落書
き」感覚が自分の設計のベースになっています.純粋な設計の頭出
しは,Rose とかのケースツールを使って設計ではできません.か
ならず大きめの白紙とシャープペンシルです.

--
 (株)永和システムマネジメント   □http://www.esm.co.jp/
 オープンシステム事業本部       □mailto:hiranabe@....jp
 マルチメディア開発部           □tel: 0776-25-8494
 平鍋  健児 (Kenji Hiranabe)    □fax: 0776-25-8499