(1/2)UMLモデリングによる組み込み開発は、はたして吉と出るか凶と出るか。});はじめにETロボットコンテスト(以下、ETロボコン)は、単にロボットの性能を競い合うだけでなく「ロボットを動かすソフトウェア」の優劣も競い合うという点で、ほかのロボットコンテストとは一線を画しているユニークな大会です。「ソフトウェア」とはいっても、実際のソースコードではなく、「ソフトウェアの設計図」すなわち「モデル」を審査対象としています。このモデルという設計図の良しあしで実際のソフトウェアの出来を判断するという点も、従来にないユニークな試みといえるでしょう。波が押し寄せる組み込みソフトウェアの開発現場に『モデル開発』という工学的な手法を普及させる」ことを目的としている点にあります。このコンテストではモデルの提出は必須になっていますし、ソフトウェア自体の性能で競われる「競技部門」よりも、モデルの良しあしで競われる「モデル部門」で好成績を収めることの方がより高く評価されてきました(ちなみに賞品のランクも「モデル部門」>「競技部門」となっています)。そこで気になるのが「『モデル』すなわち『設計図』が優れていれば、実際のソフトウェア自体も優れているはずである」という仮説です。本稿では、昨年(2005年)の第4回ETロボコンにおける結果を用いてこの仮説を検証するとともに、それを踏まえて今年の第5回ETロボコンで解明していきたいポイントについても言及してみたいと思います。モデルと性能の相関関係について図1は、第4回大会のモデルと性能の相関関係を表したグラフです。前述の仮説が正しいのであれば、右肩下がりの分布となるはずですが、これを見る限りでは、そのような分布とはいえません。次のような傾向が分かります。競技部門で高順位(性能が良い)のものは、モデルとしてはおおむね中程度の評価を得ているモデル審査で低評価だったチームは競技部門でも低順位(性能が良くない)モデル審査で高評価だったチームは、競技部門で低順位(性能が良くない)この要因を考える前に、まずETロボコンに代表される「組み込みシステム」開発の特徴について確認しておきましょう。モデルと性能の相関関係(第4回ETロボコン)。モデル部門の評価の高い順からS、A、B、C、Dとなる。「実性能」の追求という2つのアプローチにより実現されます。追求とは、「開発対象を理解・整理し、論理的なソリューションを検討する」トップダウンのアプローチです。いった「内部品質にかかわる非機能要求」の実現方法を検討するためには欠かせないアプローチといえます。大規模・複雑化したシステムには必須であり、この検討がいいかげんだと「何とか作ったはいいが、保守できない」「ちょっと変更すると、いろいろなところに影響が及ぶ」といった問題を引き起こすことになります。いったキーワードに代表されるように、「複雑なものは、なるべく独立性の高いシンプルな要素の集まりに分けて管理する」方針に沿って、開発対象を整理することから始めます。「本来、どうあるべきか」という目的レベルでの整理を実施することで、手段にとらわれない本質的な論理構造を得ることができます。いった構成要素を見いだします。これらの要素を組み合わせることで、要求が正しく実現できることを検証します。「オブジェクト指向」という還元論的な考え方や、「UML」などのモデルを使った開発手法は、この「論理性」を追求するアプローチを実践するうえで非常に役立ちます。追求とは、「多くの制約にどう対処して要求された性能を実現するか」を目指すボトムアップのアプローチです。ユーザービリティ」といった「非機能要求」の中でも「外部品質」すなわち「実性能」にかかわる要求を実現するためには欠かせないアプローチとなります。環境や人間といった現実世界の予測できない相手と直接対峙(たいじ)する中で、求められる性能を達成するためには、「要素技術」と呼ばれるさまざまな実践的ノウハウが必要になってきます。選択」「実装環境であるOSやライブラリの特性熟知」など数多くの要素技術が必要になります。これら要素技術は実性能に直結するため、ある程度規模が小さな開発であれば、このアプローチだけでも十分要求を満たすシステムが構築できます。規模が大きくなるにつれ、この方法だけでは対象が複雑化して破たんしてしまうため、前述した「論理的性能」に基づいた整理が必要となります。まとめると、組み込みシステムの開発においては、トップダウンで追求する「論理的性能」ボトムアップで追求する「実性能」という2つのアプローチをうまくバランスさせることが成功の秘訣といえます。ボトムアップである程度「実性能」が追求できたら、そこで発見された内容や要素技術をトップダウンで作成したモデルにフィードバックすることで、より実践的できちんと整理されたソフトウェアが出来上がるのです。SNSfacebooktwitterITmediaはアイティメディア株式会社の登録商標です。