2005-11-16
_ 昨晩は
風邪をひいたときの助言を IRC で友人たちから貰った。
- 風呂にお湯を張って寝る( 部屋の湿度を保つ )
- 暖房は禁止( 湿度が低くなる )
- 尻に葱
- カレーは汁
ということで 1, 2 を実践してとっとと寝た。
3 は葱が無かったのでやってない。
4 はカレーうどんとかがその心か。
_ 朝
0600 起床。
_ 仕事
0730 寒川。
_ 使いやすさ日記『15. エレベータの開閉スイッチ』
( via フィンローダの裏ご意見番 のコメント )
エレベータの「 開 」「 閉 」のボタンを押し間違えるという話題。
漢字の形が似てるので慌ててると間違える。
やはりフィンローダさんのところにもあるように「 ひらく 」「 とじる 」とひらがなにするほうがいいのだろうなあ。
ちなみに私もエレベータの扉は自動で閉まるのを待つ。ボタンは押さない。
_ Dependency Walker
Microsoft のアレ。
DLL を見るときに重宝してる。
外注さんが「 Dependency Walker ってなに? 」と言うので私も思い出す意味で調べてみた。
以下引用。
Dependency Walker を使用すると、アプリケーションがどの DLL に依存しているのかを確認できます。Depends.exe は、Visual C++ .NET などに含まれています。Depends.exe は、\Microsoft Visual Studio .NET 2003\Common7\Tools\Bin フォルダにインストールされます。Depends.exe 実行可能ファイルは、デフォルトではインストールされません。このファイルをインストールするには、カスタムインストールで、インストールする項目として [Visual C++ .NET] の [Visual C++ ツール] にある [Win32 プラットフォーム SDK ツール] チェック ボックスをオンにします。
Visual Studio 6.0 のころは標準でインストールされた気がしたのだけど、Visual Studio .NET は選択項目になったのだな。6.0 のころから選択項目だっけ。
_ ソフトウェア開発プロセスの大別
ソフトウェア開発プロセスは大別して以下の 2 とおり。
- 逐次型
- 反復型
逐次型はウォーターフォールモデルのこと。
反復型はインクリメンタルモデル、スパイラルモデルなどのこと。乱暴な言い方をすればウォーターフォールモデル以外のモデルである。
これら 2 つの違いは以下。
モデル | 特徴 |
逐次型 | 仕様は確定していることを前提として作業 |
反復型 | 仕様を修正しながら作業 |
仕様を修正しながら作業というのはだいぶ違うなあ。
_ ソフトウェア開発プロセスのパターン
ソフトウェア開発プロセスを適用するパターンはソフトウェアによって異なる
- スペースシャトルなどに載せるソフトウェア( 失敗は許されない )
- クリスマス商戦や年末商戦などに投入するソフトウェア( その時期が過ぎたら価値が無くなる )
- 展示会のデモ用のソフトウェア( とにかく動けばいい )
ラピッドデベロップメントにはいくつかのソフトウェア開発プロセスが書いてあり( 20 個くらいあったはず )、それぞれのソフトウェア開発プロセスがどのようなソフトウェアに適しているかも書いてある。
4756108032
_ ソフトウェア開発プロセスの笊( ざる )
ソフトウェア開発において以下のようにたとえる。
- 不具合を石とする
- 不具合の修正作業を笊とする
ここでの不具合とは、要求仕様の不具合、要求仕様の解釈の誤りによる設計仕様の不具合、設計仕様の解釈の誤りによる実装の不具合などあらゆる修正対象のこと。石が大きいということは出戻りのインパクトが大きい不具合、構造的な不具合である。石が小さいということは出戻りのインパクトが小さい不具合である。off-bye-one エラーとか。
反復型開発ではこの「 石 」を通過させないための「 笊 」の目を如何にして小さくするかを目標においた開発手法である。笊の目が小さければふるいにかけられた後に見つかる石は小さい( 出戻りインパクトが小さい )。笊の目が大きいとふるいにかけたあとに見つかる石は大きい( 出戻りインパクトが大きい )。
などということを勤務先の担当のひとと話していた。
笊の目が細かすぎると、石は除去できるけど、ふるいにかけ終わるまでの時間が大量に必要になる....
そうなのですよね。<br>笊の目の細かさはレビューの回数であると思ってるのだけど、笊の目の細かさと時間/人員のリソースはトレードオフなのですよね。