IT記者会Report

IT/ICTのこと、アレヤコレヤ

ソフトウェアとコトバ(7)

 「人間という生物は,コトバそのほかの記号を用いて,いくつもの世界を何もないところから創り出す」
 というのが,エルンスト・カッシーラーの主張であった.
 没後出版された『国歌の神話』(創文社)では,ナチスをはじめとする20世紀の全体主義体制を,運命の神話と非合理主義によって色づけられたものとして,批判的に論じている.
 ネルソン・グッドマンは,アメリカ哲学界にさまざまな論議を呼んだその主著『世界制作の方法』(筑摩学芸文庫)の冒頭でカッシーラーの主張を紹介しつつ,
 「しかし、無からの創造ではない.われわれが世界を作る行為は,すでにだれかの手で作られた世界をベースにして,その構成要素のいくつかを取り除いたり,新しい要素を付け加えたりして,諸要素の重み付けや配列の順序を考え直し,新しい世界のバージョンを作りだすという「再設計」の作業にほかならない」
 と述べている.

 「ソフトウェアとは,それが対象とする世界(の一部分)をモデル化した機械なのだ」というマイケル・ジャクソンの指摘に照らして考えれば,グッドマンが提示した「バージョン」の概念は,ソフトウェア・エンジニアにとって有益な示唆を含んでいるといえよう.たしかに,あるシステムを開発しようとする場合,われわれは決して「無」からスタートすることはない.
 すでに世の中に存在する類似システムを自分の記憶の中から(あるいはコンピュータ化されたデータベースから)探し出し,その機能的構成要素や全体の構造を与えられた仕様とつき合わせて検討するのが,仕事の出発点である.そして,新しい要素を追加したり、不要なものを取り除いたりして,全体の構成を考え直す.
 このようにして,少しずつ仕様の異なるさまざまなバージョンのソフトウェアがいくつも作り出されることになる.そうしたソフトウェアすべてを,それらの開発プロセスを記録したドキュメントも一緒に収納した架空のデータベースを想定してみよう.われわれが行うソフトウェア開発の仕事とは,このデータベースから自分が必要とする情報を引き出し,それに何らかの手を加えて新しいソフトウェアのバージョンを作り,その結果をまたデータベースに格納することにほかならない.

 そのさい,開発プロセスを構成する各ステップは,いわゆるウォータフォール・モデルが示す「要求分析→設計→プログラミング→テスト」といった直線的な順序で行われるとは限らない.たとえば、与えられた仕様ときわめて似通った既存のシステムが存在する場合を考えると,われわれはまずそのシステムを動かしてみて,仕様との差異を分析するだろう.
 そして,必要ならプログラムの細部を手直しして,全体の構成を整える.すなわち、その場合のプロセス・ステップの実行順序は,「テスト→仕様分析→プログラミング→(再)設計」ということになる.こうして,架空のデータベースをめぐってさまざまなプロセス・ステップがランダムな順序に発生するという状況を、わたしはかつて「フラワーモデル」と名づけて概念化を試みたことがある.
 このように考えてくると,あらゆるソフトウェア開発は,対象世界のモデルに関する既存のいくつかのバージョンに手を加えて新しいバージョンを作りだすという仕事だと考えられ,新規開発と保守開発あるいは派生開発との違いは消え失せてしまう.新規開発の場合は,エンジニアたちが,既存のバージョンが自分たちの目に見えず直接字自分たちの手で触れないかのように振舞っているだけに過ぎない.
 ソフトウェア・システムとは,何らかの言語を用いて記された世界モデルについての言説であり,その意味で,エウジェニオ・コセリウが指摘する言語活動の歴史性から逃れることはできないのである.

 富永仲基は,『出定後語』において,仏教各宗派の文献を網羅的に分析し,それぞれの宗派が,先行する宗派の弱点を突くために何らかの新しいアイデアを導入して「それこそがブッダの説いた真の教えだ」と主張してきたという現象を発見し,それを「加上」の原理というテーゼに集約して示した.言語あるいはそれを用いた言説の持つ本質的な歴史性を示唆する鋭い分析眼だといえよう.
 仲基は,さらに,この加上原理が応用されるさいに,新しい言説の提唱者は,自らの主張の正当性を示すために,必ず論争相手の言説より古い過去の言説を証拠として持ち出すのが常であるという現象を発見した.ソフトウェア工学の分野でも,ノルウェイのあるコンピュータ・サイエンティストがオブジェクト指向手法の源泉として,20世紀初頭の社会学マックス・ウェーバーの理想的官僚制度論を引用した例がある.SPI(ソフトウェア・プロセス改善)運動の提唱者であるワッツ・ハンフリーは,その CMM理論を補強するために TSPそしてPSPを唱えているが,これはまさしく16世紀に生まれた朱子学の「修身・斉家・治国・平天下」という儒教パラダイムの再生にほかならない.