Programmer's Note

コード読み書きの備忘録。

Software Constructとベナー看護論

The Pragmatic Bookshelfのサイトを歩いてたら… 「達人プログラマー」のAndy HuntとDave Tomasが、IEEEに連載してたコラムの一覧が出てきた。IEEEにコラムを書いていたのか、知らんかった。

 参照:The Pragmatic Bookshelf | IEEE Articles

IEEEて名前だけ知っててまともに読んだこと無いな・・・と思いつつ、 一番上のコラム「Practice (pdf) (Nov, 2004)を読んでみる。

このコラムはSoftware Constructionに関して語っている。 ソフトウェア開発プロセスの分析、設計、実装ていう中の実装のことですね。

ソフトウェア開発でよく使われるメタファに「建築」があって、 どうも実装ていうと、家を建てるみたいに、設計図が完成してれば、 あとは工数があれば勝手に出来てしまうイメージがある。 (まあ、いまだに日本はウォーターフォール主流だしな・・・、少なくともこのコラムが書かれた時期2004年のアメリカも同じということか)

結局、そういうのが出来るのって、建物を構成する部材、使う道具とかに まったく新規性が無い場合だけに限る。と。 たとえ家を建てるにしても、新しい材料とか工法を試すとなれば、 設計図だけ渡してあとはよろしく、という訳にはいかない。と。 やっぱアーキテクトは現場に足を運び、こまめに状況を確認して、もし設計が現実と合わなければ調整する必要がある。ということを言っている。

確かに、ソフトウェアがまったく既存の部品の組み合わせで、 ほんとにパターン化できるんなら、分析・設計・実装を分けた方が効率がいいかもしれん。 しかし、現実にはソフトウェア開発はいままでにないものを作る、のが仕事なので、 やはり建築というメタファを適応するのは無理がある。

理論、設計もいいが、Practiceが大事ということだ。手を汚せと。 この記事では、Patricia Bennerの”Novice to Export: Excellence and Power in Clinical Nursing Practice"が紹介されている。邦訳は「ベナー看護論」。

Amazon.co.jp: ベナー看護論―初心者から達人へ: パトリシア ベナー, 井部 俊子: 本

おお、「ベナー看護論」だ、と思った。Andy Huntの名著(と個人的に思っている) 「リファクタリング・ウェットウェア」でも引用されている。

「ベナー看護論」はドレイファス・モデルというスキル上達の5段階レベル理論を看護の世界に実践に取り入れたもの。らしい。らしいというのは、この本はマークはしてたが、実は読んでいない。(ドレイファス・モデル自体は「リファクタリング・ウェットウェア」で概要は読んで知っているが。)

が、AndyさんがIEEEでも紹介するとは、相当「ベナー看護論」にインパクトを受けたんだな。 と思い、やっぱ読まないといかんなと。