日本語訳のダウンロード

されていないか)がわかる様に診断用のトレースを自動的に生
成する事ができます。.このモデルチェッカーによって生成され
た診断用トレースは、自動的にシミュレータにロードする事が
できます。これは、トレースの可視化と調査に利用することがで
きるでしょう。
レースの生成。この診断トレースは自動的にロードされ、シ
ミュレータを使ってグラフィカルに可視化されます。
UPPAALのシステムエディター、シミュレータ、そして要件仕様エ
ディタを、図1,2,3それぞれに示します。
リアルタイムシステムの妥当性確認と
検証のためのツール環境
E-mail: [email protected]
http://www.uppaal.com/
UPPAALはスウェーデンのUppsara大学とデンマークのAalborg
大学によって共同開発されたリアルタイムシステムのモデリン
グ、シミュレーション、及び検証のための統合ツール環境です。
システムは有限の制御構造と実時間変数、チャネル又は共有変
数による通信を伴う非決定的なプロセスの集まりとして適切に
モデル化できます[14, 9]。典型的な応用分野としては、特にタイ
ミングがクリティカルなリアルタイム・コントローラと通信プ
ロトコルが含まれます。
UPPAALは主に記述言語、シミュレータ、そしてモデルチェッカ
の3つの部分から成ります。記述言語は非決定的なガード付き
のコマンド言語です(範囲限定された整数や配列など)。
クロックとデータの変数が拡張されたオートマトンのネット
ワークによってシステムの振る舞いを記述することでモデリン
グまたは設計を提供します。
シミュレータは早期の設計(またはモデリング)段階でのシ
ステムの動的な実行試験を可能とする妥当性検査ツールであり、
また、システムの動的挙動を完全にカバーするモデルチェッカ
ーによる検査の前に不具合検出を比較的簡単に提供することが
できます。.
モデルチェッカーはシステムの状態空間の探索を行なうこと
によって、不変式と活性の性質をチェックします。すなわち、制
約で表現されたシンボリックな状態に関する到達可能性の解析
です。
UPPAALのための2つの設計方針は効率と使い勝手の良さです。
On-the-fly検索技術の応用は、UPPAALモデルチェッカーの効率に
とって重要なものです。 他の効率のための重要なキーは、効果
的な操作と制約の解決によって検証問題を簡略化するというシ
ンボリック技術の応用です[14, 7, 11, 10]。モデリングとデバッ
グを容易にするため、UPPAALモデルチェッカーは、なぜ、その性
質がそのシステム記述によって充たされているか(または充た
図1 UPPAALシステムエディタ
初期のリリースである1995年より、UPPAALは多くのケーススタ
ディーに適用されてきました(次節のサマリを見てください)。
ケーススタディーからでてきた要求を充たすために、このツー
ルは様々な機能を拡張してきました。UPPAALの最新バージョン
は1999年の9月にリリースされました。最新バージョンはJava
とC++で実装され、Linux、SunOS、Windows95/98/NTで動作可能
です。
UPPAALは次の機能を含みます:.
・ システムのグラフィカルな記述が可能なグラフィカルなシ
ステム・エディタ
・ グラフィカルな可視化と可能なシステムの動的な挙動の可
視化と記録を提供するグラフィカルシミュレータ(つまり
システムのシンボリックな状態のシーケンス).(また、これ
はモデルチェッカーから生成されたトレースを可視化する
ためにも使われます)
・ UPPAALのベリファイヤーのGUIを構成する要件仕様エディタ
・ シンボリックな状態空間の到達可能性解析による安全性と
境界付きの活性という性質の自動検証のためのモデルチェ
ッカー
・ 特定のリアルタイムシステム検証が失敗した場合の診断ト
図2 UPPAALシミュレータ
応用事例
.
UPPAALは多くの(産業での)ケーススタディーに応用されてき
ました。この章では、それらから選択したものを簡潔にレビュー
します。
オーディオ/ビデオプロトコル:これはリアルタイムに非常に
依存するオーディオ制御プロトコルです。このプロトコルは
Bnag&Olufsenが開発したもので、オーディオ/ビデオコンポ
ーネント間のメッセージ転送のためのものです。これは不完
全である事が知られていましたが、誤りは従来のテスト方法
では見つけられていませんでした。[5]では、UPPAALが見つけ
た誤りのエラートレースの自動生成に適用されています。さ
らに、修正はUPPAALを使用することによって立証されました
境界付きの再送プロトコル:このプロトコルは
COST247(International Workshop on Applied Formal Methods
in System Design)にて提案され、研究されています。これは損
失性の通信チャネルの上での交番ビットプロトコル
(Alternating bit protocol)に基づいていますが、境界のある再
送の回数を考慮するというものです。[4]では、プロトコルの
多くの特性がUPPAALによってに自動的に確かめられたと報
告されています。特に、プロトコルの正当性が、正しく選ばれ
たタイムアウト値に依存していることが示されています。
参考資料
衝突回避プロトコル:このプロトコルはCSMA/CDプロトコル
の様なイーサネットに似ている媒体上に実装されます。それ
はネットワーク・ノード間の通信遅延の上限を確実にしま
す。 [6]では、UPPAALを利用する事で設計され、正しさが証明
されます。2つの主な確立した性質が、このプロトコルが衝突
無しである事を示します。そして、それはユーザからユーザ
への通信遅延の上限を確実にします(完全な媒体を仮定)。
ギアボックスコントローラ:[12]では、UPPAALはMecel AB(自動
車生産の制御システムを開発しているスエーデンの会社)
での自動車のギアボックスコントローラプロトタイプの設
計と解析、といった工業的なケーススタディに適用されてい
ます。ギアボックスコントローラは現代的な自動車のリアル
タイムシステムの中のコンポーネントです。コントローラの
設計では、システムの挙動の検証のためにUPPAALのシミュ
レーションツールが適用されました。ギアボックスコントロ
ーラの設計の正当性はMecelABによって指定されたインフォ
ーマルな要件から導出された46の性質の自動検証で確立さ
れています。
フィリップスオーディオ制御プロトコル:このプロトコルは
Manchesterエンコーディングを使っているオーディオ装置
コンポーネント間の制御情報を交換するためにフィリップ
スが開発、実装したものです。このエンコードの正確さは信
号間のタイミングの遅延に依存しています。[8]では、このプ
ロトコルをUPPAALを使ってモデル化し、検証しています。[3]
では、バスの衝突検出に拡張されたプロトコルのバージョン
をUPPAALによって解析しています。このケーススタディの
モデルは、いくつかの新しいコンポーネント(と変数)を導
入するため、オリジナルバージョンよりもかなり大きく、既
存のコンポーネントは、バス衝突に対応するように変更され
ています。
TDMAプロトコルの起動メカニズム:[13]では、TDMA(Time
Division Multiple Access)プロトコルの起動の形式検証が報告
されています。UPPAALを使う事で、3つの通信ステーション
の全体が同期して任意の初期状態から与えられたクロック
ドリフトが+-10^-3の範囲で操作できることがチェックさ
れています。さらに、完全な起動のための時間の条件が導出
されました。
図3:UPPAAL要件仕様エディタ
組織
.
UPPAALはスウェーデンのUppsala大学(UPP)のインフォメーショ
ンテクノロジー学科とデンマーク大学のAalborg大学(AAL)のコ
ンピュータ科学科の共同開発製品です。
開発とその応用に関わっている人は以下の人たちです:
Wang Yi (Professor, UPP), Kim G. Larsen (Professor, AAL), Gerd
Behrmann (Ph.D., AAL), Paul Pettersson (Ph.D., UPP), Alexandre
David (Post Doc, AAL), Emmanuel Fleury (Ph.D., AAL),
Brian Nielsen (Ph.D., AAL), Arne Skou (Ph.D., AAL), John
H°akansson (Ph.D. Student, UPP),Jacob Illum Rasmussen
(Ph.D.Student, AAL), Pavel Krc´al (Ph.D. Student, UPP), Ulrik
Larsen(Ph.D. Student, AAL), Didier Lime (Post Doc., AAL), Marius
Mikucionis (Ph.D. Student, AAL), and Leonid Mokrushin (Ph.D.
Student, UPP).
さらなる情報
.
UPPAALのWebページがあります。http://www.uppaal.com/
ここには、UPPAALの参考文献とインストールするための
詳細な情報が含まれています。
UPPAALの非形式的な記述の詳細は”Tutorial on UPPAAL”[2]
“UPPAAL in a Nutshell”[9]、そして”UPPAAL-Now,Next,and
Future”といった論文の中に見つけることができます。
[1] Tobias Amnell, Gerd Behrmann, Johan Bengtsson, Pedro R.D’Argenio,Alexandre
David, Ansgar Fehnker, Thomas Hune, Bertrand Jeannet, Kim G.Larsen, M. Oliver
M¨oller, Paul Pettersson, Carsten Weise, and Wang Yi.Uppaal - Now, Next, and
Future. In F. Cassez, C. Jard, B. Rozoy, and M. Ryan, editors, Modelling and
Verification of Parallel Processes, number2067 in Lecture Notes in Computer
Science, pages 100–125. Springer–Verlag, 2001.
[2] Gerd Behrmann, Alexandre David, , and Kim G. Larsen. A tutorial on uppaal.In Proc. of
4th International School on Formal Methods for the Design of Computer,
Communication, and Software Systems, number 3185 in Lecture Notes in Computer
Science, 2004.
[3] Johan Bengtsson, W.O. David Griffioen, K°are J. Kristoffersen, Kim G. Larsen, Fredrik
Larsson, Paul Pettersson, and Wang Yi. Verification of an Audio Protocol with Bus
Collision Using Uppaal. In Rajeev Alur and Thomas A. Henzinger, editors, Proc. of
the 8th Int. Conf. on Computer Aided Verifica- tion, number 1102 in Lecture Notes in
Computer Science, pages 244–256.Springer–Verlag, July 1996.
[4] P.R. D’Argenio, J.-P. Katoen, T.C. Ruys, and J. Tretmans. The bounded retransmission
protocol must be on time! In Proc. of the 3rd Workshop on Tools and Algorithms for
the Construction and Analysis of Systems, number 1217 in Lecture Notes in
Computer Science, pages 416–431. Springer–Verlag, April 1997.
[5] Klaus Havelund, Arne Skou, Kim G. Larsen, and Kristian Lund. Formal Modeling and
Analysis of an Audio/Video Protocol: An Industrial Case Study Using Uppaal. In Proc.
of the 18th IEEE Real-Time Systems Symposium. IEEE Computer Society Press,
December 1997.
[6] Henrik E. Jensen, Kim G. Larsen, and Arne Skou. Modelling and Analysis of a Collision
Avoidance Protocol Using SPIN and Uppaal. In Proc. of 2nd Int. Workshop on the
SPIN Verification System, pages 1–20, August 1996.
[7] Kim G. Larsen, Paul Pettersson, and Wang Yi. Compositional and Symbolic ModelChecking of Real-Time Systems. In Proc. of the 16th IEEE Real-Time Systems
Symposium, pages 76–87. IEEE Computer Society Press, December 1995.
[8] Kim G. Larsen, Paul Pettersson, and Wang Yi. Diagnostic Model-Checking for RealTime Systems. In Proc. of Workshop on Verification and Control of Hybrid Systems
III, number 1066 in Lecture Notes in Computer Science, pages 575–586. Springer–
Verlag, October 1995.
[9] Kim G. Larsen, Paul Pettersson, and Wang Yi. Uppaal in a Nutshell. Int. Journal on
Software Tools for Technology Transfer, 1(1–2):134–152, October 1997.
[10] Kim G. Larsen, Carsten Weise, Wang Yi, and Justin Pearson. Clock difference
diagrams. Nordic Journal of Computing, 6(3):271–298, 1999.
[11] Fredrik Larsson, Kim G. Larsen, Paul Pettersson, and Wang Yi. Efficient Verification
of Real-Time Systems: Compact Data Structures and State-Space Reduction. In
Proc. of the 18th IEEE Real-Time Systems Symposium, pages 14–24. IEEE
Computer Society Press, December 1997.
[12] Magnus Lindahl, Paul Pettersson, and Wang Yi. Formal Design and Analysis of a
Gear-Box Controller. In Proc. of the 4th Workshop on Tools and Algorithms for the
Construction and Analysis of Systems, number 1384 in Lecture Notes in Computer
Science, pages 281–297. Springer–Verlag, March 1998.
[13] Henrik L¨onn and Paul Pettersson. Formal Verification of a TDMA Protocol Startup
Mechanism. In Proc. of the Pacific Rim Int. Symp. on Fault- Tolerant Systems, pages
235–242, December 1997.
[14] Wang Yi, Paul Pettersson, and Mats Daniels. Automatic Verification of Real-Time
Communicating Systems By Constraint-Solving. In Dieter Hogrefe and Stefan Leue,
editors, Proc. of the 7th Int. Conf. on Formal Description Techniques, pages 223–
238. North–Holland, 1994.
Translated by CATS Co.,LTD.