« Linux&EclipseでのC/C++開発 | トップページ | 初秋の読書~SpinやPromelaによる『コンピュータープロトコルの設計法』 »

2016年9月 8日 (木)

クラスだけでなく、サブシステム、コンポーネントの処理の意味的整合性規則の自動計算と表示

1

定理証明系の規則である表明(クラス不変条件,メソッドの事前/事後条件)を、クラスだけでなく、サブシステム、コンポーネントにも適用できるようにしました。

論理式で記述し、自動計算させる仕様ができました。
ツールでの表示はまだですが、従来ツールで「型継承の規則」としているラベル名を「型適合規則」に変更します。
「仕様適合判定規則」というラベル名はそのままであり変更なしです。

今回は、以前から計算&表示が可能であった、サブシステム、コンポーネントのインターフェースやポートの表明に加え、例外適合条件も自動で計算&表示できるようにすることです。
 
これにより継承関係がないクラス間同士、サブシステム間同士、コンポ―エント同士の再利用や交換の判定が適用できるようになりました。

23
これは、最近のOO言語では型の同型を判断するために継承関係を必要としない原理と同じです。
 
振る舞いの意味的条件(表明etc)を厳密に型情報を定義し、型の同等性を判定することで可能になります。
型の考えをサブシステム、コンポ―エントあるいはモジュールにも適用させることで可能になります。
 
非OOADで作成するサブシステム間同士、コンポ―エント同士あるいはモジュールの機能&例外の再利用や交換の判定も同じです。
 
C言語ではC++のような例外メカニズムを実装するのはなかなか大変なので(スタックの巻き上げなど)、C言語でOOADやOOPを実装するときでも従来的な例外処理の延長線上のメカのズムを使うことが多いですが、この場合も自動計算させる仕様を定義しました。
 
なお、クラス、サブシステム、コンポーネントの再利用や交換において例外宣言や定義が一致するかどうかは、事前/事後条件ではなく、純粋な例外包含関係の十分条件が成立しているかどうかの論理式で記述し、自動計算させます。
 
これにより安全確実でクラス、サブシステム、コンポーネントの再利用や交換が可能になりました。
 
ただし、並列性があるクラス、サブシステム、コンポーネントの再利用や交換の判定条件を追加する作業があります。

|

« Linux&EclipseでのC/C++開発 | トップページ | 初秋の読書~SpinやPromelaによる『コンピュータープロトコルの設計法』 »

「パソコン・インターネット」カテゴリの記事