組み込み型システムの
制御ソフトウェアとオブジェクト指向開発

 組み込み型ソフトウェアは,CPUを利用し,その周辺に接続されている各種デバイスに直接作用することで,その先にある駆動部品や受動部品を制御する.つまり,制御対象が部品として目に見えているので,そのものをオブジェクトとして抽出することが容易にできる分野である.

 また,業務系ソフトウェア開発においても難しいとされる概念オブジェクト(サービスなどの目に見えないものをオブジェクトとして定義する)の抽出についても,先に部品をオブジェクトとして抽出しておけば,その部品との関係から推察することができる.このことは,オブジェクト指向モデリングと組み込みシステム開発の親和性の良さを表しているのではなかろうか?

 ユースケースもしかりである.CPUから見たときに直接接続されているものは,設計する際に意識するものとして,設計工程でのアクタとして抽出される(図8).

〔図8〕
現実の制御システムのモデリング





 分析工程でのアクタは,その先にある駆動部品や受動部品,またはさらにその先にあるシステム外部の刺激生成物,あるいは使用者(人間)として発見することができる.ユースケースは,開発対象に要求される機能なのだから,分析する際には必然としてシステムが組まれているので,思いのほか具体化できているだろう.

 設計する際は,そのシステムの役割(責務範囲)で,実現する要素に分割して考えることで実装へ向けてのシナリオが見えてくる.

 ユースケースとオブジェクトモデル(クラス図)の作成さえスムーズにできたなら,あとはモデルの検証を行って,詳細化することで実装に結びつければよく,いままでよく見えなかったソフトウェア開発の工程は,オブジェクト指向モデルによる成果物の把握が可能になり,見えるものを開発できるようになる.その結果,モデルの成り立ちを開発工程により把握することが可能になり,より早く確実にモデルを作るための開発工程の改善ができるようになる.最終的に,ソフトウェアの開発はシンプルに,確実に進められる.

 さらに,工程間の作業と成果物の一貫性を管理することができれば,オブジェクト指向モデルと実行ファイルの合致(たしかにそのモデルを実装した結果がこのソースコードであるという保証)がかなうので,再利用性を飛躍的に上げることが期待できる.

 いままで,ハードウェアの変更にともない,一から開発し直してきた組み込み型システムのソフトウェアが,この再利用技術を手に入れることの意味は大きい.また,有意義なことであるということを信じてやまない.

参考文献

1)E. Yourdon, Death March ―― The Complete Software Developper's Guide to Surviving“Mission Impossible Projects”, Prentice Hall, 1997(『デス・マーチ』, トッパン)
2)J.Rumbaugh et al., Object-oriented Modeling and Design,Prentice Hall, 1991(『オブジェクト指向方法論OMT』, トッパン)



◆ 背景と目的――オブジェクト指向の導入ですべてうまくいくわけではない!
◆ 構造化手法とオブジェクト指向
◆ オブジェクト指向を導入するに至るもっとも大きな動機とは?
◆ 組み込みシステム開発におけるハード/ソフトのライフサイクル
◆ はじめてオブジェクト指向に挑戦するとき注意すること
◆ 組み込み型システムの制御ソフトウェアとオブジェクト指向開発

3月号特集トップページへ戻る


Copyright 2001 杉浦 英樹