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.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[LRM株式会社] 「標的型攻撃メール」事例・サンプル集 -
製品資料
[LRM株式会社] セキュリティ教育はなぜ「年間計画」を立てる必要があるのか? -
製品資料
[LRM株式会社] セキュリティの重要性が伝わらない…… 効果がない社員教育から脱却する方法 -
製品資料
[LRM株式会社] 「標的型攻撃メール訓練」導入ガイド 社員の意識を確実に高める仕組みの作り方 -
事例
[株式会社マクニカ] アイカ工業に学ぶ脆弱性対策 情シスが把握できずにいたアセットも正確に把握
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「VMware離れ」は本当か 3000社がVCF 9にかじを切った現実的な理由
-
2
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
-
3
Oracle巨大ITプロジェクトはなぜつまずいたのか 8年で導入1割、追加で170億ドル
-
4
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
5
「Microsoft 365」が乗っ取られる 跡形もなくMFAを破る手口
-
6
エンジニアが選考を辞退する本当の理由 7割が隠す“面接の違和感”とは
-
7
Netflixのバックエンドは「ほぼJava」 3000超のアプリを支える開発基盤の裏側
-
8
ISMSの“コンサル丸投げ”が招く数千万円の無駄 NTTドコモビジネスの脱出劇
-
9
AI基盤は本当に「オンプレ回帰」する? Broadcomの言い分と企業の本音
-
10
生成AIの7割が「別画面・コピペ運用」 “導入”は進んでも定着せず
ホワイトペーパーランキング PR
-
1
生成AIのハルシネーションを防止 回答精度を高めるセマンティックレイヤーとは
-
2
AIエージェントで多様な日常業務を効率化するための入門ガイド
-
3
5回聞くだけじゃ足りない? トヨタ式「なぜなぜ分析」の正しい実践方法
-
4
AIが「わざわざ使うツール」になっていない? 業務で自然に使う導線にする秘訣
-
5
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
6
「脱Excel」か「Excel快適化」か? 現場にやさしい業務改善の進め方
-
7
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
8
マンガで解説:「ゼロトラスト」「SASE」の必要性とメリット
-
9
5分で分かる「セキュア大容量ファイル転送サービス」の機能とメリット
-
10
情報セキュリティ対策早分かりガイド:25の自社診断で弱点と解決策を理解
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー