イベントとアクションの違い

画面設計書に処理内容を書くときに「イベント」や「アクション」について記載することがあります。今まで雰囲気で使っていましたが、気になったので調べました。

14年前のとあるブログ記事にはこのように書いてありました。 http://softest.cocolog-nifty.com/blog/2008/12/post-aecd.html

イベントとは、遷移をもたらす外的刺激や内的変化などを表し、入力とも事象とも表現される。ひとつのイベントは一つの遷移を決定するが、それらはイベント発生時の状態によって変化する。場合によっては、イベントはシステムに関するものではなく、システムのユーザへの刺激で表現される。たとえば、「電源ボタンを押す」「接続の認証が成功する」「検索クエリーのレスポンスが確定する」「○○さんに連絡する用事が発生する」など。

アクションとは、遷移の結果生じる分析が可能な対象物を意味し、入力と対照的に出力とも表現される。混同されやすいが、アクションと遷移後の状態は区別される。ただし、出力も遷移後の状態も同じ名称で表現されることが多いのは確か。たとえば、「(電源がONに遷移して)ディスプレイが点灯する」「(接続の認証が成功して)アイコンが点滅する」「(検索結果が確定して)検索結果が表示される」などである。

なるほど。イベントはアクションのきっかけとなるもの。アクションは処理後の状態を表すようです。

IPAが作っている 第6章 アクション明細 - 000004447.pdf では次のように定義されていました。

イベント:画面の遷移を引き起こすきっかけとなるもの

アクション:画面遷移に伴って起動される動作

具体例を見てみます。

  • アクション名: ログイン
  • イベント名: ログインボタン押下
  • アクション処理概要: 入力されたUsernameとPasswordをもとに顧客データを検索し、ユーザ情報画面を表示する。

イベントはきっかけなので、きっかけとなる事象を書きます。

アクションは処理動作について書きます。どうやったらアクション名の状態になるのか、を表すことができれば良さそうです。

イベントが点でアクションが線ってイメージがわきました。

両者の違いについて調べてもあまり出てきませんでしたが、この2つの説明を読んで自分の中では割と区別できるようになったと思います。