[SCだより 98号]

(第16回)

 ソフトウェアを設計しているときは、設計者はどの要求項目がどれとどれのコンポーネントによって満たされているかを知らなければならない。あるソフトウェア基本構造を選択するときは、すべての要求項目が「含まれ」ていることが重要である。稼働開始後、故障が発見されたときは、保守担当者は故障の原因を含んでいる可能性が最も高いソフトウェア・コンポーネントを速やかに特定する必要がある。保守作業中にソフトウェア・コンポーネントが修正されると、保守担当者は他の要求項目が悪い影響を受けていないかを知る必要がある。

 こうした必要性のすべては、ソフトウェア・コンポーネントのすべてに対応する「行」と、ソフトウェア要求仕様書のすべての要求項目に対応する「列」からなる大きな表を作ることによって満たすことができる。ある升目に存在する"1"は、この行の設計コンポーネントがこの列の要求項目を満たす関係があることを示している。"1"が存在しない「行」はコンポーネントに目的がないことを示し、"1"が存在しない「列」は満足されていない要求項目を示すことに注目して欲しい。ある人は、この表を正しく維持するのは困難だと主張するが、私はソフトウェアを設計または保守するためにはこの表が必要だと考える。この表を作らなければ、ソフトウェア・コンポーネントを誤って設計したり、保守期間中に膨大な時間を費やすことになるだろう。このような表がうまく作れるかどうかは、各要求項目をユニークに参照する能力にかかっている。

(201の鉄則:原理62<設計の原理=設計から要求項目を追跡せよ>)

― 解  説 ―

 この鉄則の前提となるのは、原理52の「どの要求にも別々に番号をつけよ」という鉄則です。以前にも述べましたが、要求を適当なカテゴリに分けて個条書きに整理し、それに番号をつけて表す方法は、とても効果的な方法であり、それによって、そのあとの作業が進め易くなります。ソフトウェアのバグの原因として、要求そのものの認識を間違えていたり、理解の不足から、その要求の実現に必要な処理が抜け落ちていたりします。設計者の意図と違って表現されたものは、コンパイルや設計者によるテストの段階で、殆ど発見されることになりますが、設計者の意図に“沿っている”バグは、テスト段階に入っても当人の目には見えないわけで、これは他の人の「目」の助けを借りることになります。ウォークスルーやピア・レビューというのは、将にこの「他人の目」に晒すことで、設計者の目には見えないバグを見つけようというものです。

 したがって、その「要求」が、どのコンポーネントで処理されているかということが、他の人に見える形になっていることは、とでも重要なわけです。

設計書を補足するもの

 なんとか設計書が書かれている組織でも、設計書を補足するような資料までは書かれていません。ウォークスルーなどで発見されるバグは、その場に出された成果物の持つ「機能」によって決まります。50ページの設計書で見つかるバグは沢山ありますが、たとえば、#257の要求は何処で実現されているのかということを見つけるのは容易ではありません。設計書の中に「#257」という文字が埋め込まれていたとしても、「このポンポーネントに関連する要求は#257である」ということが分かるだけで、その逆は分かりません。

 「サーチ」で探しても、その番号が複数カ所に埋め込まれているときは、それらをまとめて理解することは困難です。また、類似の要求(#259)との「違い」も見えません。

 このようなときに、設計書を補足する資料として、たとえば、縦に要求番号を書き、横方向にコンポーネントの名称を書いたマトリクスを用意し、その「交点」に関連を表す"1"の記号を記しておくことで、要求と、それを実現しているコンポーネントとの関係を一目して見ることが出来ます。このような補足資料を惜しみなく作ることが、ソフトウェアの開発作業を円滑に進めるのです。

コンポーネントの認識

 ここで「コンポーネント」をどのように捉えるかという問題が生じます。たとえば、これを「タスク」と解釈することができます。このばあい、マトリクスで見えるものは、それぞれの要求がどのタスクで実現されているのか、あるいは、その要求に関連する処理がどのタスクに存在しているかというレベルになります。この捉え方は、確かに粗っぽいかも知れませんが、マトリクスはコンパクトになります。

 一方、コンポーネントを「関数」と捉える方法もあります。しかしながら個々の関数レベルで表現するとマトリクスの横方向は、爆発してしまいます。たとえ、マトリクスを分割しても、システムによっては現実的ではありません。

 そこで少し大きめの関数(上位レベルの関数)で捉えることもできます。実際、「その要求に関係している」というとき、ある関数を頂点にして、一連の処理を下位の関数を含めた“グループ”で実現しているものです。そこで、「関数A」をコンポーネントとして認識することになりますが、関数によってレベル(深さ)の違いが発生し、「横軸」にどこまで書けばいいのか難しくなります。

 そこで、マトリクスの交点に"1"と書く代わりに「関数A」を書く方法があります。関連する関数グループが複数個あれば、一つの交点にその数だけ書くことになります。ただし、このマトリクスの欠点は、一つの関数(代表)が、複数の要求の実現に関わっていても発見しにくいということです。少しでも、この欠点を補うために、同一の関数名が他の交点にも書かれていると言う場合、関数名に特殊な記号を付加して、注意を促すという方法をとりますが、これとて完全ではありません。

作れるかどうかではない

 私は、CMMのセミナーやコンサルティングの際に、「要求管理」の取り組みの中に「原理52」を併用しています。しかしながら原理52を説明すると、「確かにそれが出来ればいいと思うが、要求を個条書きにして一つひとつに番号を付けるなんてとても出来ない」という返事が返ってます。「出来ればいいこと」と分かっていることに対して、「出来るかどうか」という議論は、何の意味も持ちません。そこで行なわれるべき議論は、「どうやってやるか」でなければならないのです。もし、それ以外の議論が存在するとすれば、「原理52」に代わる方法についての議論でしょう。

 これを読んでいただいているソフトウェアの開発に携わっている皆さんは、このことを良く認識していただきたいのです。


“SCだより”のページに戻る


(第98号分)

ソニーの警鐘の意味

▲先日ソニーが、次の取締役会をニューヨークで開くと発表した。別にテレビで報道されたわけではないので、殆どの人は気付いていないでしょう。確か、ソニーには外国人の取締役が何人か居たと思う。だからといってソニーぐらいの企業ならNYで取締役会を開いても可笑しくはない、と軽く流されても困ります。

▲このニュースの2週間ほど前に、スェーデンの大手通信機メーカーのエリクソンが、本社の国外移転を検討すると発表している。報道によると、エリクソン社はスェーデンの総輸出額の15%を稼いでいて、本社が国外に出ることで、スェーデンの国としては非常に大きな損失となることは間違いないわけです。最大の理由は税率の高さという。そのため、優秀な技術者もスェーデンから出ていってしまうのです。

▲経済が“グローバル化”するということは、経済活動に国境はなくなるということであり、「企業が国を選ぶ」ということでもあります。もっとも国の庇護を受けている企業には、そのような選択肢はありません。通貨統合を目の前にしたEUでも、活動の最適地を求めて企業は動いているのです。それに合わせるように、人も動いているのです。あのフランスでも、若者は英語を身に付けようとしているという。

▲ソニーの発表の2日前、来年度の税制改正に法人税の引き下げは含まない、という首相の発表があった。日本の法人税や所得税は世界でも高い部類に入る。このままだと、来年の外為法の改正を機に、スェーデン同様に有力企業は国外に本社を移すだろうし、優秀な人は、それについて活動の拠点を海外に求めるでしょう。国内に残るのは、庇護から抜けられない企業と、海外に出るメリットのない企業と、生産性の低い企業になってしまう。すでに国同士の「経営競争」の時代に入った。ソニーの発表はその試合開始のゴングでもあるのです。



“SCだより”のページに戻る



 第81回

世代責任


 12月の地球温暖化防止京都会議を前にして、温暖化ガスの削減目標で、日本、米国、EUの3者が、それぞれの思惑をぶつけあっている。アメリカにしてみれば、現在の経済上の覇権を失いたくはないという思惑があり、日本は思ったような規制が実現できないという後ろめたさがあるのにたいして、既にゴミの問題とか、エネルギーの問題などの分野で、ある程度成果を上げているEUとしては、これこそまさにアメリカと対等に戦う土俵とばかり、攻勢の手を弛めない。

       ◆

 ドイツでは焼却ゴミの削減の成果は素晴らしいし、デンマークではビールや清涼飲料水から「缶」を追放した。北欧ではたしか原子力発電を中止した国がある。万一の時に、取り返しの付かない事態を招くというのがその理由である。当然、国を挙げてのエネルギーの削減に取り組んでいる。日中の太陽エネルギーを家の中に蓄えて、暖房のエネルギーを最小限に抑えるための「家」の工夫も素晴らしく、真冬でも日中は殆ど暖房を使わないで済むという。

 少し前に、ドイツのコール首相は、その演説の中で「我々の世代が環境を破壊する権利はない」との主旨の話しをしている。その背景にあるのは「世代責任」という考え方である。

       ◆

 それぞれの世代は、自分たちが先代から受け継いだ「良いもの」は、そのまま次の世代に引き渡さなくてはならないし、必要なら自分たちの世代で改良して後世に伝えなければならないというのである。自分たちが豊かな生活を送るために、木を切り尽くしたり、水を汚したり、大量のゴミで地面を産め尽くすようなことをしてはならないのである。

 さらに「世代責任」はもっと広い視点に立つ。それは子供の世界を守るということです。水や空気や遊び場を守るだけでなく、子供の成長に害になるものを残さないというところまで広がる。EUは、通貨統合を前にして、色々な文化の統合も行なわれようとしている。その中で、「世代責任」という考えが、しっかり根を下ろしているように見える。

       ◆

 翻って我が国ではどうかというと、山は植生を無視した植林でその本来の生命力を無くしたし、川は、わざわざ自然を遮断するコンクリートの壁を作って浄化能力を無くした。その結果、海は汚れ放題である。海への排水だけでなく、“いけす”による養殖も、自然の包容力の限界を超えていることで、海底は汚れ放題である。

 空気の方も、いい加減な規制によってダイオキシンは拡散し、その影響は川を流れ既に日本の近海を汚染するまでになってしまった。恐らく何年かすると、この国のガンの発生率は高くなるものと思われる。実際、関東近辺のある県では、ゴミ焼却場が輪流する地域で、新生児の死亡率が高くなっているという。

 山あいの谷間は、ゴミ焼却施設の残灰や産業廃棄物で埋め尽くされ、次の世代になって、これが新たな公害となって問題になるだろう。

       ◆

 町の中は、投げ捨てられたタバコの吸い殻で溢れている。地下鉄の空気孔の傍を通ると、その中に溜まったタバコ吸い殻の臭いで息も出来ない。酒やタバコの自動販売機は無造作に置かれており、買ってくれる人なら子供でも誰でも「お客」だと言わんばかりである。子供には刺激が強すぎる雑誌などがコンビニなどで何の規制も売られている。麻薬なども街角で簡単に手に入るようになったようで、実際に小学生で逮捕されるのも珍しくはなくなった。

       ◆

 子供の遊び場も無くなってしまった。みんな大人が金儲けのために取り上げてしまったし、世の中の仕組みも、子供の未知の能力を活かすようにはなっていない。誰も次の世代の事など本気で考えていないように見える。

 団塊の世代は、次の世代に一体何を残したのか。自分たちがオモシロ、オカシク生きていくことが出来ればそれでいいのだろうか。大金を投じて、せっせと緑を削ってゴルフ場は作っても、子供たちの遊び場や、スポーツ公園など、スポーツに汗を流せる施設は造らない。僅かに少し前まであった広場は、先月、駐車場に変わってしまった。少し広めの公園は、今ではお年寄りのゲートボールで「占拠」され、小さなこどもは近づくと叱られる。もちろん、小学生ぐらいになると近付きもしないが、かといって、行くところはないから、「ゲーセン」に浸るしかない。

 子供たちの目には、大人たちの勝手な行動が見えている。大人たちは、自分たちが遊ぶことばかり考えていて、子供のことなど後回しにしている姿が丸見えなのである。

       ◇

 一体、この国の大人は、子供にどんな夢を託しているのか。この国には、「世代責任」という意識のカケラもないのか。

       ◆


“SCだより”のページに戻る

 (第98号分)

「伝統とは放置しても継続するものではなく、こちらが何もせずともそこにあるものでもなく、過去の中から救い出して獲得しなければならないものである」      小林秀雄


 つまりよい「伝統」というのは、それを意識しないと続かないということになる。いくら歴史があるからといっても。それだけで続くというわけではないことは、周りを見れば納得するところである。

 「伝統工芸」なども、それを伝えることが非常に難しくなっている。身の回りの「文化」を見ても、家庭という中にあった日本の文化は、今日、ほとんど消えてしまった。食事の中にも、日本の伝統と言えるものは少なくなった。

 童謡も歌われなくなった。親が幼児期に聞かせなくなったため、それを聞き分ける感性を身に付けていないのだろう。幼児期に童謡に接することは、子供の感受性を豊にしてくれる。このことは、殺伐とした表情の子供が増えた原因の一つではないかと思っている。

 どうやらこの国は、「核家族化」ということで住環境が大きく変化して以来、伝統として維持するのに相応しいものを過去の中から救い出すことが出来なくなったのだろうか。親子の関係、家族の関係、隣人との関係なども、日本の伝統と言えるものは無くなった。あまり癪にさわるので、わが家では子供が10歳になったときに、論語、小学、大学から抜粋して週2回、約2年間教えたりした。これは日本の伝統だったはず。だが今日では「奇異」な家庭に見られるだけのようである。身を守る術、人と対応する術、そして人として生きる術が、時代を越えてそこに詰っている。それをどうして伝えないのか、私には理解できない。

 外国の人から、今の日本人の個人主義は「孤人主義」である、と言われて、したり顔をして納得するほど腑抜けたつもりはない

 私たちは、次の世代に伝えるものを、いったいいくつ持っているだろう。


“SCだより”のページに戻る