II-24-3. オブジェクト指向分析による組み込みシステム開発

制御対象やシステム資源をオブジェクトとして表現して設計するオブジェクト指向分析を、組み込み開発へ適用する方法について説明する。状態遷移図による分析や入出力の関係を表現する方法、リアルタイム性や事象応答精度の表現などオブジェクト指向によるモデリングを解説する。

【学習の要点】

* 組み込みシステムのソフトウェア開発において、オブジェクト指向分析をすることがある。

* ソフトウェアの要求分析と設計にはソフトウェアモデリングのパラダイムが必要である。

* ソフトウェアモデリングには、オブジェクト指向の他に、構造化手法、アスペクト指向等もある。

図II-24-3. 組み込み開発におけるオブジェクト指向分析のメリット・デメリット

 

【解説】

1) オブジェクト指向分析

* オブジェクトを主要な構成要素としてソフトウェアを構築する手法である。(II-13-1参照)

* UML等の記法を利用して、オブジェクトを抽象化し、そのオブジェクト間の相互作用を定義する設計手法である。

* 状態遷移図による分析や入出力の関係を表現することがある。

2) オブジェクト指向分析による組み込み開発の特徴と留意点

* オブジェクト指向分析により、オブジェクトとしての機能やドメインとしての開発範囲などが明確になる。

* UMLやユースケース図、データフロー図により複雑な処理を必要とするシステムにおいても設計段階で要件を的確に整理できる。

* ソフトウェアの再利用を進めやすくなり開発効率の改善に役立てられる。

* 開発効率をあげるためにハードウェアに依存する機能(センサなど)とソフトウェアを切り離したアプローチが有用な場合がある。

* オブジェクト指向分析に対応した組み込み開発環境が必要となる。

* 設計の難易度があがり、機能分割を進めてオブジェクト数を増やしすぎた場合、構造が複雑になり保守性の低下を招く可能性がある。また設計コストの増大にも配慮が必要である。

* プログラムの規模は大きくなるため、リアルタイム性への配慮も重要となる。

3) ソフトウェアモデリングと抽象化

* ソフトウェアの要求分析と設計においては、問題ドメインを効率良く抽象化し、モデリングをするためのモデリングパラダイムが必要である。

* オブジェクト指向以外のソフトウェアモデリングのパラダイムについては以下のものがある。

- 構造化手法:機能に注目し、機能ごとに段階的にモデリングする手法である。データフローダイアグラム等を利用してモデリングを行う。

- アスペクト指向
構造化手法もオブジェクト指向も一般に、モジュール分割する手法であるが、そのために各モジュールに要素が分割してしまうという欠点がある。このことが保守性の低下をもたらす。これを解決するために「アスペクト」という概念で、モジュールに分割された要素を横断的にカバーするのがアスペクト指向手法である。

* 保守性と再利用性のために、ソフトウェアコンポーネントとデザインパターンを流用する。

OSS Course Naviのコンテンツは IPA OSS モデルカリキュラムを基としています。