令和3年度 秋期 エンベデッドシステムスペシャリスト試験 午前II 問20

並列に生起する事象間の同期を表現することが可能な,ソフトウェアの要求モデルはどれか。

解答・解説

正解: ウ. ペトリネットモデル

ペトリネットモデルは、システムの状態と状態遷移をプレース(状態)、トランジション(事象)、トークン(条件の成立を示す印)などを用いてグラフィカルかつ数学的に記述するモデルです。特に、並列に生起する事象間の同期や競合、非同期的な事象の振る舞いを正確に表現することに適しています。したがって、ソフトウェアの要求モデルとして並列事象の同期を表現可能なものはペトリネットモデルとなります。

各選択肢の解説

  • ア(E-Rモデル): 対象システムで扱うデータをエンティティ(実体)とリレーションシップ(関連)を用いて構造化して記述するデータモデルであり、時間的な変化や並列処理の同期などを表現するものではありません。
  • イ(データフローモデル): DFD(データフロー図)などに代表される、システム内のデータの流れ(データフロー)やデータの変換プロセスを記述するモデルです。事象の発生タイミングや並列処理の同期といった制御の流れを表現することには不向きです。
  • ウ(ペトリネットモデル): 正解です。並列処理や分散システムのモデル化、特に並行事象の同期や排他制御を表現するのに用いられます。
  • エ(有限状態機械モデル): 状態遷移図などに代表される、システムが取り得る有限個の状態と、事象の発生による状態間の遷移を記述するモデルです。逐次的な振る舞いの表現には適していますが、純粋な有限状態機械では独立して並列に生起する事象やその同期を表現すると状態爆発を起こしやすく、適していません。

Spineチーム