組み込み型ソフトウェアは,CPUを利用し,その周辺に接続されている各種デバイスに直接作用することで,その先にある駆動部品や受動部品を制御する.つまり,制御対象が部品として目に見えているので,そのものをオブジェクトとして抽出することが容易にできる分野である. また,業務系ソフトウェア開発においても難しいとされる概念オブジェクト(サービスなどの目に見えないものをオブジェクトとして定義する)の抽出についても,先に部品をオブジェクトとして抽出しておけば,その部品との関係から推察することができる.このことは,オブジェクト指向モデリングと組み込みシステム開発の親和性の良さを表しているのではなかろうか? ユースケースもしかりである.CPUから見たときに直接接続されているものは,設計する際に意識するものとして,設計工程でのアクタとして抽出される(図8).
分析工程でのアクタは,その先にある駆動部品や受動部品,またはさらにその先にあるシステム外部の刺激生成物,あるいは使用者(人間)として発見することができる.ユースケースは,開発対象に要求される機能なのだから,分析する際には必然としてシステムが組まれているので,思いのほか具体化できているだろう. 設計する際は,そのシステムの役割(責務範囲)で,実現する要素に分割して考えることで実装へ向けてのシナリオが見えてくる. ユースケースとオブジェクトモデル(クラス図)の作成さえスムーズにできたなら,あとはモデルの検証を行って,詳細化することで実装に結びつければよく,いままでよく見えなかったソフトウェア開発の工程は,オブジェクト指向モデルによる成果物の把握が可能になり,見えるものを開発できるようになる.その結果,モデルの成り立ちを開発工程により把握することが可能になり,より早く確実にモデルを作るための開発工程の改善ができるようになる.最終的に,ソフトウェアの開発はシンプルに,確実に進められる. さらに,工程間の作業と成果物の一貫性を管理することができれば,オブジェクト指向モデルと実行ファイルの合致(たしかにそのモデルを実装した結果がこのソースコードであるという保証)がかなうので,再利用性を飛躍的に上げることが期待できる. いままで,ハードウェアの変更にともない,一から開発し直してきた組み込み型システムのソフトウェアが,この再利用技術を手に入れることの意味は大きい.また,有意義なことであるということを信じてやまない.
3月号特集トップページへ戻る Copyright 2001 杉浦 英樹 |