 |
続はじめるUML 第4回 |
2006.6.1 掲載
UMLによる要求分析
前回は営業職のOCUP受験をテーマにお送りしましたが、今回は前々回に引き続き、ケーススタディによるUMLを用いた要求分析をお届けします。
前々回、コンテンツ提供サービスの販売管理業務自体を分析し、その内容をビジネスプロセスアクティビティ図(As-Is)と概念クラス図によって表現することによって、これからシステム化しようとする業務を目に見える形にしました。ここからは、実際にこの業務をより効率化するために、どの部分をシステム化するかを決定し、システム化後に業務がどのように変化するかを再度ビジネスプロセスアクティビティ図(To-Be)として表してみます。
◇ビジネスプロセスアクティビティ図(To-Be) 業務分析のときに作成したビジネスプロセスアクティビティ図(As-Is)を見てみると、処理を自動化できるところが何ヶ所かあることに気づきます。また、業務分析によって自動化が難しい部分も判明します。 今回、システム化することで効率化、省力化できるアクティビティは、「ダウンロードデータを収集する」「ユーザごとデータを集計する」「請求情報を作成する」になります。 「請求情報を送信する」は、もちろん他システム(この場合は請求システム)がWebサービスなどのインターフェースを持ち、それに適合するように接続する部分を開発すればシステム化は可能ですが、そのためには工数がかかりすぎると考えられるので、今回はシステム化を見送ります。 その結果、システム化が行われた後のこの業務は、次のようなアクティビティ図になります。As-Isのモデルよりも、少ないリソースで業務ができることがわかります。
図:業務分析アクティビティ図(To-Be)>>画像を大きく表示
◇ユースケース図とユースケース記述 さて、これで今回作成する部分が特定できましたが、これはあくまでユーザの業務内容(ビジネスプロセス)であり、システムが実現する機能とイコールとはいえません。システムの機能を、使う側とシステムとの境界をはっきり分け、機能をユースケースという単位で表した図を「ユースケース図」といいます。ここで、ユースケース図を用いてシステムが実現する機能を表現します。 アクティビティ図で登場した、「ユーザごとデータを集計する」という項目は、システム内部の処理ですので、このユースケース図には記述しません。 また、業務システムが処理するデータを取得したり、永続化したりするために、他システム(「ダウンロードWebシステム」「データベースシステム」)もアクターとして表しています。
図:ユースケース図 >>画像を大きく表示
ユースケース図は、機能の名前がユースケースとして表されているに過ぎません。これだけでは、システムが実現すべき機能を設計・実装するのは難しいので、一般的にこれらのユースケースひとつずつに対し、「ユースケース記述」と呼ばれる詳細記述を付加します。 ユースケース記述には、事前条件や事後条件など、機能を実現するために必要な詳細情報を記述します。
表:ユースケース記述
| ユースケース名 |
請求情報を作成する |
| アクター |
請求担当者、データベースシステム |
概要
|
業務システム内で処理されたデータをもとに、請求情報を作成する |
イベントフロー
|
- 請求担当者は、Webブラウザを用いて業務システムにアクセスする。
- 請求担当者は、請求担当者専用のIDとパスワードを用いてログインを行う。
- 請求担当者は、「請求情報作成」のボタンを押す。
- 業務システムは、データベースシステムよりデータを取得し、請求情報データを作成する。
- 請求担当者は、「ダウンロード」ボタンを押すことで請求情報ファイルをダウンロードする。
|
| 事前条件 |
業務システム内で対象ダウンロード情報が処理済みであること。 |
事後条件
|
請求情報ファイルがダウンロードできていること。 |
要求分析で作成するモデルは、MDAの分類ではCIMとPIMにあたる部分になります。この部分は、これから開発するシステムについて、その仕様を可能な限り明らかにする作業です。上流の業務と、下流の詳細設計をつなぐ重要な設計でもあります。
次回はOCUPインターメディエイト受験記を、その次の回でケーススタディのシステム分析工程をお送りする予定です。
<コラム> このコラムでは、バージョンアップしたパターンウィーバーの新しい機能について紹介しています。 今回のパターンウィーバー2.0から2.1へのバージョンアップで、一番大きな変更点は、各モデル要素が名前空間によって管理されるようになったことです。これにより、名前空間により管理されている要素の名前や属性などを変更した場合は、もしその要素が別の図に配置されているとしても、その変更がすべての図に反映されます。また、名前空間管理によって要素間の操作も容易になりました。そのため、クラス図の「操作」の名前を、シーケンス図の「メッセージ」の名前として選択できる、というような、便利な機能も追加されています。
図:名前空間による管理
図:名前空間で管理されたクラス
図:クラスの操作をシーケンス図のメッセージの名前として利用
■筆者紹介 株式会社テクノロジックアート テクニカルデプト システムコンサルタント 藤川 幸一/Kouichi Fujikawa
パターンウィーバー(PatternWeaver) ver2.1 |
 |
さらに使いやすく!
- 名前空間(ネームスペース)の管理機能を搭載
- 各種環境設定(デフォルト設定)が可能に
- モデルのビュー(視点)管理機能を搭載
- 最新Eclipseにも対応
- Eclipse3.1.1へ対応
- 組込み系ユーザにも対応
- 状態遷移表の機能を搭載
- C++ソースコード生成プラグイン
|
●商品に関するお問い合わせ 株式会社テクノロジックアート e-mail : pw@tech-arts.co.jp http://pw.tech-arts.co.jp/
|
|
|