[SCだより 118号]

(第36回)

 どんなソフトウェア・システムでも、継続的な変更に曝されているうちに、どんどん複雑になりますます混乱していくものだ。稼働中のすべてのソフトウェア・システムが変化していくので、変化は不安定を招き、すべての有用なソフトウェア・システムは信頼性と保守性を低める方向へと移っていく。これが、Manny Lehman の「エントロピー増加の原則:Law of Increasing Entropy」である。
(201の鉄則:原理186<進化の原理=ソフトウェアのエントロピーは増加する>)

― 解  説 ―

 この問題は、ソフトウェアの世界においては、避けて通ることはできません。それが「ソフトウェア」であるが故に、なおさら避けることができないのです。逆に言えば、それがソフトウェアの「存在感」でもあるのです。とはいっても、現場の人たちにとっては、大歓迎というわけには行きません。「いつもしわ寄せを食うのは俺達だ」という不満も聞こえてきます。そう、しわ寄せを食うのはあなた達なのです。でも、それがいつもいつも不満になるわけではありません。快感に感じることだってあるのです。変化の内容は分からなくても、方向やパターンを予測し、予め仕掛けておいたことが功を奏した時などは、まさに快感です。もちろん、お客さんも喜んでくれます。多くのソフトウェア・エンジニアは、このような快感を味わったことがないのかもしれません。

変更の要因

 なぜ、いったん作ったソフトウェアに変更が加わるのか、と尋ねたら、あなたは何と答えますか?
 決して難しい質問ではありません。でも、本気になって考えたことがない人も多いのです。だから、最初は戸惑いますが、落ち着いて考えれば、たいていは答えられます。
1)隠れていたバグが発症したから
2)新しい製品で仕様の変更や追加があるから
と。ただし、多くの人はここで止まってしまいます。
 これは表向きの要因であり、直接的な要因です。もちろん1)は無いにこしたことはありません。起きてしまったものは直さなければなりませんが、今回の変更の要因が、最初に要求の認識の不十分さから、甘い仕様で実装してしまったことにあるケースも少なくありません。つまり、変更の要因は、自ら蒔いたものもあるということです。しかもその場合は、アルゴリズムや構造にまで修正が及ぶ可能性があります。
 問題は、これらの変更が、全くトラブルなく、まるでジグソーパズルのピースが本来の場所にはまるように行われることはないということです。実際は、周りのプログラムを傷つけ、それまでの役割を曖昧にし、構造を崩してしまうのです。

アーキテクチャ

 ソフトウェア・システムのアーキテクチャが、時代の変化を予測し、その時の対応を想定して作られているなら、簡単には、変更によって構造が崩れてしまうことはないでしょうが、それも、変更が予測や想定の範囲にあるときに限られます。一般には、アーキテクチャ設計の段階で、そこまで考えられていないでしょうから、比較的簡単に構造が崩れてしまいます。特に、サイクルの早い組み込みシステムの場合は、3〜5回の保守開発によって構造が崩れることも珍しくありません。それらは、「アーキテクチャ」ということを事前に意識してシステム全体の設計がなされていないことが原因と考えられます。
 家を設計する際にも「アーキテクチャ」が重要になります。5年後に、孫が帰って来たときに庭の方に部屋を増築しようと思っても、その面に構造上重要な柱が立っていたり、不用意に幾種類もの配管が壁を横切っていたりすると、変更に堪えられないことになります。それを強引に改築することで、構造が弱くなったり、パイプの継ぎ目工事でミスが“埋め込まれる”ことになるのです。もちろん、その後は頻繁に「工事(変更)」が入ることになるでしょう。
 ソフトウェアの場合も同じことです。単にその時点で求められている「機能」を実現するだけでなく、システムの進化の方向を見ることが必要なのです。

取り換えよう

 ある程度、変更が予測の範囲内なら、修正による影響も限られるでしょうし、修正の範囲や状況によっては、いじり回すよりも「部品」ごと取り換えても良いでしょう。もちろん、取り換えることで、思わぬところで影響が出るようでは困りますが、そのような影響が出にくいようなアーキテクチャも考えられます。オブジェクト指向自体が、もともとそのような環境を提供してくれる仕組みを持っていますので、その仕組みが生きるように正しく設計し実装すれば、「部品」の交換性は高まるはずです。ただし、単に「オブジェクト指向言語」を使っているというだけでは、これは実現しないことは云うまでもありません。
 とはいっても、組み込みシステムの世界では、まだまだオブジェクト指向が普及していないものと思われます。もっと正確にいえば、構造化手法に則っている訳でもなく、ただ「C」で書いているというだけですが。そのような環境では、変更に強いようによく考えられたアーキテクチャと、交換性が高くなるような設計、および実装のルールによって、ある程度は手に入れることができます。もちろん、これは誰にでもできるものではありません。手法の長所と短所が分かっていることが必要と思われます。それでも、このような考え方が、このあとオブジェクト指向への移行を支援してくれるはずです。

再構築へ

 もちろん、「アーキテクチャ」ですべてが救える訳ではありません。予測や想定を越える変更や、度重なる変更などによって、システムは弱くなって行きます。組織変更によってリーダーが変わったことなどでも、システムの保守性が低下することがあります。
 結局、どこかの時点でアーキテクチャの再構築が必要になります。減っていたバグが増えだしたり、「修正欠陥」が目立つようになったり、システムのサイズの増加が変更の要件(本来はファンクション・ポイント数)に対して目立ったりした時は、再構築へのシグナルかもしれません。単に担当者のスキルの問題であったり、マネージメントの手抜きが原因ということもありますが、「傾向」を監視しておくことで、その判断ができるはずです。
 ただし、アーキテクチャの再構築ができる人が、そこに居ることが条件ですが・・


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


(第118号分)

電子の武器 ― インターネット時代の消費者

▲メーカーの対応のあまりの悪さに業を煮やした消費者が、その対応ぶりを自分のHPに公開したことで波紋が広がっている。録音された電話の応対もそのまま公開するなど、公開にあたっては、余計な感情が入らないように相当に慎重に検討された様子が窺える。
▲メーカーは驚いただろうが、あとの祭りである。一部内容の削除を求めて仮処分申請を出すなどの対抗処置を講じたようだが、誹謗中傷ではないだけにそれも限界があるだろうし、下手な行動は、却って消費者の不信を買いかねない。消費者はインターネットの向こうで、メーカーの行動をじっと見ているのである。
▲かってダイレクト販売によって、対面販売から声を介しての販売になり、さらに e-commerce になると文字や画像情報だけで販売が成立する。互いに顔も見なければ声も発しない。消費者は、供給者が提供する情報によって判断する。そこに不安があることは知っている。だから消費者同士で防御のために連携をとろうとする。
▲インターネット時代にあっては、今までの常識は通らなくなる。情報は「あッ」というまに伝わってしまうのである。今までと同じ対応をしていては失敗することを供給者は気づかなければならない。供給者と需要者との力関係も逆転するだろう。今、消費者は「インターネット」という電子の武器を手に入れた。そして、そのことに気づいたはずだ。


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


 第101回

衰退する地方


 広島に続いて新潟の証券取引所も閉鎖になった。単独上場がわずか12社しかなく、98年度の売買高は、わずかに4700万株を越える程度である。最近の東証の1日の売買高が九億株程度に達しているのと比べると、寂しいかぎりである。というより、取引所の「体」をなしていない。

 昨今の経済状況の中で、中小企業がダメージを受けている。もちろん大企業も売り上げを落としているが、大企業の方は、体力が残っている分だけ、リストラやスリム化を計って建て直しに躍起になっている。それに対して、中小企業は、すでに体力を消耗しており、古くなった設備の更新もままならない状態という。これでは、早晩始まると見られているアジアの逆襲に耐えられない可能性もある。いや、その前に、銀行の融資引き上げなどに直面し、事業の継続が困難になっている。
     ◆ □ ◆
 銀行が公的資金を受け入れるということは、すなわち「健全な経営」に転換するということであり、それはとりもなおさず、融資に対しても「健全な利息」を要求することを意味する。もっとも、政府の方は、中小企業に対する融資残高が減少したことに対して注文をつけているが、これは明らかに矛盾している。とりあえず、黙っているわけにはいかないので、公的資金を投入した銀行に対して「注意」をしたものの、本気とは思えない。
     ◆ □ ◆
 「健全な銀行」から融資を受けるには、10%近い利益があがっていなければならない。少なくとも、5%の利益率では利息は払えない。ところが、多くの日本の中小企業は、まともに利益があがっていないのではないだろうか。そのような状況では、融資の打ち切りにあうのは避けられない。どちらかというと、自己資本が少なく、事業そのものが金融機関からの融資に依存している。「当座の融資―売掛金回収―返済」というサイクルを毎月繰り返していて、これではまるで、銀行を儲けさせるために従業員ともども汗を流しているようなものである。事業になっていないといえばそれまでである。
     ◆ □ ◆
 政府資金の緊急融資も、せいぜい寿命を半年延ばしただけで、結局は借入金を増やすことを手伝っただけ。売り上げが増えない状況では、逆に息の根を止めることになってしまう。このようなことから中小企業が多い地方の経済は衰退しているのだろう。証取所の閉鎖は、その象徴と言えそうである。このままでは、ますます地方では仕事がなくなってしまい、過疎化が加速してしまう。
     ◆ □ ◆
 まもなく介護保険制度が始まるが、介護が必要な高齢者は地方に多く残っているのに対して、働く人はいなくなっていく。この介護保険制度は地方で運営することになっているが、これでは最初から運営できない可能性がある。地方によって、介護に大きな格差が発生することも考えられる。若いうちは都会にいて、年老いてから地方に戻ってこられたのでは、介護保険制度は立ち行かないのである。
     ◆ □ ◆
 「地方の時代」とか云っているが、実際は、地方は衰退しているように思える。地方の財政もままならない状態であることもあるが、とにかく工夫がなされていない。ただ、“今まで通りの”地方行政をやっているように思える。たとえば大胆に地方税を安くしたり、事業税も、新規登録から五年間は半額にするとか、空港があるところでは、空港の利用料金を一気に下げたり、宅地の制限を大幅に緩和したりして、地方を活性化しなければならない。そのことに規制が残っているのなら撤廃するしかない。
     ◆ □ ◆
 そんな中で、大坂証券取引所では、先頃、中小企業向けの株式市場をオープンした。大阪は中小企業が多く、これまでの基準では上場できない。銀行からは融資が受けられない状況にあって、中小企業の資金調達手段を確保するために市場を作ったわけだが、それで問題が片づくような簡単なものではない。市場は作っても、投資資金が回ってくるかどうかである。投機的要素が高い以上、どうしても「エンジェル・マネー」が必要だが、それが回ってくるかどうか。ここにも規制が残っている可能性がある。
     ◇ ■ ◇
 これとは別に、電子メールやインターネットの普及などによって、本社が東京にある必要がなくなったということで、地方(北関東など)に引っ越した企業もある。ソフトウェアの開発なども、別に一つの場所に集まっていなければできないわけではない。SOHOも含めて、もっと新しい仕事の環境や進め方を考えれば、地方でも十分にやっていけるはずだ。地方に火種が残っている間に新しい時代に向けて変化させることである。いったん枯れてしまったら、財政も厳しくなるので、体力も失せてしまう危険がある。  ■


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

 (第118号分)


「真の教育というものは、単に教科書を型通りに授けるだけにとどまらないで、すすんで相手の眠っている魂を揺り動かし、これを呼び醒ますところまで行かねばならない」 
森信三

 今、小中学校で、学級崩壊が進んでいるという。どうやら、今のような学校そのものの存在が問われているようだ。もちろん、学校が必要ないというのではないが、今のような状態では、公立学校の存在意義を見いだせない。この国の間違いの一つは、教師という仕事を、数ある職業の一つとして扱ったことである。そんな所から生徒の魂を揺り動かすことはできるだろうか。
 教育は、感動を与えることである。その感動が眠っている魂を揺り動かす。それは、知ることの感動であってもいいし、教師との接点から発する感動でも、友達から得られる感動でも良い。存在を確かめられる感動が必要である。今、その感動が与えられていない。
 生徒側には「競争」があるのに、教師の側(職員室)には競争がない、というのも“いびつ”な結果をもたらしている。技術は競走の中で磨かれる。たとえ教科書を介してであっても、教えることが技術である以上、そこには競争は不可欠である。いや、数ある職業の一つというのなら、これも技術のはずである。「顧客満足」という観点からも「教え方」の技術として扱うべきであり、それは「競争」によって向上する。
 ハイエクは、「より多くの人々が恩恵を受け、競争を通じる社会制度や組織・体制が生き残る」と云った。ならば、この競争を放棄した今の学校という制度や組織は、崩壊するのは当然の帰結でもある。ソ連邦が解体し、ベルリンの壁が崩壊したように。


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