UMLの世界でよく寄せられる質問は次のとおりです。ユースケース図とは何ですか。 ユースケース図を使用する理由それとも単純に、なぜユースケース?。一部の人々はユースケースが何であるかを知らないが、残りは良いソフトウェア製品を開発することにおけるユースケースの有用性を過小評価しました。ユースケース図は過小評価されていますか?この記事を読み終えたら答えが見つかるといいですね。

それでは、ユースケース図は何ですか?UMLのユースケース図は、開発中の新しいソフトウェアプログラムのためのシステム/ソフトウェア要件の主要な形態です。ユースケースは、予想される動作(what)を指定し、それを実現するための正確な方法(how)は指定しません。一度指定されたユースケースは、テキスト表現と視覚表現(UMLなど)の両方を表すことができます。ユースケースモデリングの重要な概念は、エンドユーザーの観点からシステムを設計するのに役立つということです。外部から見えるシステムの振る舞いをすべて指定することによって、ユーザーの言葉でシステムの振る舞いを伝えるための効果的な手法です。

ユースケース図は通常シンプルです。ユースケースの詳細は表示されません。

  • ユースケース、アクター、システム間の関係の一部だけを要約しています。
  • 各ユースケースの目的を達成するためにステップが実行される順序は示されていませ

前述したように、ユースケース図は単純で、数個の形状しか含まれていません。あなたのケースに20を超えるユースケースが含まれている場合は、おそらくユースケース図を誤って使用しているでしょう。

次の図は、UML図の階層とUMLユースケース図の位置付けを示しています。ご覧のとおり、ユースケース図はビヘイビアー図のファミリーに属します。

UMLダイアグラム階層のユースケース図

ご了承ください:

  • さまざまな目的に役立つさまざまなUMLダイアグラムがあります(上のUMLダイアグラムツリーからわかるように)。これらの詳細を他のUMLダイアグラム・タイプおよび文書に記述し、それらをユースケースからリンクさせることができます。
  • ユースケースはシステムの機能要件のみを表します。ビジネスルール、サービス品質の要件、実装の制約などの他の要件も、他のUML図とは別に表示する必要があります。

より早く、より簡単にUMLを学ぶ

あなたはより早く、より簡単にそしてより早くUMLを学ぶための無料のUMLツールを探していますか?Visual Paradigm Community Editionは、すべてのUML図タイプをサポートするUMLソフトウェアです。それは国際的な賞を受賞したUMLモデラーですが、それでも使いやすく直感的で完全に無料です。

ユースケースの起源

UMLが存在する前に導入されましたが、最近のユースケースモデリングはしばしばUMLに関連しています。その歴史は以下の通りです。

ユースケース図の目的

ユースケース図は、通常、開発の初期段階で開発され、以下の目的でユースケースモデリングを適用することがよくあります。

  • システムのコンテキストを指定する
  • システムの要件を把握する
  • システムアーキテクチャを検証する
  • 実装を推進し、テストケースを生成する
  • アナリストによってドメインエキスパートと共に開発された

一目でわかるユースケース図

以下のユースケース図の例に示すように、標準形式のユースケース図が統一モデリング言語で定義されています。

一目でわかるユースケース図

表記説明

視覚的表現

俳優

  • 誰かがユースケース(システム機能)と対話します。
  • 名詞で名づけられた。
  • アクターはビジネスで役割を果たします
  • ユーザーの概念に似ていますが、ユーザーはさまざまな役割を果たします。
  • 例えば:
    • 教授。講師、研究員になることができます
    • 2つのシステムで2つの役割を果たす
  • アクターはユースケースをトリガーします。
  • アクターはシステム(インプット)に対する責任を持ち、アクターはシステム(アウトプット)からの期待を持っています。

ユースケース図表記 - アクター

使用事例

  • システム機能(プロセス - 自動または手動)
  • 動詞+名詞(または名詞句)によって命名されます。
  • すなわち何かをする
  • 各アクターはユースケースにリンクされている必要がありますが、一部のユースケースはアクターにリンクされていない場合があります。

ユースケース図表記 - ユースケース

通信リンク

  • ユースケースへのアクターの参加は、実線でアクターをユースケースに接続することによって示されます。
  • アクターは関連付けによってユースケースに接続することができ、アクターとユースケースがメッセージを使用して互いに通信することを示します。

ユースケース図表記 - コミュニケーションリンク

制度の境界

  • システム境界は、要件文書で定義されているように、潜在的にシステム全体です。
  • 大規模で複雑なシステムでは、各モジュールがシステム境界になることがあります。
  • たとえば、組織のERPシステムの場合、個人、給与、経理などの各モジュール。
  • これらの各ビジネス機能に固有のユースケースのシステム境界を形成できます。
  • システム全体は、システム全体の境界を表すこれらのモジュールすべてにまたがることができます。

ユースケース図表記 - システム境界

関係を持つユースケース図の構造化

ユースケースは異なる種類の関係を共有します。2つのユースケース間の関係を定義することは、ユースケース図のソフトウェアアナリストの決定です。2つのユースケース間の関係は、基本的に2つのユースケース間の依存関係をモデル化しています。さまざまなタイプの関係を使用して既存のユースケースを再利用すると、システム開発に必要な全体的な労力が削減されます。ユースケースの関係は次のとおりです。

ユースケースの関係

視覚的表現

広がる

  • 「無効なパスワード」ユースケースに、基本ユースケース「ログインアカウント」で指定されている動作が含まれる可能性があることを示します(拡張子で指定されている場合があります)。
  • 点線の有向矢印で描きます。矢印の先端は基本ユースケースを指し、子ユースケースは矢印の基部で接続されています。
  • ステレオタイプ "<>"は拡張関係として識別されます

ユースケース図表記 - 拡張

含める

  • ユースケースが別のユースケースの別の機能の機能を使用していると示されている場合、ユースケース間のこの関係は包含関係または使用関係と呼ばれます。
  • ユースケースには、そのビジネスプロセスフローの一部として別のユースケースで説明されている機能が含まれています。
  • 基本ユースケースから子ユースケースへのuseの関係は、基本ユースケースのインスタンスに子ユースケースで指定されている動作が含まれることを示します。
  • 包含関係は、点線の有向矢印で示されています。矢印の先端は、矢印の基部で接続されている子ユースケースと親ユースケースを指しています。
  • ステレオタイプ ""は、関係を包含関係として識別します。

ユースケース図表記 - 含める

一般化

  • 汎化関係は、ユースケース間の親子関係です。
  • 汎化関係における子のユースケースは、基になるビジネスプロセスの意味を持ちますが、親のユースケースの拡張です。
  • 汎化は、三角形の矢じりを持つ有向矢印として示されています。
  • 子ユースケースは矢印の根元で接続されています。矢印の先端は、親のユースケースに接続されています。

ユースケース図表記 - 一般化

ユースケース例

ユースケース例 - 関連リンク

ユースケース図は、システムの一連のユースケース、つまりアクター、およびアクターとユースケース間の関係を示します。

ユースケース図の例

ユースケース例 - 関係を含める

包含関係は、基本ユースケースで指定されていない追加機能を追加します。<>関係は、一般的な振る舞いの再利用をサポートするために、含まれるユースケースから基本的なユースケースへの一般的な振る舞いを含めるために使用されます。

ユースケース図インクルード例

ユースケース例 - 関係を広げる

拡張関係はオプションの機能またはシステムの動作を示すため、拡張関係は重要です。<>関係は、拡張ユースケースからのオプションの動作を拡張ユースケースに含めるために使用されます。以下のユースケース図の例を見てください。拡張コネクタと拡張ポイント「検索」が表示されます。

ユースケース図の拡張例

ユースケース例 - 汎化関係

一般化関係は、子ユースケースが親ユースケースの動作と意味を継承することを意味します。子は親の動作を追加または上書きできます。以下の図は、3つのユースケースを接続する2つの汎用コネクタを示して、ユースケースの例を示しています。

ユースケース図の一般化の例

ユースケース図 - 自動車販売システム

以下の図は、車両システムのユースケース図の例を示しています。あなたが見ることができるように車両販売システムと同じくらい大きいシステムさえ10以下のユースケースを含んでいます!それがユースケースモデリングの美しさです。

ユースケースモデルは、extendとincludeの使用方法も示しています。他にも、アクターとユースケースを結び付ける関連付けがあります。

ユースケース図の例 - 自動車販売システム

俳優の見分け方

多くの場合、人々はアクターを識別することによって要件導出プロセスを開始するのが最も簡単であると思います。以下の質問は、あなたがあなたのシステムのアクターを識別するのに役立ちます(Schneider and Winters - 1998)。

  • 誰がシステムを使用しますか?
  • 誰がシステムをインストールしますか?
  • だれがシステムを起動しますか?
  • 誰がシステムをメンテナンスしますか?
  • 誰がシステムをシャットダウンしますか?
  • このシステムを使用している他のシステムは何ですか?
  • 誰がこのシステムから情報を得ますか?
  • 誰がシステムに情報を提供しますか?
  • 現時点では何かが自動的に起こりますか?

ユースケースを特定する方法

ユースケースの識別、そしてシナリオベースの誘発プロセスは、各アクターが望む外部から見える観察可能な値を尋ねることによって続けられます。アクターが特定されたら、次の質問でユースケースを特定することができます(Schneider and Winters - 1998)。

  • アクターはシステムにどのような機能を求めますか?
  • システムは情報を保管していますか?この情報を作成、読み取り、更新、削除するのはどのアクターですか?
  • システムは内部状態の可能性についてアクターに通知する必要がありますか?
  • システムが知っておくべき外部イベントはありますか?どのようなアクターがそれらのイベントをシステムに通知しますか?

ユースケース図のヒント

さて、あなたのソフトウェアプロジェクトでユースケースを効果的に適用する方法を見るために以下のヒントをチェックしてください。

  • 常にアクターの観点からユースケース図を構築して整理します。
  • ユースケースは、シンプルで可能な限り最高の視野で始めるべきです。その時になって初めて彼らはさらに洗練され、詳細になることができます。
  • ユースケース図は機能に基づいているため、「方法」ではなく「内容」に焦点を当てる必要があります。

詳細のユースケースレベル

ユースケース粒度は、ユースケース仕様内で情報が編成される方法、およびある程度までは、それらが書き込まれる詳細レベルを指します。正しいレベルのユースケース粒度を達成することで、利害関係者と開発者間のコミュニケーションが容易になり、プロジェクト計画が改善されます。

Alastair Cockburnでの_効果的なユースケースの作成_では、海の観点から考えることによって、さまざまなレベルの目標レベルを視覚化する簡単な方法が得られます。

ユースケースのさまざまなレベルの詳細

ご了承ください:

  • ユースケース自体がすべての可能性についての詳細を掘り下げるかもしれませんが、ユースケース図はシステムのより高いレベルのビューのための青写真としてしばしば使用されます。
  • 必要でない場合は、より詳細な情報を使用して、より粗いレベルの粒度でユースケースを記述すると便利です。

私はあなたが今「ユースケース図とは何か」に答えることができてあなたのプロジェクトにユースケースを適用できることを願っています。他のUMLダイアグラム・タイプについてもっと知りたい場合は、UMLガイドの14 UMLダイアグラム・タイプの概要を確認してください。

UMLユースケース図を今すぐ作ろう

あなたはユースケース図とは何か、そしてユースケース図の描き方を学びました。あなた自身のユースケース図を描く時が来ました。無料のUMLソフトウェアであるVisual Paradigm Community Editionを入手し、無料のユースケース図ツールで独自のユースケース図を作成してください。それは使いやすく直感的です。

関連リンク

視覚的パラダイムオンライン

コメント

コメントフォーム
記事の評価
  • リセット
  • リセット