組込みシステムの外部環境分析のため のUMLプロファイル 瀬戸敏喜,金川太俊,鵜林尚靖(九工大), 鷲見毅,平山雅之(東芝) 2007/3/16 1 発表内容 研究の背景 外部環境記述用UMLプロファイル 通常のUML表記の問題点 外部環境記述用UMLプロファイルの利点 外部環境記述用UMLプロファイルの概要 ステレオタイプ定義 OCLによる制約の定義 支援ツール 組込みシステムの現状 組込みシステムの特徴 組込みシステムの不具合検出 拡張可能なUMLモデルエディタ まとめ 2007/3/16 2 研究の背景 組込みシステムの現状 組込みシステムの特徴 組込みシステムの不具合検出 2007/3/16 3 組込みシステムの現状 組込みシステムの品質に対する要求の高まり しかし… 開発段階における組込みシステムの不具合の検出が困難 なぜなら… システム外部の要素も考慮する必要があるが, 手法等によるサポートが不十分なため困難な状況にある したがって… システム外部の要素を考慮した分析手法が必要 2007/3/16 4 組込みシステムの特徴 組込みシステム: センサやアクチュエータを 介してシステム外部(外部 環境)と関係を持つ. →外部環境を考慮する必要. 外部環境 ライン 入力 進行方向 出力 出力 車体速度 2007/3/16 ライントレーサ 外部環境 入力 組込みシステム センサ ソフトウェア 出力 アクチュエータ 光センサ ソフトウェア ステアモータ ドライブモータ ライントレーサ: 地面に引かれたラインに沿っ て走行する自律走行ロボット 5 組込みシステムの不具合検出 外部環境に起因する 組込みシステムの不具合 組込みシステムの 動作検証 ライントレーサの不具合の例: 筐体の周囲の光(環境光)が(カメラのフラッ シュなどで)強くなることでラインとの位置関係 (ライン上か否か)を誤認識する. 外部環境モデル 外部環境分析 本発表の目的: 外部環境モデルを厳密に記述するための UMLプロファイルの提案. 組込みシステムへの要望 2007/3/16 6 外部環境記述用UMLプロファイル 通常のUML表記の問題点 外部環境記述用UMLプロファイルの利点 外部環境記述用UMLプロファイルの概要 ステレオタイプ定義 OCLによる制約の定義 2007/3/16 7 通常のUML表記の問題点 外部環境モデルに含ませる情報が定まっていない 完全に記述者の判断に任される 情報の不足したモデルになる可能性もある この場合,不具合の検出で不都合が生じる 環境光 光センサ 光センサの状態が,環境 光の影響で変化した場合 と,地面からの反射光の 影響で変化した場合とで 違いが分からない. 2007/3/16 地面からの反射光 通常のUML表記の例 8 外部環境記述用UMLプロファイルの利点 外部環境モデルに含ませるべき情報が明確になる オブジェクトが属する分類 オブジェクト間の関連の意味 <<Hardware>> 光センサ <<Noise>> <<Observe>> 光センサの状態が,環境 光の影響で変化した場合 と,地面からの反射光の 影響で変化した場合とで 意味が違うことが分かる. 2007/3/16 <<Context>> 環境光 <<Context>> 地面からの反射光 UMLプロファイルを用いた例 9 外部環境記述用UMLプロファイルの概要 UMLプロファイルとは,UMLを拡張するためのメカニズム 外部環境記述用UMLプロファイルの目的 以下の3項目を定義 オブジェクトの分類 オブジェクト間の関連 これらに対する制約 これにより,外部環境モデルに記述すべき情報が定義されるため, 外部環境の厳密な記述が可能になる. 外部環境記述用UMLプロファイルの構成 ステレオタイプ定義 OCLによる制約の定義 2007/3/16 10 ステレオタイプ定義 UMLメタモデルを拡張 外部環境モデルに記述される要素の分類を定める 以下の二つを定義 オブジェクトの分類 Software Hardware Context オブジェクト間の関連 2007/3/16 Hardware-Context間: Control,Observe,Noise Context-Context間: Transfer,Affect 11 ライントレーサの記述例 <<Software>> ライントレーサ制御 <<Hardware>> 光センサ <<Context>> 環境光 <<Observe>> シ ス テ ム <<Hardware>> ドライブモータ <<Hardware>> ステアモータ <<Control>> <<Context>> 地面からの反射光 <<Control>> <<Context>> 速度 2007/3/16 <<Affect>> <<Affect>> <<Transfer>> <<Context>> 真下の地面の色 <<Affect>> <<Context>> 進行方向 <<Noise>> <<Transfer>> 外 部 環 境 <<Context>> ラインとの位置関係 12 ステレオタイプ定義によるUMLメタモデル拡張 ステレオタイプ定義(一部) 名前 拡張する要素 <<Context>> Class 標準のUMLメタモデル(一部) <<Observe>> Association <<metaclass>> Property <<metaclass>> Class <<Extension>> <<stereotype>> Context 2007/3/16 <<metaclass>> Association <<Extension>> <<stereotype>> Observe 13 外部環境記述用UMLプロファイルの 拡張UMLメタモデル 標準のUMLメタモデル(一部) <<metaclass>> Class baseClass 0..1 extensionContext 0..1 extensionHardware 2..* <<metaclass>> Association 0..1 baseAssociation 1 0..1 extensionSoftware <<stereotype>> Hardware 0..1 extensionObserve <<stereotype>> Control 2007/3/16 * 1 <<stereotype>> Context 0..1 extensionControl 0..1 <<metaclass>> Property <<stereotype>> Software 0..1 extensionNoise <<stereotype>> Observe 0..1 extensionTransfer <<stereotype>> Noise 0..1 extensionAffect <<stereotype>> Transfer <<stereotype>> Affect 14 OCLによる制約の定義 ステレオタイプ定義により拡張されたUMLメタモデルを制約 外部環境モデルに記述される要素に対する制約を定める 以下の二つを定義 オブジェクトの分類に対する制約 例:ハードウェアは,別の要素を観測もしくは制御する役割をどちらか一 方だけ持つ オブジェクト間の関連に対する制約 2007/3/16 例:観測は,ハードウェアと外部環境の要素の間の関係である 15 定義したOCL記述の例 対象:<<Hardware>> inv: baseClass.ownedAttribute.association.extensionObserve->notEmpty() xor baseClass.ownedAttribute.association.extensionControl->notEmpty() 意図: ハードウェアは,別の要素を観測もしくは制御する役割をどちらか 一方だけ持つ. 内容: <<Observe>>もしくは<<Control>>を一方だけ持つ. <<Hardware>> 光センサ <<Observe>> <<Context>> 地面からの反射光 2007/3/16 <<Control>> <<Context>> 環境光 16 OCL記述と拡張UMLメタモデルの対応関係 対象:<<Hardware>> inv: baseClass.ownedAttribute.association.extensionObserve->notEmpty() xor baseClass.ownedAttribute.association.extensionControl->notEmpty() 標準のUMLメタモデル(一部) <<metaclass>> Class baseClass 0..1 extensionContext 0..1 extensionHardware 2..* <<metaclass>> Association 0..1 baseAssociation 1 0..1 extensionSoftware <<stereotype>> Hardware 0..1 extensionObserve <<stereotype>> Control 2007/3/16 * 1 <<stereotype>> Context 0..1 extensionControl 0..1 <<metaclass>> Property <<stereotype>> Software 0..1 extensionNoise <<stereotype>> Observe 0..1 extensionTransfer <<stereotype>> Noise 0..1 extensionAffect <<stereotype>> Transfer <<stereotype>> Affect 17 支援ツール 拡張可能なUMLモデルエディタ 2007/3/16 18 拡張可能なUMLモデルエディタ Eclipseプラグイ ン メタモデル拡張によるモデルエディタ生成機能 OCLの制約によるエラー検出 2007/3/16 19 まとめ 2007/3/16 20 まとめ 外部環境モデルの厳密な記述のためのUMLプロファイルを 提案した ステレオタイプにより,オブジェクトの分類とそれらの間の関連を定義 OCLにより,ステレオタイプで定義された要素の制約を定義 今後の課題 形式手法による組込みシステムの不具合検出 外部環境モデルから形式言語への変換が必要なため,その変換規則を 検討する予定 ステレオタイプ定義の洗練とそれに伴う制約の修正 2007/3/16 21
© Copyright 2024 ExpyDoc