研究概要 |
本年度は,(1)前年度の成果であるポリシー記述形式とそれに基づくポリシー強制系の表現能力について明らかにし,(2)アスペクト指向の考え方に基づくコードの整合性検査方式を確立した.これらにより,本研究の目的である,動的なコンポーネントから構成される適応的ソフトウェア構築のための基礎技術を確立したことになる.以下,それぞれについて述べる. (1)ポリシー強制系の表現能力:前年度に設計・実装したポリシー記述/強制系の核となるアイデアは,自己反映の考え方を用いてコンポーネントに検査用のコードを埋め込むことで,コンポーネントが自分自身を検査しつつ動作するところにある.これはポリシー強制の立場からは,検査対象となるコードの情報をある程度事前に知る事ができることに相当する.我々はこれをF.Schneiderらによるポリシー強制の定式化手法にもとづいてモデル化してその性質を調べる事で,従来のセキュリティオートマトンでは表現できなかった,ある種の情報流に関するポリシーが表現できることを示した. (2)アスペクト指向の考え方に基づくコードの整合性検査方式:契約による設計(Design by Contract, DbC)は,コンポーネントの仕様を表明と呼ばれる論理式の集まりで表現するものであり,コンポーネントの仕様記述に有効とされている.しかしコードの規模が大きくなるにつれて表明の記述量が増大し,さらに表明間の依存関係のため,プログラムのごく一部の変更が他の多くの部分の表明に影響する.これは複数のコンポーネントに共通に表れる性質(横断的関心事)に起因する.我々はアスペクト指向の考え方を用いて横断的関心事を含む表明をモジュール化する方式を考案し,この方式によって前年度扱ったコンポーネントの仕様記述を行った.従来はコンポーネントあたり数千行にわたる表明を本方式によってモジュールあたり数十行程度にでき,かつ変更も容易にできることを示した.
|