ソフトウェア設計者向け情報

5.UML断章2
・・・UML(ユーエムエル)」のダイアグラム2・・・

 本稿も、ソフトウェア設計者向けというテーマからは外れてしまうので、某著名作家の例に倣い「断章」としました。
断章2は、「振る舞い図」と呼ばれる7種類のダイヤグラムを示します。 断章1では「構造図」と呼ばれる6種類のダイヤグラムをご紹介しています。
設計者諸氏に必要なUML基本知識については、順次「ユースケース」から、設計を目的とした視点で解説をしてまいります。

▼ 本稿の内容情報
5-1.アクティビティ図:使用頻度が高い
5-2.コミュニケーション図
5-3.相互作用概観図
5-4.シーケンス図
5-5.状態マシン図
5-6.タイミング図
5-7.ユースケース図:使用頻度が高い

5-1.アクティビティ図

*要約:
 アクティビティ図は、現在でも使用されている種々の「フローチャート」を統一するものです。
*用途:
 一般的に、ビジネスプロセスモデリング、ユースケースまたは利用シナリオに記述されたロジックのモデリング、 ビジネスルールの詳細ロジックのモデリングや複雑な操作の内部ロジックをモデリングすることも可能です。
*解説:
 オブジェクト指向におけるUMLアクティビティ図は、構造化開発のフローチャートやデータフロー図(DFD)に相当します。

5-2.コミュニケーション図

*要約:
 コミュニケーション図は、クラスやオブジェクト間のメッセージフローを表します。
*用途:
 クラス間に基本となる関連(関係)が存在する場合に使用します。
*解説:
 四角形は、アプリケーションを構成するさまざまなオブジェクトを表します。 オブジェクトやクラス間の直線はクラス間の関係を表します。 多重度などの関連の詳細はクラス図に含まれているため、ここにはモデリングしません。 メッセージはラベルの付いた矢印として記述し、メッセージの向きを表します。

5-3.相互作用概観図

*要約:
 相互作用概観図 (interaction overview diagram) は、UMLの相互作用を表します。
*用途:
 制御フローを概観するためのフローを表す場合に使用します。
*解説:
 UMLの相互作用図(シーケンス図、コミュニケーション図、タイミング図、相互作用概観図)のいずれかを表す相互作用枠と、 呼び出すアクティビティや操作を表す相互作用発生 (interaction occurrence) 枠です。 これらの枠には、ダイアグラムの種類と、オプションでダイアグラムの名前が書かれています。 相互作用発生枠には「ref」と書かれていて、通常名前は書きません。

5-4.シーケンス図

*要約:
 シーケンス図は、利用シナリオ、メソッド、サービスをモデリングします。
*用途:
 処理の方法を視覚的に表現する場合に使用します。
*解説:
(1) 利用シナリオ:
 利用シナリオとは、考えられるシステムの使い方を記述したものです。
利用シナリオのロジックは、ユースケースの一部(もしかしたら代替コース)、もしくは全体を示します。 (アクションの基本シナリオ、代替シナリオの場合もあります。)
あるいは、利用シナリオのロジックは、複数のユースケースにまたがるロジックを通るパスを表現する場合もあります。
(2) メソッド(処理の方法や方式、「手続き」)のロジック:
 シーケンス図を使って、複雑な操作や関数やプロシージャのロジックを調べることができます。
シーケンス図(特に非常に詳細なもの)は、視覚的に表現したオブジェクトコード(プログラム)だと考えることができます。
(3) サービスのロジック:
 サービスとは事実上、高いレベルのメソッド(処理の方法)であり、 たいていはさまざまなクライアントから呼び出すことができます。 サービスにはWebサービスやビジネストランザクションなどがあり、 これらはCICS/COBOLやCORBA準拠のオブジェクトリクエストブローカー(ORB)などのさまざまな技術を使って実装されます。

5-5.状態マシン図

*要約:
 状態マシン図は、オブジェクトが取りうるさまざまな状態と、その状態間の遷移を表します。 (状態遷移図もしくは、もっと簡単に状態図とも呼びます。)
*用途:
 オブジェクトの動作を視覚的に表現する場合に使用します。
*解説:
 遷移とはある状態から別の状態に進むことで、オブジェクトに対する内部的/外部的なイベントによって引き起こされます。

5-6.タイミング図

*要約:
 タイミング図は、ある期間を通して、1つ以上のオブジェクトがどう振る舞うかを検討するための図です。
*用途:
 自動車の燃料噴射システムの制御ソフトウェアなど、 組み込みソフトウェアの設計でよく使われますが、ビジネスソフトウェアでも使用しています。
*解説:
 タイミング図には大きく分けて、簡略な記法と堅牢な記法の2種類があります。

5-7.ユースケース図【設計工程で重要】

*要約:
 ユースケース図は、広義のユーザーとシステムの動作について、「○は、□をする。」の形式で表現します。
*用途:
 システム開発に関連する多くの作業と社会科学の分析分野でよく使用されます。
*解説:
(1) ユースケース:
ユースケースとはアクターにとって重要な価値を持つアクションのシーケンスを記述するもので、横長の楕円で表されます。
(2)アクター:
アクターとはシステムとの相互作用においてある役割を果たす人や組織や外部システムで、線で描いた人型で表されます。
(3) 関連:
アクターとユースケース、ユースケース間の関連は、図上で実線で示します。 ユースケースで記述した相互作用にアクターが参加する場合、関連が存在することになります。 関連はユースケースとアクターとを互いに結び付ける直線として、必要なら片側に矢印をつけてモデリングすることも可能です。
矢印を使用する場合は、その関係が最初に呼び出される方向や、ユースケースの最初のアクターを示します。
(4) システム境界を表す長方形(オプション):
ユースケースをシステム境界の長方形で囲んで、システムの範囲を示すことができます。 システム境界を表す長方形はめったに使われませんが、システムの各主要リリースでどのユースケースを納品するかを明らかにするため等に使用します。
(5) パッケージ(オプション):
パッケージは、ユースケースなどのモデル要素をグループにまとめるためのUMLの構成概念です。 ファイルフォルダの形で表し、ユースケース図やクラス図など、どのUMLダイアグラムでも使うことができます。 ダイアグラムが大きくて扱いにくくなった場合など(通常は1ページに印刷できなくなる程度)、パッケージを使って大きな図を小さな複数の図に整理することが可能です。


UML断章2-以上


お問い合わせについて

> 過誤を発見された方、また、ご不明な点がございましたら、メールにてご連絡下さい。
→メールでのお問い合わせ


▲ページトップに戻る