世の中、さまざま職業の「デザイナー」が活躍している。ここで述べるシステムデザイナーは、こうした「デザイナー」とはちよっとタイプが異なる、独特なものであろう。

 デザイナーといっても、常日ごろ目にするものといえばサーバーやストレージといったハードウエアやとネットワークケーブルなどであり、肝心のソフトウエアはそもそも目に見えない。ファッションデザイナーやフラワーデザイナーの場合は、デザインの結果を目で良く見極められるが、システムデザイナーはシステムを利用して初めて、そのデザインの良さを実感できるものだからである。

 無味乾燥な「情報システム」という世界にデザイナーとして息吹を吹き込みたい、存在感を与えたいというのが、システムデザイナーの本音である。ユーザーには、上手に使いこなしてもらいたいのだ。

 良いシステムデザインに求められる条件は、「ムダがない」「迅速性(スピード感)」「安定稼働」の三つである。これらは、相互に関連している。

条件その一「ムダがない」

 考え方のポイントは、余計なシステム、プログラム、データベース、ネットワークを新たに作らないという点にある。既存のシステム資産、ツールをあますところなく活用し、仮にシステムやデータべースを新規作成するとしても、可能な限り再利用できるようにデザインする、ということである。

 新たなシステム資産を増やすことを、極力抑えることにより、構築に伴うエネルギーやコストをセーブできる。当然ながら、トラブルやバグが発生する可能性も低くできることになる。

 そもそもシステムのベージョンアップとかマイグレーションに取り組む場合、「ムダを無くす」というスタンスをしっかり持つことが必要だ。このスタンスを維持できていれば、完成に近づいているといえる。

 従って、「ベンダーに丸投げ」などという考え方はありえない。丸投げしてしまっては、ムダが生じているかどうかを確認できないからだ。自社で考えることで、どうすれば既存資産の有効活用が可能になるか、はたまた有効なツール、ソフトウエアにはどのようなものあるかを探すという、次の検討ステップに至るのだ。

 何度も言うようだが、正常に動いているシステムがあり、多くの機能が十分利用できているという状況なら、ちょっとした必要性だけでそのシステムを捨て再度作り直すといったことは大変もったいないことだ。既存システムのうちで有効活用できる部分を一つの大きな「部品」として捉えうまく使い回すことを、基本線と考えるべきである。

 既存システムと同様のシステムを新たに構築したところで、充足感は薄いはずだ。それよりは、既存資産を可能な限り再利用すると位置付け、他の新規に作り込む部分に全精力を注ぎ込むと言ったやり方を採用するのが効率的だ。

 ただし、トータルな保守性を考慮した場合、開発言語をそろえた方がコストが安いということはあり得る。その場合はコードを書き直す選択が必要になるだろう。レガシーなシステムをオープン系に移し変えるだけで保守コストを下げられることもあるが、その場合はプログラムの書き換えというよりは、コンバージョンが現実的な選択肢だろう。

 ことほど左様にいろいろなケースがあり得るが、この「ムダをなくす」というスタンスを常に堅持したシステム作りが望ましい。