UML-ユースケース図
システムをモデル化するための最も重要な側面は、動的な動作をキャプチャすることです。動的な動作とは、システムが実行/動作しているときのシステムの動作を意味します。
システムをモデル化するには、静的な動作だけでは不十分であり、静的な動作よりも動的な動作の方が重要です。UMLには、動的な性質をモデル化するために使用できる5つの図があり、ユースケース図はその1つです。ここで、ユースケース図は本質的に動的であると説明する必要があるため、相互作用を行うための内部または外部の要因がいくつかあるはずです。
これらの内部および外部エージェントは、アクターとして知られています。ユースケース図は、アクター、ユースケース、およびそれらの関係で構成されます。この図は、アプリケーションのシステム/サブシステムをモデル化するために使用されます。単一のユースケース図は、システムの特定の機能をキャプチャします。
したがって、システム全体をモデル化するために、いくつかのユースケース図が使用されます。
ユースケース図の目的
ユースケース図の目的は、システムの動的な側面をキャプチャすることです。ただし、他の4つの図(アクティビティ、シーケンス、コラボレーション、およびステートチャート)にも同じ目的があるため、この定義は一般的すぎて目的を説明できません。他の4つの図と区別するために、いくつかの特定の目的を調べます。
ユースケース図は、内部および外部の影響を含むシステムの要件を収集するために使用されます。これらの要件は主に設計要件です。したがって、システムを分析してその機能を収集すると、ユースケースが準備され、アクターが特定されます。
最初のタスクが完了すると、ユースケース図がモデル化されて外観が表示されます。
簡単に言えば、ユースケース図の目的は次のように言えます。
システムの要件を収集するために使用されます。
システムの外観を取得するために使用されます。
システムに影響を与える外部要因と内部要因を特定します。
要件間の相互作用がアクターであることを示します。
ユースケース図を描く方法は?
ユースケース図は、システムの高レベルの要件分析のために考慮されます。システムの要件を分析すると、ユースケースで機能がキャプチャされます。
ユースケースは、組織化された方法で記述されたシステム機能に他ならないと言えます。ユースケースに関連する2番目のものは、アクターです。アクターは、システムと相互作用するものとして定義できます。
アクターは、人間のユーザー、一部の内部アプリケーション、または一部の外部アプリケーションの場合があります。ユースケース図を作成する場合は、次の項目を特定する必要があります。
ユースケースとして表される機能
Actors
ユースケースとアクター間の関係。
ユースケース図は、システムの機能要件を把握するために作成されています。上記の項目を特定した後、次のガイドラインを使用して効率的なユースケース図を作成する必要があります
ユースケースの名前は非常に重要です。名前は、実行される機能を識別できるように選択する必要があります。
俳優にふさわしい名前を付けてください。
関係と依存関係を図に明確に示します。
図の主な目的は要件を特定することであるため、すべてのタイプの関係を含めようとしないでください。
重要な点を明確にするために、必要に応じてメモを使用してください。
以下は、注文管理システムを表すサンプルのユースケース図です。したがって、図を見ると、3つのユースケースが見つかります。(Order, SpecialOrder, and NormalOrder) そして顧客である1人の俳優。
SpecialOrderおよびNormalOrderのユースケースは、Orderのユースケースから拡張されています。したがって、彼らは拡張された関係を持っています。もう1つの重要なポイントは、図に示されているシステム境界を特定することです。アクターCustomerは、システムの外部ユーザーであるため、システムの外部にあります。
ユースケース図はどこで使用しますか?
すでに説明したように、UMLには、システムの動的ビューをモデル化するための5つの図があります。現在、すべてのモデルには、使用する特定の目的があります。実際、これらの特定の目的は、実行中のシステムのさまざまな角度です。
システムのダイナミクスを理解するには、さまざまなタイプの図を使用する必要があります。ユースケース図はその1つであり、その特定の目的はシステム要件とアクターを収集することです。
ユースケース図は、システムのイベントとそのフローを指定します。ただし、ユースケース図では、それらがどのように実装されているかを説明することはありません。ユースケース図は、入力、出力、およびブラックボックスの機能のみがわかっているブラックボックスとして想像できます。
これらの図は、非常に高いレベルの設計で使用されます。この高レベルの設計は、システムの完全で実用的な全体像を得るために何度も洗練されています。適切に構成されたユースケースでは、前提条件、事後条件、および例外についても説明します。これらの追加要素は、テストを実行するときにテストケースを作成するために使用されます。
ユースケースはフォワードエンジニアリングとリバースエンジニアリングの適切な候補ではありませんが、それでもフォワードエンジニアリングとリバースエンジニアリングを行うためにわずかに異なる方法で使用されます。同じことがリバースエンジニアリングにも当てはまります。ユースケース図は、リバースエンジニアリングに適したものにするために異なる方法で使用されます。
フォワードエンジニアリングでは、ユースケース図を使用してテストケースを作成し、リバースエンジニアリングでは、ユースケースを使用して既存のアプリケーションから要件の詳細を準備します。
ユースケース図は次の目的で使用できます-
要件分析と高レベルの設計。
システムのコンテキストをモデル化します。
リバースエンジニアリング。
フォワードエンジニアリング。