UMLを基礎から理解する ――UMLでできること,できないこと
4)ユース・ケース図
ユース・ケース図(図12)は,システムが外部に対して提供する機能を表したユース・ケースと,システム外からその機能にアクセスするアクタ(人形のアイコン)によって,システムの外部仕様のようなものを表現します.ユース・ケースには,一般に「~する」などの名まえを付けます.組み込みシステム開発の場合には,生身の人間以外にデバイスやほかのシステムなども,アクタとして表現することが多いようです.
このほかに,ライブラリなどのシステムを構成するコンポーネント間の依存関係を表すコンポーネント図,分散環境におけるハードウェア構成とそこに配置されるソフトウェアを表現する配置図などが利用されます.
UMLにはこれらの図が定義されているわけですが,次に気になるのは「これらの図のどれをどのような順番で使っていけばよいのか」ということです.しかし,それは設計方法論や開発プロセスの話題になります.ソフトウェア開発にかかわるこれらの概念間の関係を整理すると,以下のようになります.
ソフトウェア開発の重要な項目は:
- 製品のライフ・タイム全体に影響を与えるアーキテクチャ
- そのアーキテクチャを定義する,一連のモデル
- そのモデルの作りかたと表現方法を定義する,方法論
- その方法論をどのように実施するかを定義する,開発プロセス
- 開発プロセスと方法論をサポートする環境(ツールなど)
UMLはモデルを表現するための言語です.モデルというのは,詳細を捨てて全体を抽象化して表現したものです.今まで,共有・再利用されずに担当者の頭の中にしか残らなかった上位の設計情報を形にして見せてくれるのがUMLです.共有・再利用の形として,フレームワークやデザイン・パターンがあります.アーキテクチャ自身も再利用できるようになります.
今まで,ソフトウェアの再利用と考えていたものは,ほとんどソース・コードの再利用だったのではないでしょうか.UMLは,もっと抽象化された設計情報の再利用手段となります.抽象度は高ければ高いほど再利用しやすくなります.このことは,LSI設計のIPコア(再利用可能な回路ブロック)についても同様ではないでしょうか.
〔図12〕ユース・ケース図
ユース・ケース図は,システムが外部に対して提供する機能を表した「ユース・ケース」と,システム外からその機能にアクセスする「アクタ」によって,システムの外部仕様のようなものを表現する.