オートモーテイブ・ソフトウェア・フロンテイア2018でのDEOS講演

先般2月22日から23日で東京にて表題のカンファレンスが開催され、私はDEOS協会 自動車部会」技術顧問の立場で話をしました。

高信頼なソフトウェアを高速効率的に開発するには、どうしたらよいのか、総合信頼性デペンダビリテイの視点で世の中の取り組みをまとめてみました。

資料を公開しています

 

 

 

 

ドキュメントの進化について改めて考える

ずいぶん昔に戻ってみる。

世の中、テキストファイルの時代まで戻る。つまりUNIXのファイルシステムであり、そのファイル属性が.txt であった時代だ。ファイルフォーマットが.txtというのがもっと正しい。

その時代から、ドキュメントの進化は、二つの方向があったように思う。

ファイルフォーマットが単純な.txtから、どんどんリッチになっていった。

例えばRTFフォーマットがあり、Microsoftの.docや.xlsや.pptなどへ広がる。

ハイパーテキストの進化も、その範疇といえる。それらは総合されて、ある意味ハイパードキュメントとなっていく。それらは一つのドキュメントがそれだけではなく、個人の管理範疇に加えて、世界の関連情報とリンクされていく。大きくはハイパードキュメントの範疇であり、ネットワーク関係付された情報がどんどんリッチになっていく。

一方で、もう一つの方向はOSの進化ともいえるわけだが、ファイル属性が、アクセス制御(Read only, Read/Write、グループアクセス)が主だった時代から、世代管理(バージョン管理、構成管理)が入り、徐々にOSファイル管理属性から、ドキュメント属性ともいえる形に広がっていく。バージョン管理をしだすと、誰が変更したのか、やそれは何の目的でどこまで行われたかなどが関係してくる。ドキュメント属性の例として、ドキュメントが承認された状態か? であったり、レビューされた状態か? などが入ってくる。このドキュメント属性管理の方法としてファイル属性はOSで管理され、一部のドキュメント属性は.docに対して.docattrというファイルをセットにしてみたり、それらはOS管理であれば隠れて見えなかったり、とOSとしての属性のニーズと、ドキュメント文書としてのノーズが完全に一致せず、ある属性はOS管理に、ある属性は文書管理システムに依存する、などわかりにくくなった。それは現在もますます混乱に拍車がかかっているといえる。そろそろ統一的な管理が必要だ。ところがドキュメント属性はいったいどこまで必要か?は発展途上だ。デファクト標準が存在しない。ややこしい例として、ドキュメントが仕様書の例をしめす。

まだ作成途中のドキュメントは、アクセスされてはいけない、承認はされたか? が属性だが、最近は もっと詳細な段階が必要になっている、例えばデザインレビューはどこまで進んでいるのか? 顧客の承認は得られた段階なのか、社内の承認だけか、であったり、顧客の指摘がどのようにレビューされフィードバックされたか、なども情報として管理が必要だ。これらは最近は構成管理という範疇で議論されたりするが、これもソースコード構成管理と比べて上流文書の構成管理は、また管理事項が多い独特の世界になる。議論されている場所が限られる。

上流では、システムズエンジニアリングという領域がある、ここで発展標準化してほしい。しかしここも発展途上だ。

ゴール指向というカルチャーが注目されている。これを文書管理に当てはめてみると、文書は、その最終ゴールに向かって、どの状況段階にあるか?という表現で属性を見直し管理できそうだ。

また属性という、整理されたある意味フラグをデファクトとして設定できないなら、SNSやメール、掲示板で議論され収束していく状況があるいみ文書属性の状況を表現しているとして、そちらとセットで管理する状況が現れている。例えばgithubもある意味そうといえる。これはGITHUBを使っていないと感じられない。

これら二つの流れ、ゴール指向とSNSでの文書属性管理は時代の流れと見える。取り組みは重要だ。

最終ゴールは、デファクト化した属性管理あるいはもっとハイパーな概念になって落ち着くかもしれないが、現在の段階では、時代の要求といえそうだ。

2018年2月27日 鈴村延保

 

 

 

ゴール指向

ゴールオブジェクトの考え

何々指向 という言葉がよく用いられる。デザイン指向は Design Thinking  だ。

Thinking で考えると

ポジテイブ思考、ネガテイブ思考がある。トップダウン思考、ボトムアップ思考も思考だ。

思考 で考えるか 指向 でかんがえるかで、迷ってはしまう。

オブジェクト指向はソフトウェア開発のパラダイムシフトだ。もう30年ちかく前の提案だ。もうそろそろ進化してもよいのではないか?

最近ゴール指向が提案されている。GSN Goal Structure Notation を使い、取り組みにはゴールに向かうための適切な構造を意識しろと言っている。これはもっともなことだ。

ゴール指向で振り返って考えてみると、そもそも人間の活動は何かしらの目的(Goal)を意識している。すべての行動や活動がゴール(目的)があり、それを目指している、であったりそのゴールに向けた活動の段階であるサブゴール(副目的)である、と言っても過言でない。

そう考えると、ワープロ文書一つ作るのも、何か目的をもってつくるわけで、ゴールを目指しているし、ゴールを目指す活動そのものといってよい。

そうであれば、オブジェクト指向と同様に、すべてがオブジェクトであり、さらに発展してゴール指向オブジェクト(ゴールオブジェクト)と考えられる。そう考えると、すっきりする。

つまり、WORD文書も、EXCEL表も、PPT文書も、PDF文書も、フォルダーでさえゴールオブジェクトだ。

例えば、製品開発計画を立てる。 これは明らかに目標があり、ゴールオブジェクトといえる。見積もりは、そのゴールを達成するためのサブゴールオブジェクトの一つだ。

文章でいえば、WORDで記述された文書内容は、その文書名が示すゴールを目指す、サブゴール(オブジェクト)群だ。文書名は簡潔にゴールを示すアイテム表現であるはずだ。たまに文書名にマジックナンバーを使う人がいる、これはゴール指向から言って、よくない。

これを発展させると、メールや掲示板アイテムもゴールオブジェクトともみなせる。

例えば掲示板の掲示演題は、サブゴールを表す。この掲示演題で何がしたいのか、伝えたいのか、という事であるはずだ。掲示板で返信されるやりとりは何らかの目的があるはずだ。これらはすべて、ゴールオブジェクト、サブゴールオブジェクトだ。

これらゴールオブジェクト、サブゴールオブジェクトなどはゴール構造(GSN)でつながっていく。それが成立して正しいゴールへのアプローチと客観的に言える。つながるということは、トレーサビリテイリンクでつながっていると表現できる。あるいはオブジェクト指向クラス図的には関係でつながっている表現でもあらわせれる。

この考えだと、上は会社経営から、戦略、プロジェクト、フォルダー、文書、メール、ISSUEなどが全て統一的に扱える。透明性と対照性もある。また階層性質があるともいえる。

次にトレーサビリテイリンクについて考える。

インターネットの世界では、ハイパーリンクが素晴らしく活躍している。これがトレーサビリテイリンクだ。ただし、ハイパーリンクは操作を簡素化するため、片方向トレーサビリテイリンクと呼ばれる。つまりリンク先には気軽に飛べるがリンクから、元に飛ぶとき、戻る しかできない。 それでいいじゃないかといわれるかもしれないが、そうではない。ハイパーリンクは、あちこちから貼られる場合が実は多い。

これを関心事アスペクトと表現し、これは昔はなかった概念だ。そういえばアスペクト指向も最近ある。一つの事柄も、いろいろな側面があり、関心事で、考えるといろんな側面があり、トレーサビリテイリンクでつながる。

そうなると、双方向トレーサビリテイをサポートしなければならなくなり、XLINKと呼ばれる機能が、当然定義されている。それによって、上位ゴールに向かって、関心事で選びながらたどっていける。

安全設計の世界では、不可欠の機能だ。ところうがトレーサビリテイリンクは、原始的なままで、わかり難いといわれてしまったままでいる。

アスペクト関心事でトレーサビリテイを考えると、ゴール構造のどこの関心事でリンクされているのか、明瞭であるほうが、当然論理的だ。

しかし、双方向トレーサビリテイ定義の上位には、このゴール指向トレーサビリテイリンクは標準に存在しない。

よくよく考えると、オブジェクト指向が提案から30年たっているのと同じく、XLINKが提案されて20年は立つだろうか、以来変わっていない。

どちらも、ゴール指向で考えることで、すべきことが見えてきている。

2011年に提案されたゴール指向構造GSNを基礎とした、ゴールオブジェクト指向は、新たなパラダイムシフトだ。