アラン・デービス著の「ソフトウェア開発 201の鉄則」と言う本が日経BP社から今年の3月に出版されています。原書の方は1年前に「201
Principles of Software Development」という題で出版されています。この本は表題の通り、ソフトウェア開発全般にまつわる多くの人のエピソードや教訓を紹介したものです。
これまで世界中で多くの人がソフトウェアの開発に携わって、そこで多くのことを経験し、多くのことを学んできました。残念ながらこの種の学習の常として、殆どは失敗の中から学んだものですが、彼らは失敗を(時には成功を)反省し、後世の人たちに対して心を込めて「こうしてはならない」ことや、「こうすれば上手くいく」と言うことを、いろんな機会を通じて伝えてきているのです。
著者のアラン・デービスは、長らく「IEEE Software」のチーフ・エディターをやっており、多くの人の「伝言」は彼の手を通して世の中に伝えられてきました。そのような「伝言」の中から、時代を越えて通用する「伝言」を集めて、1冊の本にしたのが「201の鉄則」です。
この本に書かれている「鉄則」に反するような開発のやり方では、プロジェクトの成功は覚束ないでしょう。実際問題として、開発が思うように進まない組織では、90%以上の項目で反したことをやっているものと思われます。
21世紀を考えると、せめてこの「201の鉄則」の半分ぐらいは実現していなければ心許ない限りです。 はじめに
今回から、このアランの「201の鉄則」を中心に先人たちの「伝言」を紹介し、それを「解説」していきます。「SCだより」の読者の皆さんが置かれている状況を想定して、この「伝言」を借りて、そこにある問題を取り除くための手立てを提供してみたいと思います。
21世紀は、今以上に生産性が求められます。システムが複雑化し高機能化する中で、ハードウェアが簡素化していくのに反して、生産活動全体に於けるソフトウェアの比重はますます高くなっていきます。言い換えれば、ソフトウェア開発の生産性が製品のコストに影響与える可能性が高くなってくるということです。
21世紀においてもソフトウェアの開発に携わるためには、その開発プロセスが効率良く運営できていることが条件になります。
なお、ここでは「201の鉄則」の全てを紹介するつもりはありませんので、ぜひとも「ソフトウェア開発 201の鉄則」を読まれることをお勧めします。また「201の鉄則」は、ソフトウェア・エンジニアリングの分類に従って整理されていますが、私の解説は、読者のニーズを考えて先に行ったり、戻ったりすることになります。
さすがに第一回目は原理1から紹介します。やはりこれを飛ばして他の項目を紹介するわけには行きません。
私達は生産者であると同時に消費者でもあります。時には自分が作ったものを店で買うことになるかも知れません。そのような立場では品質の悪い製品に対して怒りを覚えるものですが、いざ自分が職場でソフトウェア・システムを作っている時には、前日に感じた品質の悪さに対する怒りは他人事になっているのです。
人は確かに「立場でものを考える」ようです。消費者の立場の時には消費者として反応しているのに、生産者の立場になった途端に、生産者としての思考になっているのです。
やはり生産者の立場でいるときも、消費者の視線は必要です。消費者の視線で考えたとき、品質を無視して納期を優先するような行動は出来ないでしょう。それでもそのような行動に踏み切るのは、彼が直接に顧客や消費者の怒りの声を聞かないからです。もし、自己完結型の開発体制であれば、クレームは全て開発メンバーに飛び込んできます。そうなれば、もう何も手を付けることは出来ないでしょう。
もう一つの原因としては、どうすれば品質を上げる事が出来るのか分からない、という状況が考えられます。製品の品質は、製造プロセスの品質に大きく左右されます。この基本は対象がソフトウェアであろうと、一般の工業製品であろうと同じです。
ソフトウェアの場合の製造プロセスとは、要求分析からテストまでの工程において存在しますが、重要なことは、そのプロジェクトに応じた「開発モデル」を明らかにすることです。これは工業製品の製造ラインに対応するものです。そのモデルの中に存在する「工程」に対して、どのような手順で作業を行うかを決めたものが「作業手順」ということになります。
そしてその「手順」の中に、効率良く「レビュー(またはウォークスルー)」が組み込まれていることです。逆に言えば、レビューが効率良く行えるように「工程」と「手順」が工夫されなければなりません。
更に言えば、それらが確実に実行されるためには「厳格なスケジュール管理」が為されなければなりません。これが甘いと、結局“時間がない”という理由でレビューがパスされてしまい、品質を確保することは出来なくなります。
このようなことが明確に出来ない開発組織では、多かれ少なかれ品質を犠牲にして納品されてしまいます。
残念ながら多くの開発現場に於て「原理1」に反した活動が為されているようです。特に最近は開発期間が短縮された分だけ、品質に問題を抱えたままで納品するケースを耳にします。その結果は何時までもクレームが収束せず、まさに“エンドレス・プロジェクト”になってしまいます。
そのような製品を一つ作ってしまえば、その「報い」は数年に亙って受けなければなりません。勿論その間に開発する製品の品質にも影響を与えますので、影響は数年では済まなくなります。品質の軽視は「長い目で見れば自殺行為である」ということになるのです。
どうしても納期に間に合いそうもないというときには、早い時期に機能の一部をトレードオフする交渉を行うべきです。システムに組み込まれる機能の中には、最初の納期に設定されている期日に間に合わなくても許される場合があります。もちろん、いつでもそのような機能があるとは限りませんが、システムによっては意外とそのような機能が見つかるものです。
もちろん、そこでトレードオフした機能も、本当に必要な時までには用意されていなければなりませんが、それでも2、3週間は稼げることもあります。そこまでしてでも、提供する機能に欠陥があってはならないのです
厄介なことに、このような道理を知っていても、「多少の問題に目をつぶっても納期に間に合わせろ」という指示が出されると、我が国ではヨードンが主張するように「ノー」と言えない状況があります。余程、力のあるリーダーでなければそのような主張は通らないでしょう。
だが品質を疎かにした結果、その組織の行く手に待ち構えているのは「蟻地獄」です。
この点に関しては、「何とかなるだろう」という認識は、その蟻地獄を前にして木端微塵に吹き飛んでしまうのです。いま困難に陥っている開発組織は、数年前にこの「禁」を犯した可能性が高いのです。
しかも一度この巣にはまったらそう簡単には抜けられません。現実には、このような組織ではメンバーがばらばらに動くため、ますます深みにはまっていきます。大事なことは秩序ある行動と、この魔のサイクルから脱出するのに必要なスキルを計画的に身に付けていくことです。そしてこれをどうやって実現するかです。それ程、この鉄則1に反すれば高くつくということを、管理者は十分に認識して欲しいものです。大事な人材を台無しにしてしまわないためにも、展望の無い決定は避けて欲しいものです。
(次号へ続く)
前号で求人・求職活動にインターネットや電子メールを活用することの効用について触れました。「世はインターネット時代」とまでは言わないが、これからは一部の職種や企業を除いて、インターネトを利用して効率良く求人・求職活動をする方向に向かうだろう。
あの吉本興業ですら「インターネットでしか応募を受け付けない」と言い出した。吉本とインターネットの取り合わせには違和感を感じたが、考えてみれば時代に最も敏感な業種ではある。もしかして、世界に通用するエンターティメントを標榜するには、インターネットに習熟した人間は不可欠と見たのかも知れない。今年は、他にもインターネットで求人活動に挑戦した企業はあると思われる。
◆ ・ ◆
「インターネットで応募した学生に特に際だった特徴がなかった」―これは八月のある新聞紙上で紹介された、電子メールで学生を面接した企業の人事担当者の言葉である。いったいこの人事担当は何を期待したのだろうか。口数が少なく、黙々と仕事をこなし、会社のために全てを捧げてくれるような人を電子メールで探そうと思ったとしたら、ちょっと早すぎるのではないか。まだまだインターネットは“走り”の段階で、既に個人のIDを持っている学生は余程新しいもの好きだ。企業の人事担当が欲しがるような「腰を据えて、じっくり取り組むタイプ」は、まだ表には出てこないだろう。
逆に、新しいものに積極的に挑戦していくタイプの学生は、既に出てきているはずである。彼らは一体何に使えるのかよく分からないけど、面白そうだからやってみようと、すぐに行動を起こすタイプである。自分のサイフも省みずに欲しいものを手に入れていく。
◆ ・ ◆
アメリカで数年前にインターネットが普及し始めたとき、WWWサイトを検索することの不便さに気付き、「モザイク」や「Yahoo」といった検索ツールを考え出し、それをビジネスにしてしまったのは、まさに「新しいもの好き」の学生であった。そしてその彼らを囲い込んだのが今のネットスケープ社である。
もし、人事担当者の頭に描いている「ビジネス」の姿が今までと変わっていないとすれば、いくらインターネットを使おうと、電子メールでやり取りしようと、「際だった特徴」の学生が見つかるとは思えない。
人の眼は、自分の立場や、基本的な考えの方向に沿ってしか「物」は見えないものである。
◆ ・ ◆
先の人事担当者は、既存の体制のままで求人活動をすることの不合理性に気付いていないのではないか。その企業の目指す方向や、学生に求める資質が変わらないのなら、今まで通りの求人活動を続ければいい。インターネットという「流行り」に乗る必要はないし、乗ったとしても、「特に際だった特徴がなかった」という結果になるのが落ちである。
しかしながら、新しい時代に則した仕事が出来る人を求めるのなら話は変わってくる。時代の要請は、開発のスピードと品質とコストに、今まで以上のものを求めてくる。そのためには無駄なリワークを嫌う人が必要になる。たとえ先輩であっても、リワークの要請を簡単には受容しない姿勢が求められる。
また、電子メール人間は、思ったこと、感じたことを瞬時に表現できる人間である。「後でいいや」と言う言葉では済ませられない。このような人は、時には組織の上司を飛び越えて電子メールを飛ばすだろう。もちろん、それが気に入らない上司もいるだろうが、それ自体が不合理である以上、これからは通用しない。
◆ ・ ◆
全ての「無駄」を否定するわけではないが、無駄の多くは不必要なものである。たしかにそこに「ほっ」とさせられるような生きた人間の営みを見ることもあるが、それも「限度」がある。それを超えれば「只の無駄」でしかない。
ちょっとしたミスも、早期に発見できる体制があって、そこで発見されるかぎりにおいては「頭を掻いて、笑って済ませる」ことができるが、最後の段階で露見したのでは、笑って済ませることは出来ない。
年令や先輩後輩関係なく、こういうことが主張し合える環境を作らなければ、時代の要請には応えられない。そしてこれには今までと違う発想が求められるのである。
大企業の人事担当といえども、今までの「人事」という枠の中で世の中を見ていると、このような変化に気付くのが遅れてしまうだろう。もし、先の人事担当者が、今までと違った視点でインターネットの向こうにいる学生を見たなら、「際だった特徴」を持つ学生が目に写ったことだろう。
◆ ・ ◆
インターネットは選択肢の一つとして普及しているわけではない。今はまだ模索の段階で一つの選択肢として存在しているが、問題はこれをどのように活かしていくかである。そしてその段階に入ったとき、一つの選択肢としての存在ではなくなっているだろう。 ■
「政治家に何を期待しますか?」という質問に対して「誰がなっても一緒じゃないの?」という応答。時節柄、衆議院の解散に絡んでいろいろな憶測が飛び交っている中での、街角でのインタビュー光景である。
スマイルズは「国民全体の質が、その国の政治の質を決定する」ともいっている。このことは、政治は国民が思っている方向に向かうということを意味している。どうやら国民は政治の受益者であると同時に、参画者でもあることを忘れている。
企業の中の組織にも同じことが言える。例えば組織としての決定が遅いような場合には、その組織を構成するメンバーも、決めるために必要な情報を収集・整理する努力もせずに、誰かが決めてくれるのを待っている姿勢が目立つものである。
そのような状況を改善するために「決定のためのガイドライン」のようなものが示されても、今度は的確な情報収集の指示が出されなかったり、一度決められたガイドラインに固執してしまったりして効果が持続しない。
「世間を動かそうと思ったら、まず自分自身を動かせ」とはソクラテスの言葉である。
結局、何のために仕事をするのかとか、何のために他社と競争をするのかとか、なぜ競争を優位にするためにコストダウンを図るのか、といった基本的なところが欠落したままでは、どんなルールを作ろうと姿形を変えて「組織悪」は現れてくる。
明け方の雨に あさがおの花 無残
蹊成