若手のエンジニアやプログラマーは、システムやソフトウェア開発をスムーズに行うために、統一モデリング言語、UMLなどをしっかり理解しておく必要があります。 UMLとは、Unified(統一な) Modeling(モデリング) Language(言語)の意味で、 システム開発中に統一されたモデリング言語です。一般的に、UMLクラス図、オブジェクト図、UMLコンポーネント図、UML配置図、UMLパッケージ図、UMLユースケース図、UMLシーケンス図、UMLコラボレーション図の10種類があります。
ここでは、例に合わせてUMLにおける10種類の図の各目的用途や、システム開発の初心者が押さえておくべきUMLの入門知識について紹介していきます。 EdrawMaxのテンプレートを基にして説明します。
Part1: UMLとは何か?
UMLとは、Unified Modeling Language(統一モデリング言語)の略語で、分析から設計、実装まで、オブジェクト指向開発に一貫して用いられるモデリング手法です。UML図とは、ソフトウェアシステムの成果物を記述、視覚化、構築、文書化するために使用される国際的な業界標準のグラフィカル表記法です。UMLが登場するまではモデリング手法が雑多であったため、情報交換などコミュニケーション間での問題が起こりがちでした。そのため様々な手法を統一することによってUMLが開発されました。手法の統一は設計書の読みやすさや交流における効率化などに大きく役立ちます。
ではUMLの活用で実際に何をしていくのかについて、主な例を以下に挙げます。
- システムを分析する。
- システムのデザインを表現する。
- 要件を理解する。
- エラーや欠落を検出する。
- システムの実装を表現する。
- コミュニケーションを促進する。
Part2:UML図にはどのような種類がある?
表現内容や用途に応じて、UML図は以下のように10種類のダイアグラムに分類されます。
分類 | 種類 | 表現内容 | |
構造図 | クラス図 | 各クラスの構造、クラス間の関係 | |
オブジェクト図(特別なクラス図) | 特定の段階でオブジェクトの属性や状態 | ||
コンポーネント図 | ソフトウェアを構成するコンポーネント、及びその間の依存関係 | ||
配置図 | システムの物理的なレイアウト(配置) | ||
パッケージ図 | クラスなどモデル要素のグルーピング及びグループ ( パッケージ ) 間の関係 | ||
振る舞い図 | ユースケース図 | システムが提供する機能、及び利用者や他システムなどの外部との関係 | |
相互作用図 | シーケンス図 | 時間軸に沿ったオブジェクトの相互作用 | |
コラボレーション図 | オブジェクト間の相互作用 | ||
ステートチャート | オブジェクトの生成から消滅までの状態の遷移と変化 | ||
アクティビティ図 | システム動作の流れ |
種類1. UMLクラス図
① 概要
UMLの基本となるUMLクラス図は、分析、設計、実装などシステム開発の全段階に使用されます。クラス図はアプリケーションのオブジェクト及び情報構造だけでなく、ユーザーとの通信も記述されます。UMLクラス図には、クラス、オブジェクト、集合、依存関係、合成、汎化などの要素が含まれます。
② UMLクラス図のテンプレート
編集可能なUMLクラス図テンプレートをダウンロード
UMLクラス図について詳しくはこちら:UMLクラス図
種類2. オブジェクト図
① 概要
オブジェクト図は、特別なUMLクラス図と考えられます。オブジェクト図は、プログラム内のオブジェクトの概要を特定の瞬間における関係性と共に示すもので、特定の段階でオブジェクトの属性や状態を把握する際に利用されます。アプリケーションの実行中でも、任意の時点でその状態や関連を可視化する手段として用いられます。
② オブジェクト図のテンプレート
編集可能なオブジェクト図テンプレートをダウンロード
オブジェクト図について詳しくはこちら:オブジェクト図とは何?その書き方と使用例も紹介
種類3. UMLコンポーネント図
① 概要
UMLコンポーネント図は、システムの実装に用いられるダイアグラムです。システムを構成するコンポーネント、及び各コンポーネント間の関係を記述します。
② UMLコンポーネント図のテンプレート
編集可能なUMLコンポーネント図テンプレートをダウンロード
UMLコンポーネント図について詳しくはこちら:UMLコンポーネント図
種類3. UML配置図
① 概要
UML配置図は、システム実装で使用されるシステム物理構造の図式表現です。これはハードウェアのトポロジーシステムを視覚化し、物理ハードウェア要素とそれらの間の通信関係をモデル化し、システムのアーキテクチャを計画するために使用されます。ノード、コンポーネント、依存関係などが含まれます。
② UML配置図の例
編集可能なUML配置図テンプレートをダウンロード
UML配置図について詳しくはこちら:UML配置図
種類4. UMLパッケージ図
① 概要
モデルの要素をグループ化するために使用されます。パッケージ図はサブシステムまたはモジュール間の構造と依存関係を示すことができます。パッケージはファイルフォルダの形で表します。
② UMLパッケージ図テンプレート
編集可能なUMLパッケージ図テンプレートをダウンロード
種類5. UMLユースケース図
① 概要
ユースケース図は、システム機能を分析するために、プロジェクトの分析段階で使用されます。設計中のシステムと利用者や外部システムとのやりとりを記述します。詳細は示されていませんが、ユースケース、アクター、システム間の関係の一部が含まれています。ユースケース図には基本的に4つの要素を含める必要があります。アクター、システム、ユースケース、そして関係です。アクターとはシステムを操作、利用する人を表します。
② UMLユースケース図 例
編集可能なUMLユースケース図テンプレートをダウンロード
UMLユースケース図について詳しくはこちら:UMLユースケース図
種類6. UMLシーケンス図
① 概要
シーケンス図は、分析及び設計段階で使用されます。これは、操作がどのように実行されるかを詳述する相互作用図です。ユースケースを経て時系列的に構造化されたイベントフローを表すために多用されます。また、オブジェクト間の通信関係を表示します。シーケンス図にはライフライン、メッセージ、活性化、オブジェクトなどの要素が含まれています。
② UMLシーケンス図 例
編集可能なUMLシーケンス図テンプレートをダウンロード
UMLシーケンス図について詳しくはこちら:UMLシーケンス図
種類7. UMLコラボレーション図
① 概要
UMLコラボレーション図は、ソフトウェアオブジェクト間の関係と相互作用を記述します。特定のタスクを実行するために共同作業するオブジェクト間の関係を視覚化し、複雑な操作のための実装ロジックをモデル化するために使用されます。コラボレーション図は相互作用図の1つで、コミュニケーションとも呼ばれます。オブジェクト、マルチオブジェクト、アクター、アソシエーションの役割、委任、自己へのリンク、制約とノートで構成されています。
②UMLコラボレーションの例
編集可能なUMLコラボレーション図テンプレートをダウンロード
UMLコラボレーション図について詳しくはこちら:UMLコラボレーション図
種類8. UMLアクティビティ図
① 概要
より大きなアクティビティの一部としてのアクションの手順フローを記述することを目的とします。これは、サービスを提供するためのアクティビティの調整方法をモデル化したり、複数の操作を達成するために必要なイベントを表示したり、単一のユースケースのイベントがどのように相互に関連しているかを示したりするために使用されます。アクティビティ図はアクティビティ、状態、アクティビティと状態間の遷移から構成されます。
② UMLアクティビティ図の例
編集可能なUMLアクティビティ図テンプレートをダウンロード
UMLアクティビティ図について詳しくはこちら:UMLアクティビティ図
種類9. UMLステートチャート図
① 目的
ステートチャート図はシステムの動的性質をモデル化するために使用されます。イベントが発生したときにオブジェクトすべての可能な状態を記述します。そのため、この最も重要な目的は、オブジェクト動作の開始から終了までのライフタイムをモデル化することです。ステートチャート図には状態、初期状態、最終状態、遷移など要素が含まれています。
② UMLステートチャート図の例
編集可能なUMLステートチャートテンプレートをダウンロード
UMLステートチャートについて詳しくはこちら:UMLステートチャート
Part3:UML図の書き方
前述のとおり、UMLにはモデリングツールとして様々な目的を達成するために、それぞれのダイアグラムが含まれています。システム開発設計書を書く際には、事前にそのモデリングの目的を考え、その目標に応じて適切なUML図を選択することがお勧めです。
早速UMLモデリングツールを以下よりダウンロードし、すべてのUML図を実際に見てみましょう。
Step1. 空白の文書を開くか、テンプレートを使う
「新規作成」から「ソフトウェア開発」を選んで、そしてUML モデル図をダブルクリックします。
Step2.UML 図形を添加する
UML 図形を選んで、土台にドロップします。
Step3.UML 図形を接続する
必要なコネクタを選んで、各図形を接続します。
Step4.UML 図形をカスタマイズする
図形をクリックしてテキストを入力します。また、スタイル全体やレイアウト、背景をカスタマイズできます
詳細について、「超入門のUML 図の書き方」で確認してください。
Edraw Max -- All In One の作図ツール
- 豊富なテンプレートと図形
- 様々なファイル形式に対応
- フローチャート、マインドマップ、組織図などを作成
- Officeライクの操作感覚 初心者もすぐ使える