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
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
2
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
3
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
4
「IBM iはDXのボトルネック」は誤解 意外と知らない今風モダナイズの効果
-
5
「朝8時にバッチが終わらない」データ爆発の危機をJPX総研はどう乗り越えたか
-
6
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
-
7
AI導入後に発覚する「社内文書を読めない」問題 情シスは何を直せばいい?
-
8
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
9
AIの導入効果はどう測る? DMM.comのエンジニア組織に学ぶ効果検証のノウハウ
-
10
「Wi-Fi」は“ネット接続が不十分”な地域の救世主になるのか?
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー