de_DEen_USes_ESfa_IRfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

PlantUMLユースケース図ガイド

導入

使用 ユースケース 図 提供する a 明確な 方法 to 記述する どのように ユーザー、 外部 システム、 および 他の アクター 相互作用する と a ソフトウェア システム。 彼らは 支援する チーム 定義する システム 範囲、 特定する 機能的 要件、 および 伝える 期待される 動作 実装が始まる前 実装 開始する。

PlantUML 作成する 使用する ケース モデリング 実用的な を通じて a テキストベースの 構文 それ できる される 保存され、 確認され、 バージョン管理され、 および 再生成される 併せて プロジェクト ドキュメント または ソース コード。 により a いくつかの コマンドで、 あなたは できる 定義する アクター、 使用 ケース、 システム 境界、 関連、 <<include>> 関係、 <<extend>> 関係、 一般化、 ノート、 および レイアウト 設定。

この ガイド 説明します の 主要な PlantUML 使用 ケース 表記法 示されている に の リファレンス シート および 示す どのように を 適用する それを において 現実的な 例で それ また 導入する 一つの より広範な ツール化 ワークフロー を使用して Visual パラダイム UML、 AI支援の モデリング、 および VPasCode。 これらは、 これらの ツール をサポートする 完全な プロセスを プロセス: 要件を 初期モデルに変換し、 UMLの関係を検証し、 洗練する 初期モデル 、 UML 関係を検証し、 洗練する プロセスを完了する the 図、 および 維持すること the 最終的な モデル として 読みやすい 図 ソース。

CustomerとAdministratorのアクターが、CheckoutやTrack Orderなどのシステム機能と対話するPlantUMLのユースケースモデルを示す図。UMLのユースケース図は、外部のユーザーまたはシステムがシステムとどのように相互作用するかを説明します。これは、システムがどのように実装されているかではなく、システムが何をするかに注目します。

PlantUMLを使用すると、シンプルなテキストベースの表記法を使ってユースケース図を作成できます。

1. 基本的なPlantUMLの構造

すべてのPlantUML図は、@startumlで始まり、@enduml.

コメントはアポストロフィで始まります:

複数行のコメントも使用できます:

2. エクターの定義

エクターは、システムとやり取りする人物、役割、組織、デバイス、または外部システムを表します。

基本的なエクター

これにより、名前が の棒人形エクターが作成されますUser.

別名付きエクター

表示名にスペースが含まれる場合や、関係のための短い識別子を希望する場合、別名は便利です。

その後、エイリアスを参照できます:

異なるビジュアルスタイルを使用するActor

PlantUMLは複数のActorスタイルをサポートしています。デフォルトのスタイルは通常十分ですが、アイコンスタイルのActorを使用することもできます:

平らな長方形スタイルのアクターも使用できます:

正確な外観は、PlantUMLのレンダリングエンジンとスキンパラメータに依存します。

3. ユースケースの定義

ユースケースは、システムが提供するサービス、目的、または機能を表します。

基本的なユースケース

PlantUMLはこれをラベル付きの楕円としてレンダリングしますログイン.

エイリアス付きのユースケース

表示されるラベルはクレジットカード支払いの処理一方でProcessPaymentは関係性で使用されます。

複数行のユースケース名

改行を挿入するには を使用できますn:

図に長いラベルが含まれている場合に便利です。

4. システム境界

システム境界は、特定のシステムに属するユースケースをグループ化します。

rectangle "オンラインショッピングシステム" {
    usecase "製品を閲覧" as Browse
    usecase "チェックアウト" as Checkout
}

長方形はシステムを表し、その中にあるユースケースはそのシステムが提供する機能を表します。

境界に対して名前付きエイリアスを使用することもできます:

rectangle "オンラインショッピングシステム" as OnlineStore {
    usecase "製品を閲覧" as Browse
    usecase "チェックアウト" as Checkout
}

システム境界は、システムの動作と外部のアクターおよびサービスを区別する際に役立ちます。

5. アクターとユースケースの接続

関連は、アクターがユースケースに参加しているか、それと相互作用していることを示します。

無向関連

これは矢印のない実線を作成します。

方向付き関連

これは、使用ケースを向いている矢印頭を持つ実線を作成します。

どちらの形式もよく使われます。矢印の方向は、強調したい通信または責任に応じて一貫して選択する必要があります。

ラベル付き関連

ラベルは相互作用を説明しています。

より読みやすいレイアウトにするには、より長い矢印を使用できます:

6. その<<include>>関係

あるinclude関係は、他のユースケースによって常に必要とされる振る舞いを表します常に必要とされる別のユースケースによって。

たとえば、注文を行うには常に支払いの検証が必要になる場合があります:

方向性は重要です:

基本ユースケース ..> 包含されるユースケース : <<include>>

矢印は、振る舞いを必要とするユースケースから、再利用可能な振る舞いを提供するユースケースへ向かいます。

例

usecase "チェックアウト" as Checkout
usecase "顧客情報の検証" as ValidateCustomer
usecase "注文合計の計算" as CalculateTotal
usecase "支払いの実行" as MakePayment

Checkout ..> ValidateCustomer : <<include>>
Checkout ..> CalculateTotal : <<include>>
Checkout ..> MakePayment : <<include>>

これは次のことを意味する:

  1. チェックアウトは常に顧客情報を検証する。

  2. チェックアウトは常に注文合計を計算する。

  3. チェックアウトは常に支払いを実行する。

使用する場合は<<include>>含まれる動作が必須または再利用可能である場合に使用する。

7. <<extend>>関係

あるextend関係は、基本のユースケースに追加されるオプション、条件付き、または例外的な動作を表します。

たとえば、割引を適用するのは、顧客が有効なクーポンを持っている場合に限られることがあります:

方向は:

オプションの拡張ユースケース ..> 基本ユースケース : <<extend>>

矢印はオプションの動作から基本ユースケースへ指向しています.

正しい例

usecase "Checkout" as Checkout
usecase "割引クーポン適用" as ApplyDiscount

ApplyDiscount ..> Checkout : <<extend>>

これは、それらが割引クーポンを適用をオプションで拡張するチェックアウトプロセス。

包含と拡張の比較

関係 目的 矢印の方向
<<包含>> 必須の再利用可能な振る舞い 基本のユースケース → 包含されるユースケース
<<拡張>> オプションまたは条件付きの振る舞い 拡張するユースケース → 基本のユースケース

例:

方向を逆にすると意味が変わるため、これらの関係を逆にしないでください。

8. ユースケースの一般化

一般化は、あるユースケースが別のユースケースの特殊化であることを示しています。

usecase "Search Products" as SearchProducts
usecase "Browse Products" as BrowseProducts

SearchProducts -|> BrowseProducts

空洞の三角形は、より一般的なユースケースを指しています。

これは、Search Productsは、Browse Products.

一般化は~よりも一般的ではありません含むおよび拡張するそのため、使用ケース間に本物の親子関係がある場合にのみ使用してください。

9. エクターの一般化

エクターは一般化関係を持つこともできます。

actor Customer
actor "プレミアムカスタマー" as PremiumCustomer

PremiumCustomer -|> Customer

これは、プレミアムカスタマーがカスタマーの特殊なタイプであり、一般的なエクターの相互作用を継承することを示しています。

たとえば:

10. ノートと注釈

ノートは図に説明や制約を追加します。

ユースケースに付随するノート

note right of キャッシュアウト
  カスタマーは有効な請求情報の提供が必要です。
end note

他の位置には以下が含まれます:

note left of キャッシュアウト
  カスタマー向けプロセス
end note

note top of キャッシュアウト
  主要なビジネスワークフロー
end note

note bottom of キャッシュアウト
  支払い処理を含む
end note

短いノート構文

別個のノート(エイリアス付き)

note "支払いは注文を確定する前に承認されなければならないn" as PaymentNote

破線でノートを要素に接続する:

制約のメモ

メモは条件を文書化するのに役立ちます:

note right of ApplyDiscount
  オプションの動作:
  有効なクーポンが提供された場合にのみ使用。
end note

11. レイアウトの方向

デフォルトでは、PlantUMLはレイアウトを自動的に選択します。方向に影響を与えることができます。

左から右へのレイアウト

これは、アクターが左に、外部システムが右に表示されるため、ユースケース図においてしばしば有用です。

上から下へのレイアウト

これは、コンパクトな図や垂直に整理されたワークフローにおいて有用です。

非表示のレイアウトリンク

非表示のリンクは、目に見える関係を表示せずに配置に影響を与えることができます:

これは図のレイアウトを改善するのに役立ちます。

12. 図のスタイル設定

影を削除

長方形のパッケージと境界を使用

色を設定

skinparam usecase {
    BackgroundColor #FDFDFD
    BorderColor #333333
}

skinparam actor {
    BorderColor #333333
}

矢印の色を設定

デフォルトのフォントサイズを設定

完全なスタイル設定セクションは次のようになります:

skinparam shadowing false
skinparam packageStyle rectangle
skinparam actorStyle awesome
skinparam defaultFontSize 14

skinparam usecase {
    BackgroundColor #F9FBFF
    BorderColor #234
}

skinparam ArrowColor #555555

13. パッケージとグループ化

パッケージは関連するユースケースをグループ化できます。

パッケージ "カスタマーフィーチャー" {
    ユースケース "アカウント登録" を Register として使用
    ユースケース "ログイン" を Login として使用
    ユースケース "製品を閲覧" を Browse として使用
}

パッケージ "管理機能" {
    ユースケース "製品を管理" を ManageProducts として使用
    ユースケース "売上レポートを生成" を SalesReport として使用
}

パッケージは、図に多くのユースケースが含まれる場合に役立ちます。

また、長方形をグループとして使用することもできます:

長方形 "注文管理" {
    ユースケース "注文を提出" を PlaceOrder として使用
    ユースケース "注文を追跡" を TrackOrder として使用
    ユースケース "注文をキャンセル" を CancelOrder として使用
}

14. 外部システム

外部アプリケーションやサービスは、アクターとして表現できます。

アクター "決済ゲートウェイ" を PaymentGateway として使用
アクター "メールサービス" を EmailService として使用
アクター "外部CRM" を CRM として使用

それらをシステムのユースケースに接続する:

これにより、システムの機能とシステム境界外のサービスが明確に分離される。

15. 完全な例

以下の例は、参考シートからの主要な表記を組み合わせたものである。

アクター、関係性、ノートを含むオンラインショッピングシステムのユースケース図を示す、完全なVPasCode PlantUMLの例。

@startuml
title オンラインショッピングシステム - ユースケース図

left to right direction

skinparam shadowing false
skinparam packageStyle rectangle
skinparam actorStyle awesome

skinparam usecase {
    BackgroundColor #F9FBFF
    BorderColor #333333
}

skinparam ArrowColor #555555

' キャラクタ
actor カスタマー as customer
actor "プレミアムカスタマー" as premium
actor 管理者 as admin
actor "決済ゲートウェイ" as payment
actor "メールサービス" as email

' キャラクタの一般化
premium -|> customer

' システム境界
rectangle "オンラインショッピングシステム" {

    ' カスタマーのユースケース
    usecase "アカウント登録" as Register
    usecase "ログイン" as Login
    usecase "製品を閲覧" as Browse
    usecase "製品を検索" as Search
    usecase "製品詳細を表示" as ViewProduct
    usecase "製品をカートに追加" as AddToCart
    usecase "ショッピングカートを表示" as ViewCart
    usecase "チェックアウト" as Checkout
    usecase "注文を確定" as PlaceOrder
    usecase "注文を追跡" as TrackOrder
    usecase "注文をキャンセル" as CancelOrder

    ' 共有されるincludeされた動作
    usecase "カスタマーデータの検証" as ValidateCustomer
    usecase "注文合計の計算" as CalculateTotal
    usecase "決済を実行" as MakePayment
    usecase "注文確認を送信" as SendConfirmation

    ' オプションの動作
    usecase "割引クーポンを適用" as ApplyDiscount
    usecase "返金を要求" as RequestRefund

    ' 管理のユースケース
    usecase "製品を管理" as ManageProducts
    usecase "売上レポートを生成" as SalesReport
}

' キャラクタの関連
customer --> Register
customer --> Login
customer --> Browse
customer --> Search
customer --> ViewProduct
customer --> AddToCart
customer --> ViewCart
customer --> Checkout
customer --> TrackOrder
customer --> CancelOrder

premium --> ApplyDiscount
premium --> RequestRefund

admin --> ManageProducts
admin --> SalesReport

payment --> MakePayment
email --> SendConfirmation

' include関係
Checkout ..> ValidateCustomer : <<include>>
Checkout ..> CalculateTotal : <<include>>
Checkout ..> PlaceOrder : <<include>>

PlaceOrder ..> MakePayment : <<include>>
PlaceOrder ..> SendConfirmation : <<include>>

' extend関係
ApplyDiscount ..> Checkout : <<extend>>
RequestRefund ..> CancelOrder : <<extend>>

' ユースケースの一般化
Search -|> Browse

' ノート
note right of Checkout
    カスタマーの主要な購入プロセス
end note

note right of ApplyDiscount
    オプションの動作:
    有効なクーポンが利用可能な場合にのみ使用
end note

note bottom of MakePayment
    決済は
    外部の決済ゲートウェイが処理
end note

@enduml

オンラインショッピングシステムのPlantUMLユースケース図。Customer、Administrator、Payment Gatewayのアクターがシステム機能と対話している様子を示す。

16. 完全な例の読み方

図は以下の情報を伝達しています:

  • 顧客製品を閲覧し、カートに製品を追加し、チェックアウトできます。

  • プレミアム顧客は、以下の専門的な形態です顧客.

  • チェックアウト常に顧客の検証、合計計算、注文の処理を含みます。

  • 注文を確定する常に支払いと確認を含みます。

  • 割引クーポンを適用するオプションであり、チェックアウトを拡張します。

  • 返金を依頼するキャンセルのオプション拡張です。

  • 決済ゲートウェイは決済処理を担当します。

  • メールサービスは注文確認を送信します。

  • 管理者は製品を管理し、レポートを生成します。

17. 一般的なミス

逆転する含む

誤り:

正しい:

基本のユースケースは、必要な含む動作を指しています。

逆転拡張

不正な:

正しい:

オプションの拡張ユースケースは、基本のユースケースを指しています。

使用する include オプションの動作に使用

ある行動が特定の条件下でのみ発生する場合、使用してください<<extend>>:

常に発生する場合は、使用してください<<include>>:

外部のアクターをシステム境界内に配置する

外部のユーザーおよびサービスは通常、長方形の外に配置されるべきである:

actor Customer

rectangle "ショッピングシステム" {
    usecase "チェックアウト" as Checkout
}

Customer --> Checkout

詳細すぎるユースケースの作成

ユースケースは、次のような意味のあるユーザーの目標を記述すべきである:

再利用される、オプションである、またはモデルにとって重要でない限り、すべての小さな実装ステップを個別のユースケースにしないようにする。

18. 最小限の実用的なテンプレート

より小さい図の場合は、このテンプレートを使用してください:

アクター、システム境界、関係性を含む最小限のユースケース図を生成するPlantUMLコードを表示するVPasCodeインターフェース。

@startuml

左から右への方向

actor ユーザー

rectangle "私のシステム" {
    usecase "メインユーザーゴール" as MainGoal
    usecase "必須の共有動作" as SharedBehavior
    usecase "オプションの動作" as OptionalBehavior
}

ユーザー --> MainGoal

MainGoal ..> SharedBehavior : <<include>>
OptionalBehavior ..> MainGoal : <<extend>>

note right of MainGoal
    メインシステム機能
end note

@enduml

ユーザー、システム境界、およびextend、include、ノートなどの関係性を示す最小限のPlantUMLユースケーステンプレート。

このテンプレートには必須の記法が含まれています:

  • アクター

  • システム境界

  • ユースケース

  • 関連

  • include

  • extend

  • 注記

  • レイアウト方向

ツール:Visual Paradigm UML、AI、およびVPasCode

PlantUMLはテキストとして図を作成するのに最適ですが、視覚的なモデリングツールを使うと、同じワークフローをより簡単にレビュー・精査・共有できます。Visual Paradigmは、AI支援モデリングとテキストベースのVPasCodeワークスペースを併せ持つUMLモデリング機能を提供しています。そのプラットフォームは、ユースケース図、クラス図、シーケンス図、アクティビティ図、コンポーネント図、デプロイメント図、ステートマシン図、パッケージ図、オブジェクト図を含む、標準的なUML図をサポートしています。

Visual Paradigm UMLモデリング

Visual Paradigmは、すべての構文を手動で記述するのではなく、視覚的にユースケース図を構築したい場合に使用できます。一般的なワークフローは次の通りです:

  1. UMLプロジェクトを作成します。

  2. ユースケース図を追加します。

  3. キャンバス上にエイクターとユースケースを配置します。

  4. システム境界を描画します。

  5. エイクターをユースケースに接続します。

  6. 追加:include, extend、および一般化関係。

  7. 注記と制約を追加します。

  8. 完成した図を配置してエクスポートします。

視覚的モデリングは、ステークホルダーが図をインタラクティブにレビューする必要がある場合に特に有用です。チームメンバーは記号を検査し、特定の要素について議論し、図を共同で注釈することができます。

手動で作成されたユースケース図には、次のものが含まれる可能性があります:

  • 次のエイクターなど:顧客, 管理者、および決済ゲートウェイ

  • システム境界、たとえば オンラインショッピングシステム

  • 使用事例、たとえば チェックアウト, 注文を確定する、および 注文を追跡する

  • <<include>> 必須の再利用可能な振る舞いのための関係

  • <<extend>> オプションの振る舞いのための関係

  • 特殊化されたアクターまたは使用事例のための一般化関係

視覚モデルはPlantUMLで使用されている同じ意味規則を保持するべきである:

チェックアウト ..> 支払いの検証 : <<include>>
割引の適用 ..> チェックアウト : <<extend>>
プレミアム顧客 -|> 顧客

重要な違いは、ツールを変更してもUMLの意味が変わらないということである。図が手書きで作成された場合でも、AIによって生成された場合でも、PlantUMLで記述された場合でも、関係の方向性は正しいまま保たれるべきである。

AI支援モデリング

Visual ParadigmのAI機能は、自然言語による要件をモデル要素や図に変換するのを支援できる。このプラットフォームは、AI機能が要件を図に変換し、テキスト記述からソフトウェア開発アーティファクトを生成できることを特徴としている。

たとえば、以下の要件を提示できる:

オンラインショッピングシステムのユースケース図を作成してください。

アクター:
- 顧客
- プレミアム顧客
- 管理者
- 支払いゲートウェイ
- メールサービス

顧客は登録、ログイン、製品の閲覧、カートへの製品追加、チェックアウト、注文の追跡、注文のキャンセルができます。

チェックアウトには顧客の検証、合計金額の計算、支払い、注文の確認が含まれます。

割引クーポンの適用は任意であり、チェックアウトを拡張します。
プレミアム顧客は顧客の特殊なタイプです。

AI支援ツールは、この記述をもとに次のような提案を行う可能性があります:

  • アクターの定義

  • ユースケース名

  • システム境界

  • 関連

  • 含まれるユースケース

  • 拡張されたユースケース

  • アクターの一般化

  • ビジネスルールを説明するメモ

AIは最初のモデル作成段階で最も有用です。要件から迅速にドラフトを生成し、候補となるアクターを特定し、再利用可能な振る舞いを提案できます。生成されたモデルは、開発者、アナリスト、またはドメイン専門家によって確認されるべきです。

推奨されるAIレビューのチェックリスト

図を生成した後は、次を確認してください:

  • 各アクターはシステム境界の外側にあります。

  • すべてのユースケースは意味のあるユーザーの目的またはシステムサービスを記述しています。

  • 必須の再利用可能な振る舞いは、使用します<<include>>.

  • オプションまたは条件付きの振る舞いは、使用します<<extend>>.

  • The include 矢印は基本のユースケースから含まれるユースケースへ指向しています。

  • The extend 矢印は拡張ユースケースから基本のユースケースへ指向しています。

  • 一般化の矢印はより一般的なアクターまたはユースケースを向いています。

  • 重複しているか、詳細がやりすぎたユースケースは削除されました。

  • 名前は一貫して動詞句として表現されています。

  • この図はシステムの範囲を明確に伝えています。

VPasCode:テキストによるモデリング

VPasCodeはVisual Paradigmエコシステム内にテキストから図へのワークスペースを提供します。公式プラットフォームでは、自由なテキストから図へのオンラインエディタとして説明されており、コードを図に変換する方法としても紹介されています。

これにより、図をコードとして扱う精度と再現性を好むユーザーが、視覚的なモデリング環境の中で作業を続けながらも、VPasCodeを活用できるようになります。

PlantUMLのユースケース図は次のように記述できます:

オンラインショッピングシステムの生成されたユースケース図と併せて、PlantUMLテキストエディタを表示するVPasCodeインターフェース。

@startuml
title オンラインショッピングシステム

left to right direction

actor 顧客 as customer
actor "プレミアム顧客" as premium
actor 管理者 as admin
actor "決済ゲートウェイ" as payment
actor "メールサービス" as email

premium -|> customer

rectangle "オンラインショッピングシステム" {
    usecase "アカウント登録" as Register
    usecase "ログイン" as Login
    usecase "製品を閲覧" as Browse
    usecase "チェックアウト" as Checkout
    usecase "注文を確定" as PlaceOrder
    usecase "注文を追跡" as TrackOrder
    usecase "注文をキャンセル" as CancelOrder

    usecase "顧客情報の検証" as ValidateCustomer
    usecase "注文合計の計算" as CalculateTotal
    usecase "支払いを行う" as MakePayment
    usecase "注文確認を送信" as SendConfirmation

    usecase "割引クーポンを適用" as ApplyDiscount
    usecase "返金を要求" as RequestRefund

    usecase "製品を管理" as ManageProducts
}

customer --> Register
customer --> Login
customer --> Browse
customer --> Checkout
customer --> TrackOrder
customer --> CancelOrder

premium --> ApplyDiscount
premium --> RequestRefund

admin --> ManageProducts
payment --> MakePayment
email --> SendConfirmation

Checkout ..> ValidateCustomer : <<include>>
Checkout ..> CalculateTotal : <<include>>
Checkout ..> PlaceOrder : <<include>>

PlaceOrder ..> MakePayment : <<include>>
PlaceOrder ..> SendConfirmation : <<include>>

ApplyDiscount ..> Checkout : <<extend>>
RequestRefund ..> CancelOrder : <<extend>>

@enduml

オンラインショッピングシステムのPlantUMLユースケース図。Customer、Administrator、Payment Gatewayなどのアクターがシステム機能と対話している様子を示す。

同じモデルは複数の方法で詳細化できる:

  • 以下でレイアウト方向を変更する:左から右への方向.

  • ビジネスルールを説明するためにノートを追加する。

  • ユースケースをパッケージにグループ化する。

  • 以下でスタイルを追加する:skinparam.

  • 表示ラベルを変更せずにエイリアスをリネームする。

  • 図のソースをバージョン管理下に保つ。

  • モデルが変更されたら、図を再生成する。

可視化モデリングと図としてのコードの比較

アプローチ 最も適している分野 主な利点 主な制限
Visual Paradigm UML インタラクティブなモデリングとステークホルダー向けワークショップ 直接操作と視覚的レビュー 変更はテキストとして比較しにくくなる可能性がある
AI支援型モデリング 要件からモデルを起草する 候補要素を素早く特定する 生成された関係性は検証が必要
VPasCode と PlantUML 繰り返し可能でテキストベースのモデリング バージョン管理、レビュー、再生成が容易 構文に精通している必要がある
統合されたワークフロー プロフェッショナルな分析と開発 スピード、正確性、共同作業を統合する 表現間の整合性を確認する必要がある

実用的な統合ワークフロー

生産的なワークフローは、各ツールをその得意分野のタスクに使用することである:

  1. 自然言語で要件を記録する。
    ユーザー、目的、システム範囲、ビジネスルールを記述する。

  2. AIを活用して初期モデルを作成する。
    AIにエイクターとユースケースを特定させ、最初のドラフトを作成させる。

  3. Visual Paradigm UMLでドラフトを確認する。
    モデルがドメインを正確に反映しているか、図が理解しやすいかを確認する。

  4. モデルをPlantUMLにエクスポートするか、書き直す。
    エイリアス、一貫した名前、明確な関係構文を使用する。

  5. ソースをVPasCodeまたはバージョン管理に維持する。
    保存する .puml ファイルをプロジェクトのドキュメントまたはソースコードと一緒に保存する。

  6. UMLの意味を検証する。
    特に注意を払うべき点: include, extend、および一般化の方向。

  7. 最終的な図を公開する。
    要件、アーキテクチャ、設計レビュー、プロジェクトドキュメント用に、画像または文書としてエクスポートする。

PlantUMLのユースケース図を生成するためのプロンプト

以下のプロンプトは、AIモデリングアシスタントと併用できる。

オンラインショッピングシステムの生成されたPlantUMLユースケース図を表示するチャットボットインターフェース。CustomerとAdministratorのアクターを含む。

オンラインショッピングシステム用のPlantUMLユースケース図を生成する。

左から右へのレイアウトを使用し、すべてのシステムユースケースを「オンラインショッピングシステム」という名前の矩形内に配置する。

エイクター:
- カスタマー
- プレミアムカスタマー
- 管理者
- 支払いゲートウェイ
- メールサービス

カスタマーのユースケース:
- アカウント登録
- ログイン
- 商品を閲覧する
- 商品をカートに追加する
- クレジットカード決済
- 注文を追跡する
- 注文をキャンセルする

クレジットカード決済には以下を含める必要がある:
- カスタマーデータの検証
- 注文合計の計算
- 注文を確定する

注文を確定するには以下を含める必要がある:
- 支払いを行う
- 注文確認メールを送信する

オプションの動作:
- 割引クーポンを適用する:クレジットカード決済を拡張する
- 返金を依頼する:注文をキャンセルするを拡張する

プレミアムカスタマーはカスタマーの特殊化である。

標準のPlantUML構文を使用し、以下の要素を含める:
- エイクターのエイリアス
- ユースケースのエイリアス
- システム境界
- エイクターの関連
- <<include>>関係
- <<extend>>関係
- エイクターの一般化
- 1つ以上の説明ノート

include矢印は、基本ユースケースから含まれるユースケースへ向かうようにし、
extend矢印は、オプションの拡張ユースケースから基本ユースケースへ向かうようにする。

オンラインショッピングシステムのユースケース図のPlantUMLコードとその視覚的表現を併せて表示するVPasCodeインターフェース。

オンラインショッピングシステムのPlantUMLユースケース図。Customer、Administrator、Premium CustomerのアクターがCheckoutやPlace Orderなどのシステム機能と対話している様子を示す。

主なポイント

Visual Paradigm UMLはインタラクティブなモデリングとレビューに適しており、AIは要件から初版への移行を加速できます。また、VPasCodeとPlantUMLを組み合わせることで、繰り返し可能なテキストベースのワークフローを提供します。これらを併用することで、要件の記述、ドラフトの生成、UMLの検証、ソースの精緻化、保守可能な図の公開に至るまで、モデリングライフサイクル全体をサポートします。