連載第9-2回
UMLの基礎と応用

(株)NTTデータ 技術開発本部 副本部長
山本修一郎

ROSEによるアクティビティ図の作成

 ROSEでアクティビティ図を編集するためには、まずプルダウンメニュでブラウズを選択して、状態マシン図を左クリックする。状態図またはアクティビティ図を選択するためのポップアップメニュが提示されるので、そこで図の種類としてアクティビティを選んでOKボタンを指定すると、アクティビティ図の編集ウィンドウが提示される。

 アクティビティ図で使う図形要素を示すメニュバーを図2に示す。

図2 ツールバーの構成
図2 ツールバーの構成

 このメニュバーは状態遷移図と共用になっているので、アクティビティ図で使うスイムレーン、オブジェクトフロー、オブジェクトを追加して予め選択しておく必要がある。オブジェクトには状態を付与する必要がある。このためオブジェクトのアイコンをクリックして仕様ウィンドウを出し、オブジェクトの状態を定義する。このとき、既定義の状態は状態エントリのプルダウンメニュから選択できる。新しい状態を定義する場合には、状態エントリで<新規作成>を選択して状態に対する仕様ウィンドウで状態名を入力することになる。

サブアクティビティ図の編集

 アクティビティ上で右ボタンをクリックするとポップアップメニュが出てくるので「サブ図」を選択すると、サブメニュが提示され新規アクティビティ図を選択できる。このとき既にこのアクティビティに対してサブアクティビティ図が定義されている場合、そのサブアクティビティもサブメニュ上で選択できるようになっている。

 サブアクティビティ図を使わずに、アクティビティの内部に直接、アクティビティ図を記述していくこともできる。

 判断に対するガード式を入力する場合、制御フローを示す遷移の矢線を選択して左クリックすると、状態遷移使用ウィンドウが提示されるので、ここで詳細タブを選んで、ガード条件を入力する。

 ROSEを用いたアクティビティ図の作成例を図3に示す。

図3 認定認証調査業務に対するアクティビティ図
図3 認定認証調査業務に対するアクティビティ図

 この例では、日本品質保証機構が実施している認定認証業務に対する業務フロー[6]をアクティビティ図で記述した。スイムレーンとして、申請者、主務大臣、JQA(日本品質保証機構)がある。実地調査に対するサブアクティビティをサブ図で定義した。このようにROSEを用いることにより業務フローをアクティビティ図で分かりやすく階層的に記述することができる。

アクティビティ図の記述上の留意点

 業務フローをアクティビティ図で記述する場合には、次のような手順になると思われる。まず、業務に関して責任を持つ組織や担当者をスイムレーンとして配置する。業務の開始条件と終了条件を明らかにして、対応するアクティビティを記述する。業務手順が自然言語や業務フロー図で記述されている場合には、スイムレーンを用いて各業務をアクティビティに再構成する。このとき各アクティビティで作成されたり、必要となる情報や文書をオブジェクトとして抽出する。この抽出したオブジェクトに対して、各アクティビティとの関係を明らかにすることによりオブジェクトフローを記述する。とくに、各オブジェクトがアクティビティによりどのように変化するかを分析して、オブジェクトの状態を追加する。

 もし必要があれば、アクティビティ間の並行性や順序性を吟味することにより、同期条件を追加する。

 また、複数のアクティビティをまとめてサブアクティビティにすることにより、アクティビティ図を階層化する。逆に、最初は概略的なアクティビティを記述しておき、段階的にサブアクティビティに展開していくことにより、アクティビティ図を詳細化していくことも考えられる。

 最後に、作成したアクティビティ図について、制御フローやオブジェクトフローに従って、正しくアクティビティが実行できるかどうか、抜けがないかなどを検証する。また同期条件についても妥当性を検証する必要がある。

まとめ

 本稿ではアクティビティ図について紹介した。また、ROSEによるアクティビティ図の編集やアクティビティ図の位置付けなどについて述べた。

 次回は実装図(Implementation Diagram)について説明しよう。

参考文献
[1]ファウラー,スコット著羽生田監訳,UMLモデリングのエッセンス 第2 版, 翔泳社, 2000.
[2] Unified Modeling Language (UML),version1.4,
http://www.omg.org/technology/documents/formal/uml.htm
[3] Kobryn,C.,UML 2001:A Standardization Odyssey,CACM,Vol.42,No.10,pp.29-37,1999.
[3]ブーチ著、UML ユーザーガイド、,ピアソン・エデュケーション(原著名The Unified Modeling Language User Guide,1998)
[4] Jim Heumann, Introduction to Business Modeling Using the Unified Modeling Language
(UML),http://www.therationaledge.com/content/mar_01/m_uml_jh.html
[5] Lind,J.,Specifying Agent Interaction Protocols
with Standard UML,http://www.agentlab.de/documents/ Lind 2001 c.pdf
[6] 日本品質保証機構, 認定認証業務に関する調査フロー,
http://www.jqa.or.jp/j/esaec/fl_ev.pdf

●執筆者にメールを出す
yamamotosui@nttdata.co.jp
連載第10回へ >>
・連載第1回

・連載第2回

・連載第3回

・連載第4回

・連載第5回

・連載第6回

・連載第7回

・連載第8回

・連載第9回

・連載第10回

・連載第11回

・連載第12回

・連載第13回

・連載第14回

・連載第15回

・連載第16回

・連載第17回