第3回 キッチンから学ぶUMLの勘所

キッチンにある身近な家電のUML

日本の組み込みソフトウェア開発では、UMLの導入により従来の開発手法からの脱皮を目指す現場の方々が多くなってきています。そんな現場の開発リーダーたちの共通認識は、既存の開発手法でソフトウェア開発を続けることはとても困難であるということです。

これまでの手法が通用しなくなっている背景には、近年ますますソフトウェアの規模が大きくなり複雑になってきたという事実、そしてプロダクトの不具合の原因を調査すると、ソフトウェアの不具合が、ハードウェアの不具合の数をはるかにしのぐという事実があります。

容易にすべての組み込みソフトウェア開発の諸問題を解決するソリューションはなかなかなく、むしろあればご教授いただきたいほどですが、UMLはその問題解決の糸口になると筆者は考えています。

UMLを開発現場に導入するメリットとしては、UMLがオブジェクト指向固有の仕組みを表す表記法であることから、ソフトウェアの部品化、またシステムの全体像の把握が容易であることがあげられます。また、プログラミングコードとは異なり、ソフトウェアの構造、振る舞いを図で表記することが可能であるため、図を書いた当事者以外でも、内部構造を把握することが比較的容易になるということもメリットの1つです。

本連載では、組み込みソフトウェア開発でのUML活用の利点をすべてお伝えしたいところですが、スペースの制約もあるので、モデリング活用例をもとにその一部を紹介したいと思います。

今回は、一般家庭にも普及が進んだ「食器洗い機」を題材にします。キッチンにある身近な家電のモデリング手法を通して、クラスの作成と状態マシンによる振る舞いを定義し、その検証までを解説します。


図1:モデリングツール「Telelogic Rhapsody」でモデルを動かすと…

食器洗い機のモデルを動作させると...

図1の動画は、作成した食器洗い機のモデルが、開発者の意図どおりに動作することを検証するために、動作させたところです。

次のページ以降では、食器洗い機の振る舞いをどうモデリングしていくか、また上記に示した動画のなかのそれぞれの要素は、どのような意図で配置されているのかについて、解説していきましょう。

著者について

清水 英一

日本テレロジック株式会社 清水 英一

モデリングソリューションズプロダクト事業部 アプリケーションエンジニア。日本テレロジックにおいて、モデリングソリューションズプロダクト事業部に所属するエンジニアとして、組み込み開発向けモデリングツールTelelogic Rhapsody、制御システムビジュアル開発環境ツールTelelogic Statemateなど、モデリングに関しての幅広い営業技術支援、製品サポートおよびコンサルティングサービスのオペレーション、特に、自動車業界向けモデリング、家電(CE)業界向けモデリングを中心に担当しています。

IT Leaders 毎月無料でお届けいたします

本誌は、読者登録いただくことにより、毎月無料でみなさまのお手元まで直接お届けいたします(書店などでは販売していません)。

企業の情報システムを担当する方々や事業部門のIT担当の方々、およびIT関連プロフェッショナルの方々を対象に、実践的に役立つ情報を掲載、幅広く業務にご活用いただけます。

IT Leaders新規購読お申し込みはこちらから