UML図

ロバストネス図とは?基本要素、ルールと作り方を紹介

edraw編集者
編集者: Edraw

ロバストネス図(Robustness Model)は、オブジェクト指向分析において「ユースケース(振る舞い)」を「クラス図(静的な構造)」へと変換する際の「架け橋」となる図です。ユースケースで定義した曖昧な要求を、具体的なプログラムの構成要素へと分解する過程で、設計の漏れや論理的な矛盾あぶり出す役割を担います。

本記事の要点は以下の通りです。

  • ロバストネス図の3つの基本要素: 「バウンダリ(接点)」「コントロール(動的処理)」「エンティティ(静的データ)」という直感的なアイコンでシステムを視覚化します。
  • 厳格な接続ルール: 要素間のつながりに制約を設けることで、画面とデータの直接的な依存を防ぎ、メンテナンス性の高い設計を導きます。
  • 分析の架け橋: 自然言語で書かれたユースケースを、実装に近いクラス図やシーケンス図へとスムーズに変換するための「思考の整理棚」として機能します。

1.ロバストネス図とは何か

ロバストネス図は、システムの「振る舞い」と「構造」をつなぐ、オブジェクト指向設計の強力な補助ツールです。開発の初期段階で、システムの論理的な構成要素を視覚化するために用いられます。

ロバストネス図の全体イメージ

定義と要素

システムをバウンダリ(境界)、コントロール(制御)、エンティティ(実体)の3つのステレオタイプに分類して記述します。UMLの標準ではありませんが、ICONIXプロセスなどで広く採用されています。

メリット

最大の利点は、「仕様の漏れ」を早期に発見できることです。図を描く過程で、「この処理にはどのデータが必要か」「エラー時の画面遷移はどうなるか」といった細部が強制的に具体化されるため、設計の矛盾や検討不足をあぶり出せます。

他のUML手法との違いは?

シーケンス図が「メッセージの送受信順序(時間軸)」を詳細に描くのに対し、ロバストネス図は「どの要素がどの役割を担うか(役割分担)」の整理に特化しています。詳細設計に入る前に、まずはロバストネス図で「何が必要か」という全体像を固めることで、手戻りの少ないスムーズな開発が可能になります。

2.ロバストネス図の基本要素

ロバストネス図は、システムの「振る舞い」を「構造」へと翻訳するための強力なツールです。主要な構成要素は、システムの役割を3つのステレオタイプに分類したアイコンと、それらをつなぐリレーションで構成されます。

ロバストネス図の基本要素のアイコン例

各要素は以下の役割を担います。

  • アクター(Actor): システムの外部に存在し、操作を行う人間や外部システムです。
  • 境界(Boundary): 画面やAPIなど、アクターとシステムが直接やり取りする「接点」を表します。 
  • コントロール(Control): ビジネスロジックや処理の流れを制御する「動的な振る舞い」を担います。バウンダリとエンティティの仲介役です。 
  • エンティティ(Entity): データベースに保存される注文情報やユーザー情報など、永続的に保持される「静的なデータ」を表します。
  • リレーション(Association): 要素間の「対話」を線で結びます。ロバストネス図ではデータの流れ(矢印)ではなく、要素同士が関係を持っていることを示す実線を用いるのが一般的です。

3.ロバストネス図のルール

ロバストネス図を正しく機能させるためには、厳格な構成ルールと記述の作法を守ることが不可欠です。これにより、設計の「抜け漏れ」を物理的に防ぐことができます。

図形の使い分けと接続ルール

ロバストネス図では、以下の3つのステレオタイプ(図形)を使い分けます。

  • 境界(Boundary): 円に垂直線がついた形。画面やAPIを表します。 
  • コントロール(Control): 円に矢印がついた形。ロジックや処理を表します。 
  • エンティティ(Entity): 円に下線がついた形。データを表します。

接続の黄金律として、「境界とエンティティを直接結ばない」「境界同士を結ばない」といった制約があります。必ず間にコントロールを挟むことで、MVCモデルに基づいた疎結合な設計を担保します。

メッセージと関係線の表現

関係線(Association)は、要素間の「対話」を示します。シーケンス図のような詳細なメッセージ(メソッド名)やデータフローの矢印を書き込みすぎず、まずは「どの要素が協力し合うか」という依存関係を明確にするのが基本です。

運用と命名の原則

  • 1ユースケース=1ロバストネス図: 原則として、1つのユースケース記述に対して1枚の図を作成します。これにより、シナリオごとの検証が容易になります。
  • 命名と役割: コントロールには「~を確認する」「~を登録する」といった動詞を用い、バウンダリやエンティティには具体的な名詞を与えます。

このプロセスを通じて、自然言語の曖昧さを排除し、実装フェーズへのスムーズな橋渡しを行います。

4.ロバストネス図の作り方

ロバストネス図の作成は、要件定義という「言葉」の世界を、設計という「構造」の世界へ翻訳する重要な工程です。今回はオンライン書店の「注文処理」を例に、EdrawMaxなどの作図ツールを活用したステップバイステップの作り方を解説します。

ステップ1:ユースケース記述の分解

まず、対象となるユースケースのシナリオを1文ずつ分解します。

  • 「ユーザーが注文ボタンを押す」
  • 「システムが在庫を確認する」
  • 「在庫があれば注文を確定し、確認メールを送る」

ステップ2:要素の配置(EdrawMaxの活用)

EdrawMaxを活用し、作成していきます。 「新規作成」を選択し「図形」→「UML」で検索をすると「アクター」「バウンダリ」などのアイコンがみつかるので、これを順番に配置していきます。

EdrawMaxでのUML図形選択と配置

ロバストネス図では、どこに置いても図としては成立しますが、見やすさのために以下のような一般的な配置ルールがあります。

  • 左列:アクター(ユーザー)
  • 中左列:バウンダリ(画面系)
  • 中列:コントロール(処理系)
  • 右列:エンティティ(データ系)

左から右へ情報の流れが読めるように配置するようにしましょう。

配置が完了したら、ラベル名を変更(「Boundary」→「注文確認画面」など)していきます。

要素間の接続と接続ルールの適用

ステップ3:要素を配置して接続する

要素を配置して接続する

要素間を線で結びますが、ここでロバストネスルールを徹底します。画面(バウンダリ)から直接DB(エンティティ)を読み書きしてはいけません。必ず「在庫チェック」などのコントロールを介します。エラーケース(在庫切れ)の分岐も、コントロールから派生させて「エラー表示画面」へ繋ぎます。

ステップ4:不足要素を確認・修正する 

不足要素を確認・修正する 

図を完成させる過程で「メール送信のコントロールが足りない」など設計の漏れが見えてきます。

不足要素を追加してユースケース記述と照合し、整合性を確認したら完成です。

5.注意点やよくある間違い

ロバストネス図は、設計の「漏れ」を見つけるための強力なツールですが、記述の粒度やルールの解釈を誤ると、本来の目的を失ってしまいます。特に注意すべき3つのポイントと、よくある間違いを解説します。

1. 処理(ロジック)を詳細に書きすぎる

コントロール(Control)の中に、プログラミングに近いアルゴリズムや複雑な条件分岐を細かく書き込むのは避けましょう。ロバストネス図は「何が必要か」を特定するためのものであり、「どう実装するか」を描くシーケンス図とは異なります。処理の内容は「在庫を引当てる」「ログイン認証する」といった、抽象的な目的レベルに留めるのがコツです。

2. ルール違反の直接結合

最も多い間違いは、「バウンダリとエンティティを直接結ぶ」ことです。例えば、「画面から直接データベースの値を書き換える」ような線を引くのは、MVCモデルの原則に反します。必ず間にコントロールを挟むことで、どこにビジネスロジックが存在すべきかを明確にします。

3. データフロー(矢印)との混同

ロバストネス図の線(Association)は、要素間の「対話」や「協力関係」を示すものであり、情報の流れる方向を示す「データフロー」ではありません。UMLの規約に基づき、基本的には矢印のない実線で結ぶのが正解です。

これらの注意点を守ることで、設計の初期段階で矛盾を確実にあぶり出し、手戻りの少ない開発へとつなげることができます。

6.UML図作成ツール

UMLモデリングツールは、単なる「作図ツール」を超え、ソフトウェア設計の整合性を保つための「思考の基盤」です。Excelやドローソフトでの作成は修正のたびにリンクの再調整が必要ですが、専用ツールはモデルを一元管理するため、一つの変更が関連する図に即座に反映され、大規模なシステム設計でも破綻を防ぎます。

ツール選びの視点

ツール選びにおいて重要なのは、単に「図が描けるか」ではなく、「モデルの整合性をツールがどこまで守ってくれるか」という点です。

ロバストネス図を含むUML図を効率よく作成するには、適切なツール選びが重要です。ここでは代表的な3つのツールを比較します。

項目

EdrawMax

StarUML

astah

開発元

Wondershare

MKLabs

Change Vision

動作環境

オンライン・Win/Mac/Linux

Win/Mac/Linux

Win/Mac

対応図の種類

210種類以上(UML・ER図・フローチャートなど幅広く対応)

UML2・ERD・SysML・BPMN・フローチャートなど

UML・ER図・フローチャート・SysML・データフロー図

ロバストネス図

○ 対応(UML図の一部として作成可能)

△ 直接対応なし(UMLクラス図等で代替)

○ 対応(astah* professionalで作成可能)

AI機能

○ あり(AI自動生成・OCR・AI描画)

○ あり(MCP経由でAI統合)

○ あり(2026年3月より搭載)

テンプレート

1,500種以上

なし(拡張機能で補完)

あり(種類は限定的)

日本語対応

○ あり

△ あり(一部)

○ 完全対応(日本製)

クラウド共同編集

○ あり

× なし

× なし

無料プラン/トライアル

○ あり(機能制限あり)

○ 30日間無料トライアル

○ 無料トライアルあり

価格帯(有料)

年間プラン\買い切り型あり

買い切り型

年間ライセンス制

こんな人におすすめ

豊富なテンプレートとAIをすぐ使いたい方

UML専門・コード連携を重視するエンジニア

日本語サポートと日本製ツールを重視する方

 【ツール選択のポイント】

  • 初心者・非エンジニアにはEdrawMax:豊富なテンプレートとAI機能で学習コストを最小化できる。オンラインで使えるため環境構築が不要
  • UML専門・コード連携重視にはStarUML:Mermaid構文対応やMCP経由のAI統合など、エンジニア向けの拡張性が強み
  • 日本語サポートを重視するチームにはastah:日本製ツールとして国内企業での導入実績が豊富で、日本語ドキュメントも充実

AI支援でUML図を自動生成する機能を持つEdrawMaxは、ロバストネス図の作成においても特に高い生産性を発揮します。ユースケース記述を入力するだけで図の骨格を自動生成し、細部を手動で調整するだけで完成度の高い図が仕上がります。詳しくは公式ページをご確認ください。

関連記事