ユースケースアプローチは、システムのビジネス目標を特定するための一種の手法です。ユースケースの特定は、システムスコープを定義するのに役立ち、検出される要件がすべてビジネス価値、ニーズ、および戦略と一致することを保証します。
ユースケース分析のアクターとは何ですか?
アクターは、開発中のシステムと対話するユーザーまたはその他のシステムが果たす役割を指定します。これは、人間のユーザー、外部ハードウェア、またはその他のプリンシパルが果たす役割を表す場合があります。アクターは常にシステムの外部にあり、ユースケースを開始したり、入力を提供したり、アクターから出力を受け取ったりすることで、ユースケースと直接対話します。単一の物理インスタンスが複数の異なるアクターの役割を果たす場合がありますが、アクターは必ずしも特定の物理エンティティ、つまり電子メールアラートの送信をトリガーするタイマーを表すとは限りません。
ユースケースの特定—ユースケース分析におけるアクターの特性
チームメンバーの利害関係者または対象ユーザーの認識を列挙するだけで、ディスカッション中にコンセンサスに達することが容易になります。
- アクターはシステムの外部にあり、システムの特定の部分に属していないため、「アクター」を「構築」する必要はありません。
- システムを使用し、システムと対話し、システムと情報を交換できる人だけがシステムのアクターです。
- アクターはユースケースを開始して参加するため、アクターを見つけることでユースケースを見つけることができます。
- 「アクターを開発する」必要はありませんが、インターフェースを考慮する必要があります。システムは、アクターが使用するインターフェース(ユーザーエクスペリエンス/ GUI)を考慮する必要があります。または、システムは、アクターが提供するインターフェースを介してデータを取得する必要があります。
俳優は誰ですか?次の質問をします。
- 誰がこのシステムを使用しますか?
- このシステムをインストールするのは誰ですか?
- 誰がこのシステムを開始しますか?
- 誰がこのシステムを維持しますか?
- 誰がこのシステムをシャットダウンしますか?
- このシステムを使用する他のシステムはどれですか?
- このシステムから誰が情報を入手しますか?
- 誰がこのシステムに情報を提供しますか?
- あらかじめ設定された時間になると、自動的に何かが起こりますか?
- どのシステムがこのシステムとネットワーク化されますか?
- このシステムに接続されているハードウェアデバイスはありますか?
- どのデータベースがこのシステムとネットワーク化されますか?
- 社内の誰がこのシステムを使用しますか?\
- 誰がこのシステムを社外で使用しますか?
- 特定の時間またはイベントが発生した場合、このシステムは誰または他のシステムに自動的に通知する必要がありますか?
俳優の種類
多くのアナリストは、人間のアクターのみを特定するため、ユースケース図の描画プロセスで主要なアクターを無視します。このようにユースケースアクターを分類すると、アナリストはユースケース図の主要なアクターを無視しないようにすることができます。
参加者を分類する別の方法があります。それらは次のようになります。
- 人間
- システム/ソフトウェア
- ハードウェア
- タイマー/時計
ユースケースを特定するための質問のリスト
- 参加者はこのシステムにどのような機能を求めていますか?
- このシステムは情報を保存しますか?この情報を作成、読み取り、更新、削除するのはどの参加者ですか?
- システムの内部状態が変化したときに、システムは参加者に通知する必要がありますか?
- システムが知る必要のある外部イベントはありますか?この外部イベントが発生すると、どのアクターがシステムに通知しますか?
- このシステムは定期的に操作を実行する必要がありますか?
- 重要な外部イベントが発生した場合、システムは特定の操作を自動的に実行する必要がありますか?
- このユースケースの名前は十分に明確ですか?このユースケースの結果は、このユースケースの名前から直接判断できますか?
- このユースケースには複数の結果がありますか?それとも、これらの結果はさまざまな時点で生成されていますか?