[コース全体のソリューション] - UML ソフトウェア モデリング設計

ソフトウェアモデリング

目的: UML9 種類の図は、実現したいソフトウェア システムの機能、アーキテクチャ、および関係を記述します。

UML9図

  1. ユースケース図 (静的図 - アクターが所有する機能)
  2. クラス図 (静的図 - オブジェクト指向クラス関数設計 (JAVA 継承、カプセル化、ポリモーフィズム))
  3. シーケンス図 (動的図 - タイムラプスメッセージ送信)
  4. オブジェクト グラフ (静的グラフ - オブジェクトとオブジェクト間の関係 (オブジェクトはクラスのインスタンス))
  5. コンポーネント図 (静的図 - ソフトウェア モジュールまたは物理構造間のリンク)
  6. 配置図 (静的図 - 物理ハードウェア配置関係 (ネットワーク トポロジ))
  7. アクティビティ図 (動的図 - イベントが発生するプロセス)
  8. 状態図 (動的図 - オブジェクトの状態切り替えプロセス)
  9. コラボレーション図 (動的図 - タイム ラプス メッセージング)

4. 状態図 - 動的図

役割: オブジェクトの考えられるすべての状態と、それらの間で切り替わる状態間の関係を説明します。

[外部リンク画像の転送に失敗しました。ソース サイトには盗難防止リンク メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-BMazEgJU-1678712787632)(../note picture/image-20230313190916677.png) 】

5. アクティビティ図(アクティビティ図) - 動的図

役割: ユースケース間の関係をユースケース図の形で説明する

[外部リンク画像の転送に失敗しました。ソース サイトには盗難防止リンク メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-0Wm1JhyP-1678712787633)(../note picture/image-20230313191252867.png) 】

6. シーケンス図 - 動的図

役割: 参加者 (役割) とシステム オブジェクト間の秩序ある対話のプロセスの説明。オブジェクト間でメッセージがどのように送受信されるかを強調します。

[外部リンク画像の転送に失敗しました。ソース サイトには盗難防止リンク メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-I9oWa2BV-1678712787633)(../note picture/image-20230313191544344.png) 】

7. 通信図 - 動的図

機能: シーケンス図と同様に、オブジェクト間の動的なコラボレーション関係、クラス図とシーケンス図の集合を記述するために使用され、オブジェクトとオブジェクト間の通信プロセスの記述に重点を置いています。

[外部リンク画像の転送に失敗しました。ソース サイトにはリーチ防止メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-vV9ydLWU-1678712787633)(../note picture/image-20230313191813233.png)]

8. コンポーネント図 - 静的モデル

コンポーネント図

機能: コード構造を説明する図、さまざまなコードコンポーネント間の接続を説明する図

[外部リンク画像の転送に失敗しました。ソース サイトにはリーチ防止メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-RA9XO1KN-1678712787634)(../note picture/image-20230313192154655.png)]

9. 展開図 - 静的モデル

役割: コンピュータ機器やそれらの接続方法など、システムの物理的な展開プロセスを説明します。

[外部リンク画像の転送に失敗しました。ソース サイトには盗難防止リンク メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-Qa5SJ0Nm-1678712787634)(../note picture/image-20230313192410953.png) ]

ソフトウェア開発プロセス

ソフトウェア エンジニアリングの概要 - ソフトウェア開発プロセス

1. ソフトウェアプロセス

高品質のソフトウェアで完了する必要がある一連のタスクのフレームワークを取得するために、各作業のステップをより適切に完了する方法を規定します。

1. ウォーターフォール モデル (線形モデル) - 主流

特徴:

ステージ間には順序と依存関係があります

アドバンテージ:

開発者に標準化された実装方法の使用を強制できる; 各段階で作成する必要があるドキュメントを厳密に規定する

要件分析—「概要設計—」詳細設計—「コーディングフェーズ—」テストフェーズ

1.需要分析:(出力結果:需要分析マニュアル)

顧客ニーズを理解し、具体的な機能や実装内容を削除できる

2. 概略設計:(出力結果:技術設計計画、概略設計実施計画-どのような技術を用いてどのような機能を実現するのか)

既存のテクノロジーを組み合わせてビジネスニーズをどのように実現すべきかを分析する

  1. 詳細設計:(出力結果:ユーザーインターフェース設計(UI)、UMLエンジニアリングドキュメント、データベース設計SQLコード)

    プロトタイプ設計図(ユーザー操作インターフェース)、ユーザー操作プロセス(UML設計シーケンス図)、オブジェクト指向設計(UMLクラス図、オブジェクト図、コラボレーション図)、データベース設計(PowerDesigner)

  2. コーディングフェーズ:(コード、パッケージソフトウェア)

    分業、モジュール分割、企画

  3. テスト(ネットワークアクセスセキュリティ証明、テストケース出力ドキュメント)

    ブラック ボックス テスト、ホワイト ボックス テスト (ストレス、ネットワーク セキュリティなど)

2. ラピッドプロトタイピングモデル

プロトタイプインターフェイスでソフトウェア開発を推進

機能が単純で開発量が少ない一部のソフトウェアシステムに適用可能

3. 増分モデル - エンタープライズ開発の主流

各プロジェクトは増分であり、新しい設計から以前のプロセスを覆す必要はありません

4. スパイラルデザイン、噴水モデル (XXXXX)

UML設計用ツール

MS ヴィジオ

ここに画像の説明を挿入

オンラインツール(無料)

https://boardmix.cn/

https://app.diagrams.net

1. ユースケース図

効果:

システム内のユースケースとアクターの関係を表す図

システム内の関連ユーザーと、システムによってさまざまなユーザーに提供される機能とサービスについて説明します。

1. 要素

1. 役割(参加者)

は、システムのサブジェクトと対話する外部エンティティ単位であり、システムと外部で対話する 1 人またはユーザーのグループ、または物体を表します。

[外部リンク画像の転送に失敗しました。ソース サイトには盗難防止リンク メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-kJRShNlH-1678712787635)(../note picture/image-20230313202307558.png) ]

2. ユースケース:(関数、モジュール)

ロールやモノ(一連の操作の集合)からアクセスできる機能内容を記述します

[外部リンク画像の転送に失敗しました。ソース サイトには盗難防止リンク メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-UalZ58zR-1678712787636)(../note picture/image-20230313202423054.png) 】

2. 連絡方法

1. 役割間の一般化関係:

一般化は抽象的な概念を表し、方法を指します: 具体的なものを指す -> 抽象的なものを一般化、一般化のためのより体系的な設計

[外部リンク画像の転送に失敗しました。ソース サイトには盗難防止リンク メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-Q1cyDTCA-1678712787636)(../note picture/image-20230313202707766.png) ]

依存関係 - 含まれるもの

は、ユースケースの設計に含める必要がある関数です。インクルードの説明を使用して、メソッド A 関数インクルード— <<incloud >> --> B 関数を指定します。

[外部リンク画像の転送に失敗しました。ソース サイトには盗難防止リンク メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-75oE97Me-1678712787636)(../note picture/image-20230313203529632.png) ]

依存関係 - 拡張機能

ユースケースの拡張と機能の動作の強化です 必要な機能に加えて追加される機能は拡張機能を使用する必要があります

[外部リンク画像の転送に失敗しました。ソース サイトには盗難防止リンク メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-ZTN2I2H1-1678712787637)(../note picture/image-20230313204201636.png) 】

ユースケースの一般化

ロールと同様に、具体的なユースケースと抽象的なユースケースを結び付け、継承の概念を実現します。具体的なユースケースは、親クラスのユースケースに基づいて修正されます

[外部リンク画像の転送に失敗しました。ソース サイトにはリーチ防止メカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-vNQ2ZlUs-1678712787637)(../note picture/image-20230313204427540.png)]

3. ケース

エンタープライズ管理システムの機能を説明する。

全従業員に打刻と計画の確認機能があり、

しかし、マネージャーには従業員情報を管理し、計画をカスタマイズする機能があります。

Boss には従業員とマネージャーのすべての機能があります

トピックを改善します。

前のトピックに基づいて、従業員にはプラン機能のプランを表示する権限のみが与えられます。

しかし、管理者は機能の追加、変更、削除を計画しています。

上司は、他のシステムから計画をインポートできるように要求しました

要件に従って設計する
ここに画像の説明を挿入

4. ユースケース図の説明

ユースケース図を描いた後は、ユースケースを読んだ開発者がイベントプロセスの説明をより明確に理解できるように、ユースケースを説明する必要があります。

ユースケース図に記述する必要がある内容:
1.ユースケース名: ユースケース図の意味や目的を記述します。通常は動詞または目的語句です。
2.ユースケース番号: 複数の用途の迅速なインデックス検索を実現します。ケース図
3.参加者: 参加する役割は何ですか?
4.ユースケースの説明: 誰がどのシステムにいて、何ができるかをまとめた簡単な文
5.トリガー: ユースケースをトリガーするためのタイミングノードの説明
6.前提条件: ユースケースの説明ユースケースが実行される前のシステム状態のプロセス
7.基本イベント フロー: 通常のユース ケースのアクティビティを時間プロセスの形で明確に記述します
8.拡張イベント フロー: 一般に、基本イベント フロー内のエラーまたはビジネス例外のプロセスを記述します
9 .結論: ユースケースの終了時
10.データ要件: ユースケース中にいくつか存在する データのやりとり
11.ビジネス制約: ビジネス上の制約を説明します

ケース内のユースケースの説明

キーワード 説明値
ユースケース名 企業従業員運行管理システム
ユースケース番号 CXK001
参加者 従業員、マネージャー、上司
ユースケースの説明 参加者3人のシステム機能権限の説明を記載
引き金 参加者はログインして管理システムを使用します
前提条件 参加者はシステムにログインする必要があります
基本的なイベントの流れ 1. 従業員がシステムにログインし、現在設定されている計画内容を確認・閲覧できる
2. 管理者がシステムにログインして、従業員の情報や計画を管理・配布できる
3. 上司が全従業員情報を閲覧・管理できるすべての従業員情報を管理できます。カスタマイズまたは表示を計画します。
拡張イベントストリーム 1. 従業員がシステムにログインしましたが、権限不足のため該当する業務機能を操作できず、ログインページに戻りました。
結論は 従業員がシステムにログインすると、プランやチェックイン機能の運用と従業員情報の管理が完了し、ユースケースが完了します
データ要件 1. 従業員情報 2. パンチ記録 3. 計画情報
ビジネス上の制約 異なる役割が異なる機能で動作します

2. タイミング図(シーケンス図)

1. シーケンス図とは

シーケンス図 (シーケンス図) は、シーケンス図とも呼ばれ、
オブジェクト間で送信される情報の時系列を記述し、複数のオブジェクト間の動的な連携関係を表示します。

2. 要素

コンテンツの 5 つの要素:

  1. 役割 (参加者-アクター)
  2. 物体
  3. ライフライン
  4. コントロールフォーカス(アクティベーション)
  5. メッセージ

1. 役割

役割: 小さな人のアイコンで表され、人やシステムなどを説明でき、通常はタイミング図のトリガーの開始点として使用されます。

ここに画像の説明を挿入

2. オブジェクト

オブジェクト図はタイミング図の上部にあり、長方形のボックスで表されます。

ここに画像の説明を挿入
UML 設計には、次の 3 種類のオブジェクト記述コンテンツがあります。

1. オブジェクト名とクラス名

記述方法: オブジェクト名: クラス名は、
特定のオブジェクト間の呼び出し関係を記述することで、クラスとクラス間の関係を反映し、クラス図を関連付けることができます。

ここに画像の説明を挿入

2. クラス名

記述方法: クラス名は、
クラス間の呼び出しプロセスの関係を強調するだけであり、モノのクラス間に含まれる呼び出し調整プロセスを説明します。

ここに画像の説明を挿入

3. オブジェクト名

記述方法:
特定のオブジェクト間の呼び出し調整関係を強調するオブジェクト名

ここに画像の説明を挿入

3. ライフライン

各オブジェクトの四角枠の下には点線が引かれており、点線はオブジェクトの時間ライフラインを表し、上から下に向かう線は過去から未来までの時間を表します。

ここに画像の説明を挿入

4. フォーカスの制御

タイムライン上で何が起こっているか、または各オブジェクトが相互作用するときに一定時間内に実行される操作は、長い長方形で表されます。

ここに画像の説明を挿入

5. メッセージ

オブジェクト間で送信されるメッセージ

メッセージには次の 3 種類があります。

1. 同期メッセージ

描画方法: 実線 + 実線の矢印
送信オブジェクトは受信者にメッセージを送信し、受信者は送信者に応答 (返信) を返さなければなりません。そうしないと、送信者は永遠に待機することになります。 注: オブジェクトが待機する必要がある同期プロセスが表示されます
。続行するには結果を返す別のオブジェクト

ここに画像の説明を挿入

2. 非同期メッセージ

描画方法: Realize + 大なり記号の矢印
メッセージの送信者はメッセージを送信した後、独自のアクティビティを実行し続けます

ここに画像の説明を挿入

3. 返信メッセージ

描画方法:点線+小なり矢印 リターン
メッセージは手続き呼び出しからのリターンを示します

ここに画像の説明を挿入

4. 自己関連付けメッセージ

描画方法:同期・非同期で描画し、自分でメッセージを送受信する
通話中に自分のオブジェクトにメッセージを送信する機能が現れた場合、自己関連付け記述が使用可能

ここに画像の説明を挿入

3. フラグメントの結合

複合フラグメントは、対話型実行の条件とモードに対処するために使用され、シーケンス図で論理コンポーネントを直接表現できるようにします。また、コンポジット フラグメントのアプリケーション領域を指定することで、ライフラインの任意の部分に特別な条件とサブプロセスを定義するために使用されます。条件またはサブプロセス。
結合フラグメントは 13 種類あります。

タイプ 名前 説明する
(学ばなければなりません)選択する オプション 発生する可能性も発生しない可能性もあるシーケンスが含まれています
(学習する必要があります)Alt 選択する フラグメントのリストが含まれます。これらのリストには代替情報シーケンスが含まれます。どのシナリオでもシーケンスのうち 1 つだけが発生できます。最初のフラグメント Alt と else フラグメントは連携します。クリティカル ポイントは式の結果が変わるときに式を記述する必要があります。操作する対応するシーケンスを選択します
(学習しなければならない)ループ サイクル フラグメントは一定回数繰り返され、クリティカルポイントで繰り返し条件を記述することができます。Loop フラグメントには Min 属性と Max 属性が必要です。この 2 つの属性が記述されていない場合、無限ループになります。
(学ばなければならない)パー 平行 並列処理、複数のイベントフラグメントをインターリーブ可能

チョイス
ここに画像の説明を挿入
パラレル
ここに画像の説明を挿入

3. クラス図(オブジェクト指向設計)

役割: クラス間の静的な関係ビューを表します。クラス図はプログラミング モデル図です。

クラス構成

クラス名、属性 (フィールド)、および動作 (メソッド)

クラス図の修飾子

4 つのアクセス修飾子

public (パブリック) 全員に表示: クラス図で「+」を使用
private (プライベート) 自分だけが表示: クラス図で「-」を使用
protected (保護) 自分とサブクラス: クラス図で使用 "#"
デフォルト(デフォルト) アクセス修飾子を使用しません。「~」を使用するか、クラス図に記述しません。

属性フィールドのタイプ

文字型:
(1) String:文字列
(2) char:文字
数値型:
(1) int:整数型
(2) double:浮動小数点型(10進型)
その他:
(1) Date:日付
(2) Boolean 値: ブール値
(3) オブジェクトの種類: オブジェクト
(4) 配列コレクション: 配列

ここに画像の説明を挿入

メソッドの説明

方法はあります

例: 食べることの説明:誰かに食べ物を与える行為には
+eat(food)を使用できます。

パラメータなしメソッド


例: 実行は、外部条件+ run()なしで完了できる動作です。

戻り値のあるメソッド

例: 2 つの数値の合計を計算すると結果が得られ、その結果は計算プロセスを通じて返されたデータです。

  • sum(num1:int,num2:int) : int
    修飾子メソッド名(パラメータリスト): 戻り値の型

戻り値のないメソッド

戻り値のないメソッドの場合、処理を中心に動作を記述し結果はありません
例:歩く
+走るの動作を記述する(): void
修飾子メソッド名(パラメータリスト): void

クラス間の関係

6 つの関係があります。

  1. 関連性: 実線
  2. 集約: ひし形中空実線矢印
  3. 組み合わせ:ひし形実線矢印
  4. 継承: 三角中空実線矢印
  5. 実装: 三角形の中空点線矢印
  6. 依存関係: 小さな点線の矢印

ここに画像の説明を挿入

1.協会

一方向の関連付け: A のみが B に関連付けられている場合、B は関連付けられません
双方向の関連付け: AB は相互に関連付けられます

双方向関連付けの場合
ここに画像の説明を挿入
:ドライバーはレンタカーを借りることができ、車はレンタルを待っています。2 つのカテゴリは双方向関連付けです。実線の両側に 1 を書き込みます。ペンギンのため変更されます。これは 1 です。

ここに画像の説明を挿入

2. 依存関係

説明: 1 つのクラスの変更が別のクラスに影響する場合、2 つのクラスの間に依存関係があります。一般に、依存関係は一方向です。依存関係が双方向の場合は、関連関係の説明の使用を検討してください。

事例:車はガソリンに依存するが、ガソリンは車の外観に依存しない
ここに画像の説明を挿入

3. 集計

記述内容は: 変更可能なグループ
記述とは全体と部分の関係であり、エンティティが別のエンティティに集約されると、そのエンティティは別のエンティティの一部になることもあります。
中空ひし形+実線矢印
ここに画像の説明を挿入

4. 組み合わせ

説明: マルチグループ 1 は
全体と部分の間の関係も記述します。組み合わせは集約よりも厳密です。エンティティが別のエンティティに結合されるとき、2 つは同じライフ サイクルを持ちます。

ここに画像の説明を挿入

5. 継承の一般化

抽象的なものを連続的に可視化する記述過程を表し、継承と同じ概念
ここに画像の説明を挿入

6. インターフェースの実現(Realization)

インターフェイスとは:
独自の動作のみを記述し、クラスに実装させます。
ここに画像の説明を挿入
クラスはパブリック インターフェイス メソッドの動作を実装し、クラスごとに異なる動作効果が現れます。
ここに画像の説明を挿入

4. 状態図

概要:
状態図 (状態図) は、
ライフ サイクルにおける特定のオブジェクトのさまざまな状態と、状態間を切り替える遷移プロセスを記述するために使用されます。
注: 状態図を説明するときは、説明する状態の特定のオブジェクトが誰であるかを明確にする必要があります。
ここに画像の説明を挿入

役割:
1. 状態遷移の関係と順序を明確に記述する
2. ビジネスコール処理のロジックを理解し、順序と状態遷移の因果関係を知る
3. 状態遷移時に必要な動作内容を明確に理解する

1. 共通要素

1.1 初期状態(円または白丸)

ここに画像の説明を挿入
すべてのビジネスにはトリガーポイントがあり、トリガーポイントは 1 つだけであるため、これは必須です。

1.2 終了状態 (実線の円と中空の外輪)

ここに画像の説明を挿入
必須ではありませんが、状態図には複数の最終状態が含まれる場合があります
。例: 注文が破棄される場合や、支払いが完了する場合があります。
ここに画像の説明を挿入

1.3 ステータスボックス

オブジェクトのライフサイクルにおける特定の状態または状況を指し、その状態はオブジェクトによって実行される一連のアクティビティの結果です。
ここに画像の説明を挿入

1.4 状態遷移(実線三角矢印の説明)

ある状態と別の状態のつながり、遷移のイベント表現を遷移上で表現する(動作プロセス記述)
ここに画像の説明を挿入

2. 状態図にターミネータ分類があるかどうか

1. 終了状態なし

ここに画像の説明を挿入

2. 終了状態です

ここに画像の説明を挿入
状態図のケース: Zhang San が ATM 機でお金を引き出すプロセス (観察視点: ATM 機)
ここに画像の説明を挿入

5. アクティビティ図

はじめに
アクティビティ図 (アクティビティ図) は、システムの動的な動作をモデル化する別の種類のグラフィックです。アクティビティの動作のシーケンスを記述し、あるアクティビティから別のアクティビティへの制御フローを示します。アクティビティ図自体は、一種のフローチャートです。

b

ここに画像の説明を挿入

1. 共通要素

1.1 アクションステータス


アクション状態は通常、アクティビティ図で再度分割することができないアトミックな操作であり、中断できないアクション動作です。アクション動作は、別の動作描画メソッドに変換されます。角丸四角形は、アクション状態の特性を示し
ます
ここに画像の説明を挿入

  • 1. アクションの状態はアトミックです
  • 2. アクション状態の時間が非常に短い
  • 3. 開始状態と終了状態が必要です
  • 4. 矢印が指している限り、in および out アクションはありません。

1.2 初期ノード

白丸はビジネスの開始点を示しており、初期状態は 1 つだけです。
ここに画像の説明を挿入

1.3 エンドポイント

ビジネス プロセスの終了を表す中空のリングには、1 つ以上のリングを含めることができます。
ここに画像の説明を挿入

1.4 判断と併合

(1) 判断プロセス
判断に基づいて意思決定を行い、判断に基づいてさまざまな処理を実行します。
ここに画像の説明を挿入
(2) プロセスのマージ
2 つ以上のプロセスがノードを指し、ノードが終端ノードまたは他の動作ノードを指します。
ここに画像の説明を挿入

1.5 フォークと結合

(1) フォークとは、
トランザクションを完了するためにプロセスが複数の並列サブブランチに分割されることを意味します。
ここに画像の説明を挿入
(2) 結合は
複数の実行ストリームが 1 つの動作結果に集約され、結合はすべてのブランチ プロセスが実行された場合にのみ完了します。実行し続けること
ここに画像の説明を挿入

1.6 変換

アクティビティが終了すると、制御フローは矢印付きの直線で示されるように、すぐに次のアクティビティ ノードに渡されます。
ここに画像の説明を挿入

1.7 レーン

これは、異なるオブジェクトまたはロール間の動作操作の内容を分離するために使用されます。このアクティビティで各ロールがどのような操作を実行したかを直感的に確認できます。スイム レーンは繰り返し記述できないことに注意してください

(1) 垂直遊泳レーン

レーン 2: ユーザー、システム
ユーザーはシステムにログインし、結果を入力してシス​​テムを終了します。
ここに画像の説明を挿入

(2) 水平遊泳レーン

アクティビティの運営中に役割の変更が発生します。これは通常、水平スイミング レーンと垂直スイミング レーンを組み合わせることで実現されます。
アクティビティのフェーズを区別することも可能
ここに画像の説明を挿入
ここに画像の説明を挿入

6. コンポーネント図

コンポーネント図は、コンポーネント図とも呼ばれ、一連のインターフェイスに準拠するソフトウェア システム内の物理的な交換可能なソフトウェア モジュールを記述します。
構成図 = 構成 (Component) + インターフェース (interface) + 関係 (Relationship) + コネクタ (Connector)

ここに画像の説明を挿入

1. 共通要素

1. コンポーネント

システム設計の一部のモジュールは、モジュール実装のコンテンツを隠し、外部への一連のインターフェイスを提供します。コンポーネントは交換可能です。つまり、コンポーネントは結合されていません。

ここに画像の説明を挿入

コンポーネントの種類
  • ソース コード コンポーネント: 1 つ以上のソース コード ファイルまたはパッケージで構成されるコンポーネント
  • バイナリコンポーネント: オブジェクトコードファイルまたは静的ライブラリファイル
  • 実行可能コンポーネント: マシン上で実行できるプログラム単位

部品図の区別

ここに画像の説明を挿入
UML2.Xの描画方法は、現在ほとんどのコンポーネント図に登場するコンポーネント要素の描画方法であり、コンポーネント内で外部に提供されたり、外部からコンポーネントに送られるインターフェースブロックを省略しています。

2. インターフェース

インターフェースの種類:

  • インターフェイスの提供: コンポーネントは、他のコンポーネントから簡単に呼び出されるインターフェイスを提供します。
  • 要件インターフェイス: 外部コンポーネントの使用を必要とするコンテンツまたはデータ

ここに画像の説明を挿入

インターフェースを提供する

ここに画像の説明を挿入

要件インターフェース

ここに画像の説明を挿入

コンポーネントリンク

ここに画像の説明を挿入

3.ポート

ポートは、コンポーネントが外部と対話するノードを示します。コンポーネントは 1 つ以上のサービスを提供できるため、可視性の説明を提供するには、さまざまな機能をポートの形式で記述する必要があります。
ここに画像の説明を挿入
描画方法:
外部に公開されるポートには四角形の接続インターフェイスを使用します。

ポート接続描画方法:

ここに画像の説明を挿入
ポートを公開する必要がある描画メソッドは、通常、コンポーネントが複数のサービス インターフェイスを外部に提供する場合、またはコンポーネントが外部コンポーネントを通じて複数のサービスを取得する必要がある場合に表示されます。

1 対多のコンポーネント リンクを描画する方法

ここに画像の説明を挿入

コンポーネントの依存関係
(1) コンポーネントとコンポーネント間の依存関係

点線の矢印が指す方向は、デマンド側がサービスプロバイダーを指します。
ここに画像の説明を挿入

(2) コンポーネントとインターフェース間の依存関係

説明と同様に、コンポーネントインターフェイスと要件インターフェイスの動作は
ここに画像の説明を挿入
上図のようになり、依存関係を使用して説明できます。
ここに画像の説明を挿入

ここに画像の説明を挿入

コンポーネント パッケージ (コンポーネント ブロック)

構成要素間に包含関係がある場合には、次のような記述が可能である。
ここに画像の説明を挿入

コンポーネントブロックがサービスポートを公開するためのメソッド

ここに画像の説明を挿入

コンポーネントブロック内のサブコンポーネントは通常どおりリンクできます

ここに画像の説明を挿入

7. 展開図

ここに画像の説明を挿入

1。概要

展開図は、システム実行時のハードウェア ノードと、ノード内のソフトウェアとハ​​ードウェア間の対話型接続の図を示します。
展開図は 2 つの要素で構成されます。

  • 1. ノード: ハードウェア物理ホスト、ルーターなど。
  • 2. 接続: ネットワーク、リクエスト、回線

2.機能

配置図の主な目的は、全体的なシステム計画を物理レベルで行うことです。

    1. ハードウェアトポロジの説明
  • 2. 導入されたソフトウェア内のハードウェア間の関連性を説明します。
  • 3. ハードウェアの相互作用関係を説明する

3. 共通要素

1. ノード

ノードには、処理ノード (プロセッサ)、サービス ノード (デバイス)
ここに画像の説明を挿入
プロセッサの 2 種類があります。

コンピューティング能力を備え、サーバーなどのさまざまなソフトウェアを実行できるノードを指します。プロセッサーはデータとビジネスを処理できます。

装置

プリンターなど、それ自体に処理機能を持たないノードを指します。

2. 関係性

ここに画像の説明を挿入

2 つのノード間のハードウェア接続を示し、ネットワーク、回線、光ケーブルなどの接続を一般的に表します。
描画方法: 接続を実現するだけ

4. 事例紹介

複数店舗の販売ホストとサーバーの各サービスコンポーネントとの接続関係を記述する
ここに画像の説明を挿入
分散マイクロサービス展開モード

分散マイクロサービス: 分散操作の各モジュールは、独立して実行されるサービス モジュール、IP、ポートとして指定され、各サービス モジュールは相互に呼び出して、分散シナリオにおけるマイクロサービス間の協調操作の効果を実現します。

スプリングクラウド

  1. SpringCloud Netflix (有料)
  2. SpringCloud Alibaba (アリババチーム)
  3. ドブエ
  4. SpringCloudサーバーMS

8. 連携図

コラボレーション図: 協力図は動的な図です。メッセージの送信と受信の間のオブジェクトの構成、一連のオブジェクトとこれらのオブジェクト間の接続を示すコラボレーション図を強調します。

ここに画像の説明を挿入

上図の分析から、コラボレーション図とシーケンス図の記述方法は類似していることがわかります(オブジェクト+時間+メッセージ)
メッセージには、メッセージを送信する順序をデジタルマークで記述します。

8.1 特徴

コラボレーション図にはライフラインの概念はなく、オブジェクト間のメッセージの関係のみが記述されます。
コラボレーション図は組織構造を強調表示します。
コラボレーション図はオブジェクト間の接続とメッセージ送信関係を記述します。
コラボレーション図はメッセージ送信関係を記述します。

8.2 共通要素
(1) オブジェクト

特定の機能を完了するために表示される行動または参加者のコレクション (e コマース プラットフォーム、人々、Cai Xukun など)
ここに画像の説明を挿入

(2)リンク

オブジェクト間の独立した接続を表し、1 つ以上の接続された線または円弧を表します。円弧は
ここに画像の説明を挿入
自己呼び出しを表します。
ここに画像の説明を挿入

(3) ニュース

システムの動作を記述する方法は、あるオブジェクトから別のオブジェクトにメッセージを送信することであり、これは操作のメソッドまたは命令である場合があり、メッセージは送信者、受信者、およびアクティブなコンテンツで構成されます。
ここに画像の説明を挿入

事例説明

管理者のチェックアウトプロセスを説明します
1. システムにログインします
2. ログインに成功したら戻ります
3. チェックアウト情報を表示します
4. チェックアウト情報をデータベースからチェックする必要があります
5. データベースが情報をチェックして確認した後
6 . 管理者がチェックアウト
7. システムがチェックアウト内容を記録
8. チェックアウトが完了

(1) タイミング描画方法

ここに画像の説明を挿入

(2)共同描画方式

ここに画像の説明を挿入

共同で図を描く手順

  1. インタラクションに誰が参加するかを決定する
  2. オブジェクトを識別し、オブジェクト間の関係をリンクする
  3. 各メッセージを送信するときは、リンク関係に従って描画し、メッセージ送信の方向に注意する必要があります。

おすすめ

転載: blog.csdn.net/gjb760662328/article/details/129506717