ステートチャート図
状態(ステート)は文字通りオブジェクトの状態を表している。 ステートチャート図はオブジェクトの動的な振る舞いを表現するためのダイアグラムである。 オブジェクトの状態の変化を、外部イベントの発生とそれに対する状態の遷移という関係で表現する。 いくつかのユースケースをまたいで複雑な状態変化を行うようなオブジェクトを分析し、 クラスの定義(属性や関連など)の妥当性を検証したり精度を高めたりするために利用され、 状態(ステート)は角の丸い四角形のアイコンとして記述される。 内部遷移は省略可能で、「イベント名/アクション」という形式で記述される。 上の図では「受注済み」や「入荷済み」などが状態(ステート)に該当する。 また「受注済み」状態には「do/”商品入荷中”メッセージ表示」という内部遷移が記述されていて、 利用者に適切なメッセージを表示する事を表している。
※ステートチャート図の例
開始状態と終了状態
開始状態はオブジェクトの開始状態を示すために使用され、黒塗りの丸のアイコンで表現される。 終了状態はオブジェクトの終了状態を示すために使用され、円で囲まれた黒塗りの丸のアイコンで表現される。 開始状態と終了状態は状態図の他にアクティビティ図でも使用される。
遷移
遷移はオブジェクトがある状態から別の状態へ移る事を表し、矢印つきの実線で表現される。 遷移の内容は「イベント名[ガード条件]/アクション」という形式で実線の上に記述される。 上の図では「キャンセル/返金」という遷移(アクションはガード条件は省略されている)が記述されている。 これは「キャンセル」というイベントの発生により、注文オブジェクトが受注済み状態から終了状態に遷移し、 更に返金というアクションが実行されることを表している。
ガード条件
ガード条件は遷移が成立するための真偽値条件を表していて、イベント発生時に一度だけチェックされる。 ガード条件は状態図の他にアクティビティ図でも使用される。 上の図では「配送手配」「梱包完了」という遷移(アクションは省略される)が記述されている。 これは「配送手配」というイベントが発生した際に商品の梱包が完了したかどうかがチェックされ、 梱包が完了している場合のみ、注文オブジェクトが入荷済み状態から配送済み状態に遷移することを表している。
アクティビティ図
アクティビティは一つの処理を実行している活動状態を表す。 アクティビティ図はシステムの動的な振る舞いを表現するためのダイアグラムであり、 活動状態の遷移を記述することにより、様々な処理の手順やフローを表現できる。 つまり、処理の流れを表現するという場面において非常に幅広く利用する事ができる。 例えば、要求定義フェーズにおいてはユースケース記述のイベントフローをより明確に記述することができ、 また、設計フェーズでは複雑な操作の処理フローを記述するために利用できる。 特に通常のフローチャート図では表せない同期を表現できるため、平行処理を伴う操作のフローを記述する事ができる。 更に、企業の業務フローやワークフローを分析する事によってビジネスプロセスのモデリングにも利用する事が可能である。 アクティビティは角を半円形に膨らませたカプセル型のアイコンとして表現され、内部に処理の内容を記述する。 下の図では「ログイン画面を表示」、「ユーザIDを入力」などがアクティビティに該当する。
※アクティビティ図の例
分岐
分岐は、処理の流れが分岐する箇所を表していて、ひし形のアイコンで記述される。 分岐から遷移先への各線上にはガード条件が記述されていて、ガード条件が真となる方向へ処理が遷移する。
本サイトにおける全コンテンツの無断複製,転写,公衆送信を禁じます
Copyright(C) 2003-2010 Eiko Takaoka. All rights reserved.