タスクの事例
mschedはもともとmeeting scheduleで、issueトラッカーとかタスクマネージャの話。
最近の例として、ミーティングスケジュールと同様だが:
- 日時の候補を合意する。
- その日時で場所を予約する。
- 場所を確定する。
- その旨を連絡する。
場所の予約が失敗のときは、最初からやり直し。アクションを[...]、状態を(...)で書くと:
- (スタート)[日時の合意]-> (合意した)
- (合意した)[予約]-> (予約した)
- (予約した) -> (予約成功)
- (予約した) -> (予約失敗)
- (予約成功)[連絡] -> (連絡済み)
- (予約失敗)[連絡] -> (スタート)
- (連絡済み)[実施] -> (エンド)
状態集合は、
- (スタート), (合意した), (予約した), (予約成功), (予約失敗), (連絡済み), (エンド)
アクションは、
- [日時の合意], [予約], [連絡], [実施]
現実の行為とissueとしての記録はズレがあって、
- 合意後に、issueの生成。初期状態で予定日時を持つ。
- 予約後に、issueが(予約した)状態に変わる。
- 受動的に返答を受けて、issueの状態は(予約成功)または(予約失敗)。
- (予約成功)状態は、連絡をトリガーする。
- 実施後の(エンド)に変わる。
自動化可能性は:
- issueの生成により予約がトリガーされる
- 予約の応答に反応して、連絡をトリガーする
- 実施日時より経過したissueは消去する。あるいは消去を促す。