[修士論文] ブロック利用傾向と構造特徴に基づくブロック線図モデルの構造評価

小林先生が指導した名古屋大学M2の小林さんが修士論文の発表を行いました.

論文題目:ブロック利用傾向と構造特徴に基づくブロック線図モデルの構造評価
論文概要:

組込みソフトウェア開発ではモデルベース開発が注目されており,システムのモデル化とシミュレーションのためにブロック線図モデルに基づくモデリングツールであるMATLAB/Simulink が広く用いられている.Simulink ではシステムを階層化ブロック図であるSimulink モデルで記述する.処理を表現する標準ブロックライブラリが用意されており,データの入出力を表す信号線でブロック間を結線することで,一連の処理を表現する.ブロック列をサブシステムブロックに含めることで,一つのモジュールとして表現することができる.サブシステムを利用した階層化により複雑な処理を抽象化でき,モデルの可読性や変更性, 解析性, 試験容易性を向上させることができる.

しかしながら,Simulink モデルにおいてブロックの配置によりシステムの振る舞いを定義する際,ブロックの使い方が設計者や開発する企業によって異なるという問題がある.特に,サブシステムの境界にあるブロックをどちらのサブシステムに含めるか,モデルの階層構造をどのように作成するかという設計方針は設計者に大きく左右される.こうした属人性はモデルの保守性を低下させ,理解不足による不具合混入の原因となる.

本研究の目的は,こうしたブロックの使用方法やサブシステムの構造設計についての特性を数値化し,設計者に依存しない統一的なモデルの作成を支援することである.本研究では,ブロックの使用方法の特徴を表現する指標としてブロック種ごとの利用方法の傾向に着目し,モデルの設計方針の特性を表す指標を用いてサブシステム構造を評価する手法を提案する.ブロックの中にはサブシステム境界付近に利用されやすいブロックが存在する.それらのブロックを,サブシステムによる階層において前処理として使用するか,サブシステムの処理結果を後処理するために利用するかは,設計者もしくは組織の中での階層設計に関する暗黙知となっており,この配置傾向を数値として表現することにより,定量的なガイドラインを作成することができる.

提案手法では,配置傾向の分析として対象ブロックとInport ブロックもしくはOutport ブロックの隣接する傾向,最短パスにおけるブロック数の2 種類の分析を行う.また,他のブロックと組み合わせて利用されている際の配置傾向の分析を行うことで,ブロックが利用されている前後状況を考慮した配置傾向を算出する.

本研究では,提案手法を評価するために,提案した配置傾向を表す指標を計算するツールを実装し,実装したツールを用いて複数の企業の実モデルや,サンプルモデルに対する適用実験を行った.実装したツールでは,Simlink モデルをグラフモデルに変換し,サブシステムを展開することで各ブロックとInport ブロックもしくはOutport ブロックとの関係を分析し配置傾向を計算する.

実験結果から,1) 同一ドメイン共通の配置傾向,同一組織内での配置傾向,Simulink モデル全般の配置傾向が存在すること.2) Inport ブロックもしくはOutport ブロックまでの最短パスにおけるブロック数の出現頻度に基づいた指標によって,ブロック毎の配置傾向を適切に表現できること,3) ブロックの前後のブロック種別を考慮することにより詳細な配置傾向が検出できることの3 点を明らかにした.