USP研究所ロゴマーク

ユニケージ開発手法

5.ドキュメンテーションの特徴

実用的で、少量で済む工夫

ユニケージにおいては、開発のときに必要なドキュメントは少量で、保守のときに必要なドキュメントは実用的に、がコンセプトです。

  1. システム全体図(サーバー配置図、ネットワーク、データフロー、アプリケーション配置図などが入ったもの
    ……紙さま)を作成します。
  2. ユニケージシステムで管理しているデータ(レベル1~3)の、レイアウトや項目の意味を記したオンラインドキュメントを作成します。
  3. 業務フロー図を作成して、業務全体を理解し、画面図を作成して、項目やロジックを理解します。

ドキュメントが少なくて済む理由は、ユニケージはデータの入出力のシステムという簡単なアーキテクチャであり、システムの骨格はお作法に基づいているからです。全体が分かる紙さまを見て、システムの全体の外形をつかめば、あとは詳細をたどって理解できる構造になっています。

システムは生物

ユニケージは「システムは生物」という考え方を持っています。企業は常に社会やマーケットの変化に合わせ、適応し続けなければならない宿命にあります。このため、企業の戦略、戦術は常に変化し、それを支えるシステムは変化しなければいけません。

ユニケージはこれら変化するシステムの内容を、システム自身が出力できるように設計します。運用スケジュールや各プログラム間の関係、すべてのデータのレイアウト、詳細設計など「変化しうる」内容について、自動出力し、ドキュメントを生成します。

このようなことができるために、システムの作り方やプログラムの記述に一定のルール(お作法)が存在します。例えば、シェルスクリプトは各処理ブロックごとに、その入力ファイルと出力ファイルのレイアウト、処理内容について「必ず」記述しなければなりません。これは詳細仕様書に相当しますが、この記述ルールは必ず守られます。なぜなら、お作法チェッカープログラムが、ルール外のスクリプトを見つけ出し、リリースをストップできるからです。

ユニケージには、多くの「お作法」が存在し、ドキュメントの削減に寄与しています。例えば「ワンプログラムワンフロー」の原則や、「アプリケーション固有のLEVEL4」の作法は、複雑になりがちなプログラム間の相互関係の記述やテストを不要にしています。

従来のドキュメントが、システム変更に対し「変更履歴」を積み重ねるのに対し、ユニケージはドキュメントは「AS IS(現況)」の積み重ねでよいと考えています。システムは生物であり、子供が成長していく様を「変更履歴」でなく各時代の様子をつぶさに記録しておけば十分足りるのです。どうしても各時代の「差分」が欲しければ、diff コマンドを使えばよいのですから。

子供が大人のDNAのコピーをもらい、独自の発展をするがごとく、ユニケージもアプリケーションのコピーをもらい、独自に改良できることが自然であると考えています。また、ユニケージでは Copyright は著作者を守る権利でなく、コピーする権利であると真面目かつシニカルに考えています。優れたソースは、多くの子供たちにコピーされ、原著作者は尊敬の対象となるのです。

< 1 2 3 4 5 6 7 >
©2016 Universal Shell Programming Laboratory