UMLツール紹介:Microsoft Visual Studio編
モデリング機能を強化した「Visual Studio 2010」の実力とは?
マイクロソフトは2009年11月、UML機能を強化した統合開発環境の次期製品「Microsoft Visual Studio 2010 β2日本語版」を発表した。今回はそのモデリング機能の特徴を紹介する。
マイクロソフトは、2010年上半期に製品版を提供する予定の「Microsoft Visual Studio 2010」(以下、VS2010)において、UMLモデリング機能を強化し、要件定義や設計などの領域のサポートを充実させると発表している。従来、Visual Studioにおけるモデリング機能としては「Architecture Edition」で独自記法の機能が提供されていたが、UMLはサポートの対象外だった。また、同社は2008年9月にモデリング標準化団体「OMG(Object Management Group)」に加盟しており、.NETプラットフォームにおけるモデル駆動型開発を支援する方針も発表している。
マイクロソフトはアプリケーションライフサイクルマネジメント(ALM)というキーワードを掲げ、Visual Studio製品群によってアプリケーション開発のライフサイクル全体のサポートを目指している。Visual Studioが提供するUMLモデリング機能とは、一体どれくらい使えるものなのだろうか? 今回は既に入手可能なVS2010 β2日本語版を基に、そのモデリング機能の特徴を紹介する。
VS2010のモデリング機能
VS2010は、その最上位ライセンスである「Ultimate」においてUMLのバージョン2.1.1に対応したUMLモデリング機能が提供され、以下のダイヤグラムを作成することができる。
| ダイヤグラム名 | 対応状況 | 備考 |
|---|---|---|
| クラス図 | ○ | ― |
| オブジェクト図 | × | ― |
| パッケージ図 | × | ― |
| コンポーネント図 | ○ | ― |
| 合成構造図 | × | ― |
| 配置図 | × | ― |
| ステートマシン図 | × | ― |
| アクティビティー図 | ○ | レーンには対応していない |
| シーケンス図 | ○ | 自動生成可能 |
| コミュニケーション図 | × | ― |
| タイミング図 | × | ― |
| 相互作用概要図 | × | ― |
| ユースケース図 | ○ | ― |
VS2010には上記のダイヤグラムの作図機能に加えて、今回から追加された「レイヤー図」という独自の図も用意されている。また、データベースの構造を可視化するビュー、ソースコードからシーケンス図を自動生成する機能、クラス間の依存関係を可視化する「Visualize Code Relationships」機能などを活用できる。
さらに、モデル要素の色が変更可能であり、リソース系やイベント系のクラスを色分けして、カラーUML(※)でモデリングすることも可能だ。アクティビティー図とユースケース図では直線や長方形、楕円(だえん)などのテンプレートを使って自由に図形を描くことができる。
※ 『Javaエンタープライズ・コンポーネント―カラーUMLによるJavaモデリング』(ピアソン・エデュケーション)の中で、共同著者であるピーター・コード氏が提唱している手法。イベントをピンク、リソースを緑などに色付けすることで、白黒の図よりも視覚的に分かりやすくなる点が特徴。
そのほか、VS2010の日本語版ではメニューやメッセージにおける日本語表示はもちろん、ダイヤグラム要素に対する日本語の入力も可能だ。ただ、先述した対応表でも分かる通り、現時点では「UMLモデリングツールとしては、対応可能なダイヤグラムが少ない」といえるだろう。同社では今後、対応ダイヤグラムの種類を増やしていくという。
モデリングとプログラミングの両方をサポート
次に、ほかのツールとの差別化ポイントといえる特徴的な機能を紹介する。
ソースコードとの連携
VS2010では、ソースコードからシーケンス図を生成したり、UMLには準拠しないがクラス図に似たダイヤグラムを生成したりすることができる。例えば、クラス図に似たダイヤグラムの中で、追加した属性や操作、イベントなどがソースコードとリアルタイムに連動し、スケルトンとして自動的に出力する機能がある。この機能を使うと、クラスの定義を表形式で表示しながら、設計書を書くように属性、メソッド、プロパティーやその説明を記述することでソースコードを作成できる。また、設計書がないソースコードから実際のコードに合致した設計書を自動生成することも可能だ。例えば、メンテナンスが不十分なシステムを解析する際にも役立つ。
独自ダイヤグラム「レイヤー図」
VS2010の独自ダイヤグラムであるレイヤー図では、レイヤーの依存関係を図示する。また、それぞれのレイヤーに対して、VS2010のプロジェクトをドラッグ&ドロップして、レイヤーとプロジェクトを関連付けることも可能だ。その後、「アーキテクチャの検証」という機能を実行すると、プロジェクト間の依存関係がレイヤー図で定義された依存関係に反しているものはエラーとして出力される。この機能により、設計段階でのレイヤーアーキテクチャが、実装段階で順守されているかどうかを自動的に検証することができる。
使用方法や解説が豊富
VS2010の製品版が提供された場合、Visual Studioの既存ユーザー数が多いことやマイクロソフトの開発者支援サイト「MSDN」が提供されていることなどから、「オンラインでの情報収集がしやすい」というメリットが期待される。さらに同社によると、ハンズオンセミナーの開催、コードサンプルや勉強会キットの提供など、ユーザーが個別に学習を進められる環境も用意する予定だという。
差別化ポイントは「連携」「自動生成」
VS2010は、モデリングツールとして考えると「その機能の種類に物足りなさ」を感じるかもしれない。しかし、プログラム開発でよく使う図をサポートし、開発時の作業やプログラムとの関連を確保しながら利用することで、ほかのツールにはないトレーサビリティーを発揮することができる。
開発環境と密接に連携できる
従来、Windowsアプリケーションの開発にはVisual Studioが不可欠だったが、その設計段階では別のツールを使うことが一般的だった。VS2010にUMLモデリング機能が追加されたことで、Visual Studio単独でアプリケーションを設計することができる。さらに、別ライセンスであるサーバ製品「Microsoft Visual Studio Team Foundation Server」(以下、TFS)と組み合わせることで、モデルからソースコード、テストに至るまでの対応付けが可能となり、成果物や作業の一貫性、トレーサビリティーを保ちやすい。こうした点もツールを導入するメリットだといえる。
TFSとの主な連携機能
- WBS(作業分解図)などの作業項目と作成したモデルを対応付けられる
- ユースケースとテストなどのテスト項目と、作成したモデルを対応付けられる
- 作業項目とその担当者、対応ソースコード、変更セットなどを対応付けられる
- ソースコードとテスト項目・テストを対応付けられる
モデル自動生成対応言語
モデルやソースコードの自動生成など、ソースコードとの連携に対応している言語は、C#、VB.NETだ。これらの言語に対して、VS2010ではモデルからソースコードを生成したり(※)、ソースコードからモデルを生成したりすることが可能であり、モデルの修正とソースコードが同期する点もほかのモデリングツールにない魅力といえる。
※ コードの自動生成について、マイクロソフトはVS2010の標準機能ではなく、PowerToolというアドオンでの対応を計画している。
利用する際の課題
次に、VS2010におけるモデリング機能の課題を考える。
まず、VS2010を使ってモデリングする上では「モデルの関連線が直角にしか引けない」ことや「サポートしている図の種類が少ない」こと、「アクティビティー図の作成でレーンを書けない」ことなどの制約がある。例えば、アクティビティー図にレーンがない点は、このツールの対象がビジネスプロセスではなく、プログラムのシーケンスレベルに限定されているからだと考えられる。VS2010は現状、UMLモデリングの学習や高度なモデリングには向かない点がある。
その一方で、UMLを使った開発をこれから始める開発者にとっては「今回サポートされた図があれば、十分にUML開発が可能だ」ともいえる。VS2010ではマイクロソフトが想定するアプリケーション開発における開発プロセスを背景として、そこで必要となる図を最低限搭載したという印象を受ける。
また、プログラム開発環境としては無償版のExpressエディションも用意されているが、モデリング機能はUltimateエディションでしか利用できない。そのため、モデリングを中心に(またはモデリングだけを)行いたいユーザーにとっては、VS2010をモデリングツールとして使用するには不向きな点もあるだろう。今後、モデリングを中心に行う開発者のためのエディションが出ることを期待したい。
プログラム開発環境として多くの企業で利用されているVisual Studio。開発環境とモデリング環境の親和性の高さを考えると、このツールのモデリング機能は今後、脚光を浴びるだろう。
著者紹介
今田忠博(いまだ ただひろ)
株式会社豆蔵 BS事業部 コンサルタント
SIの現場でSE、PMを経験。SI現場で悲惨な体験をし、「現場を効率的にしたい」と2004年に豆蔵に移籍。アーキテクトやフレームワークの設計・実装、PM支援、要件定義コンサルタントなどの業務を経験し、「そもそも要求が間違っていると、その後いくらがんばっても幸せになれない」と理解する。現在、要求から設計、実装をつなぐ方法を模索中。現在はSilverlight業務アプリのフレームワークを設計・実装している。
著書に『Trac入門』(共著/技術評論社)、記事に『5分で絶対に分かるプロジェクト管理』(@IT)、『業務フローリファクタリング』(@IT)などがある。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Excel至上主義」の終わらせ方 丸2日の手作業地獄から情シスと現場を救うには
-
2
「Microsoft 365のセキュリティ運用」に関するアンケート
-
3
取手市がVDIと決別した理由 更改費用「4倍超」を約1.7倍に圧縮
-
4
急増する「AIはこう言ってる」マン 判断を狂わせる「AI忖度」を防ぐには?
-
5
221人調査で分かった「情シス最大のストレス」は?
-
6
「Salesforceのテスト自動化ツール」に関するアンケート
-
7
IT製品の導入に関するアンケート「サーバ&ストレージ」編
-
8
「データストレージの活用方法」に関するアンケート
-
9
「AI時代の統合基盤・エンタープライズAI管理」に関するアンケート
-
10
自宅のWi-Fiが「遅い」「途切れる」本当の原因は? Dellが推奨する鉄則
ホワイトペーパーランキング PR
-
1
年収2000万「クラウドセキュリティのプロ」になれる資格とは
-
2
セキュリティソフトをすり抜ける標的型攻撃メール、不審メールの見破り方とは?
-
3
Windows Updateの通信集中で回線が逼迫、ネットワーク刷新事例に学ぶ解決策
-
4
財務を戦略的組織へ進化させるAI活用術、4つの主要な障壁と解消方法
-
5
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
6
“あのファイル転送”で暗躍するノーウェアランサム
-
7
標的型攻撃メールを見破るには? サンプル文面を例に傾向を解説
-
8
商用利用の安全性を確保し大量のコンテンツを高速で生成する、AI活用の秘訣
-
9
マンガで解説、1日で生成AI環境を構築できるワークショップの中身とは?
-
10
Dark AIが台頭する時代の新発想、「より高度なAIで対抗する」具体的方法とは?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー