イベントドリブン設計

問題

プロセス制御などの事象駆動(イベントドリブン)による処理の仕様を表現する方法として,適切なものはどれか。

  • DFD
  • E-R図
  • クラス図
  • 状態遷移図

答え

状態遷移図

解説

状態遷移図

外部からの入力により内容の変化する事象駆動(イベントドリブン)による処理の仕様を表現するには、状態遷移図が適しています。

状態遷移図(じょうたいせんいず、State Transition Diagram)は、有限オートマトンなどの状態機械について、その各状態を頂点とし、状態から状態への各遷移を辺としたグラフ構造に注目して、グラフィカルに表現した図である

出典: フリー百科事典『ウィキペディア(Wikipedia)』

上は、wikipedia より、「開」「閉」2つの状態のある扉の状態遷移図です。

扉は、「開く」「閉じる」という外部からの入力(事象、event)により、内容が変化(駆動、driven)するので、事象駆動(event driven)による処理の仕様として、状態遷移図が記述できます。

下記記事は、より具体的に「状態遷移図」の実際の設計への落とし込み方が理解できます。

状態遷移表による設計手法

DFD

データの流れに着目することで、対象業務のデータの流れと処理の関係を図式化する手法です。

データフロー図(Data Flow Diagram、DFD)は、情報システムのデータの「流れ; flow」をグラフィカルに表現する図である。システム設計段階の初期に描かれることが多い[1]。データフロー図はデータ処理可視化にも使われる(構造化設計)。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

E-R図

E-R図は、データベースの対象となる実体(エンティティ)と実体の持つ属性(アトリビュート)、実体間の関連(リレーションシップ)を表現するために使われます。

実体関連モデル(じったいかんれんモデル、: Entity-relationship Model, ERM)は、概念的データモデルの高レベルな記述を可能とするモデルの一種である。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

上は、wikipedia のER図の例です。

「Artist」と「Song」はそれぞれ「エンティティ」として、 1 対 0以上の「Performs」という関係を持っています。また、例えば 「Artist」 は「名前」という「属性」を持っていると思われます。

クラス図

統一モデリング言語(UML)において定義されるもので、クラス間の静的な関連を表現する図です。

統一モデリング言語 (UML)におけるクラス図(クラスず、: class diagram)とは、クラス、属性、クラス間の関係からシステムの構造を記述する静的な構造図である。

出典: フリー百科事典『ウィキペディア(Wikipedia)』

上は Wikipedia からのクラス図の例です。

車と車輪の関係を表しています。

車は「モデル」や「メーカー」といった属性、「右に曲がる」「左に曲がる」「直進する」といったメソッドを持ち、車輪とは「使う」という関係を持っています。