従来のソフトウエア工学は,ソフトウエアを「工業生産物」としてとらえてきた。その開発は「工場内の流れ作業」であり,「いくらでも代替可能な開発者が定量的に投下できる」と見なしていた。重んじられるのは開発者よりも管理者であり,経験や熟練よりも資格の有無であった。
宇宙開発や軍事開発など,国家的な巨大プロジェクトでは,従来のソフトウエア工学の手法は有効だった。そもそも,巨大プロジェクトにおける必要性からソフトウエア工学が誕生したのであるから,当然といえば当然である。
しかし,その手法が商用ソフトウエアに適用されると様相が一変してしまう。
人員は膨らみ,コストがかさむ。その一方で,ソフトウエアには「クール」な機能が次々と付け加えられていく。機能が飽和状態となり,明らかに使いにくいものであっても,悪いのはそれを使いこなせない「間抜けなユーザー(lusers)」ということにされてしまう。開発に人員が過剰に投下されながらも,保守はないがしろにされるため,ますますこんがらがったソフトウエアが出来上がっていく―著者は従来のソフトウエア工学の問題点をこのように描く。
こうした現状を踏まえて,ソフトウエア工学そのものの変革を唱えているのが本書である。
まず,従来のソフトウエア工学的なメタファから「職人気質」というメタファに切り替えよ,と筆者は主張する。顔の見えないソフトウエア開発者より,自分の「作品」に責任を持つソフトウエア職人を重んじたほうが,結果として生産性の向上につながると説く。後継者育成という観点においても,「職人的な徒弟制度の方が,従来の学校や資格制度よりも有効」と指摘する。
職人気質や徒弟制度と言うと,いかにも前時代的な考え方に聞こえる。「工芸品を作るのには適しているのかもしれないが,近代的な生産物を作るのにはあまりにアナクロな発想だ」。だれもがまずそう考えるだろう。
しかし,そのとき我々は「ソフトウエアとは工業生産物である」という観念に知らず知らずのうちにとらわれてしまっているのではないか。そうした意味で著者の主張は新鮮だ。
著者は職人気質のメリットとして,「自分で考え,個人あるいは少人数グループで理解可能な“作品”を作り出すから,ユーザーとの乖離かいりがないこと」や,「ソフトウエアにクレジットを入れることによって,仕事に対して責任が持てるようになること」などを挙げる。
後継者育成についても,「アプレンティス(弟子)」,「ジャーニーマン(一般職人)」,「熟練職人」といった徒弟制度のメタファを提示して言及している。このメタファからは,ソフトウエア工学が長年見捨てようとしてきた熟練の「技」を再発見できる。
(日経コンピュータ 2002/06/03 Copyright©2001 日経BP企画..All rights reserved.)
登録情報
|
優れた技術者は良い仕事をする。あたりまえのことだが、これを忘れ
ている経営者が多くないだろうか? また、優れた技術者を育成する
のも優れた技術者の仕事であり、会社にとって最も注力するべき仕事
だろう。
本書の一節に、「非常に優れた技術者のほとんどは、やがて独立するか
もっと報酬の多い職種に転職する」とある。この問題をどう捉えるか、
管理職や経営者の方によく考えて頂きたい。
NCマシンやCAD/CAMが進化したとは言っても、製造の現場では定量化され
ていない事象があまりにも多く、思ったようには進みません。
そのため、定型処理や荒加工は自動化できても、納品できるレベルに達
するには職人さんに頼ることも多く、彼らなしには製造業は立ち行かな
いのが現実としてあります(「勘所」という奴ですね)。
本書は半ば強引な論調に思える言い回しもありますが、対比によって
理想=ソフトウエア工学(NC機械)
現実=クラフトマンシップ(職人)
を浮き立たせ、一見相反する存在の特性をうまく表現しています。
開発技術の具体例を述べているわけではないので、そういう話を期待す
るとガッカリすると思いますが、理想と現実に振り回されがちな開発者
達に対して健全な心構えのあり方も示しており、その意味では個性のあ
る良書だと思いますね。
当たってるけど、改善が必要。
|
|
|