Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版)
マイクロソフト ビジュアル スタジオ 2010
機能概要
Visual Studio 2010 とは
アプリケーション ライフサイクルにおけるすべてをカバー
多様なアプリケーションの開発において高い品質と生産性を実現する統合開発環境
【Visual Studio 2010 の 4 つの特長】
1. 多様なアプリケーションの実現Web ゕプリケーション、Windows ゕプリケーション、Office ゕプリケーション、サーバーサド ゕプリケーショ ン、クラウド ゕプリケーションなどクラゕント サドからバックエンド システムまで、さまざまなゕプリケー ション形態を 1 つの統合開発環境でカバーしています。ビジネスの要件は多種多様であり、1 つのゕプリケーショ ン形態ですべての要件を満たすことはできません。ビジネスやユーザーの視点に立った最適なゕプリケーション形 態を選択することが重要です。 2. 一貫したフレームワーク、ツールの提供 多様なゕプリケーション形態をカバーしているとしても、その開発のスタルに一貫性が無い場合、生産性が低下 するとともに品質にバラつきがでます。Visual Studio、および開発、実行基盤である .NET Framework では、例 えばユーザーンターフェスをデザンする場合は、コントロールをドラッグ & ドロップで張り付けたり、暗号 化を行う場合には同じ API を使用するなど、開発のスタルに一貫性を持たせており、生産性や品質を確保するこ とができます。
3. 最新技術トレンドの採用
Visual Studio は最新の技術トレンドや開発手法にいち早く対応し、進化したテクノロジを活用したゕプリケーショ ンを実現します。フロント エンドでは、魅力的で操作性が高いリッチなゕプリケーション (RIA: Rich Internet Application) を実現するための強化、バックエンドではマクロソフトのクラウド OS である Windows Azure™ への標準対応などが代表的な強化です。その際、ゕプリケーションの種類の違いはもちろんのこと、新しい技術の 変化による影響を最小限に、IT エンジニゕがこれまで培ってきた知識や経験、そして企業にある IT 資産を最大限 に活用できるよう考えられています。
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版) IT への高まる要求に合わせて、ソフトウェゕと同様、ハードウェゕやプラットフォームも進化しています。Visual Studio はその進化したハードウェゕおよびプラットフォームの能力を活用するための機能を提供し、そのパワーを 最大限引き出すことができます。ハードウェゕの進化への対応として、近年普及が進むマルチコゕ CPU を活用し てゕプリケーションのパフォーマンスを高めたり、プラットフォームの進化への対応として、マルチ タッチやジャ ンプ リストなど Windows 7 の新機能を活用した魅力的で操作性の高いゕプリケーションの実現などがあげられ ます。
Visual Studio 2010 の機能詳細
ここでは Visual Studio 2010 の機能を「Visual Studio 2010 で何が実現できるようになったか」という “ゕプリケーション 開発の強化” の視点と、「Visual Studio 2010 自身がどう強化されたか」という “統合開発環境の強化” に分けて解説します。
アプリケーション開発の強化 1. 複数の .NET Framework に対応
ゕプリケーションの実行や開発の基盤となる .NET Framework。ゕプリケーションの要件によって、開発のターゲッ トとする .NET Framework のバージョンが異なることがあります。Visual Studio 2008 より、複数のバージョン の .NET Framework に対応し、幅広いゕプリケーション開発のニーズに対応することができるようになりました。 Visual Studio 2010 ではさらに最新の .NET Framework 4 に対応し、最新ゕプリケーション開発にいち早く対応す
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版)
ることができます。
具体的には以下のバージョンの .NET Framework に対応します。
.NET Framework 2.0 : Visual Studio 2005 がターゲットするバージョン
.NET Framework 3.0 : Windows Vista® や Windows Server 2008 に標準搭載されたバージョン .NET Framework 3.5 : Windows 7 や Windows Server 2008 R2 に標準搭載されたバージョン
.NET Framework 4 (Visual Studio 2010 より) : Visual Studio 2010 とともにリリースされた最新バージョ ン 2. 多様なアプリケーション開発の実現 ビジネスやユーザーの要件はひとつとして同じものはありません。そのため、要件やニーズに最適なゕプリケーショ ンの形態を選択する必要があります。しかし、ゕプリケーションの種類ごとに開発のスタルや利用するツールが異 なると、生産性が低下したり、品質にばらつきが生まれます。 Visual Studio 2010 はクラゕント サドはもちろん、サーバーサドで動作するゕプリケーションの開発に対応 するとともに、さまざまなゕプリケーション開発において統一的な開発スタル、機能をもっているため、開発者の 知識や経験を最大限活用することができます。 Visual Studio 2010 では主に以下のゕプリケーションの開発に対応しています。 (1) Windows アプリケーション より高い操作性を求める場合、ハードウェゕの機能を活用する場合、オフランでも動作可能とする場合におい て、Windows ゕプリケーションは最適です。
Visual Studio 2010 では、次世代の Windows ゕプリケーションの基盤として期待されている Windows Presentation Foundation (WPF) ベースのゕプリケーションにおいて、カレンダーやデータの表形式の表示 (グ リッド) などのコントロール部品を提供することによって、特に業務ゕプリケーションの開発を支援します。 さらに、Windows 7 の特長である、ジャンプリストなどを最大限活用したゕプリケーションを構築するために 必要となる機能を提供します。 (2) Web アプリケーション さまざまなオペレーテゖング システムに対応しなければならないケースや、ユーザーが利用する場所に依存しな いゕプリケーションを構築する場合、Web ゕプリケーションが有力な選択肢となります。
Visual Studio 2010 では、Web ゕプリケーションの基盤である ASP.NET ベースのゕプリケーション開発のた めの機能を強化しました。業界で多く採用される MVC パターン手法に基づく開発を実現するための拡張や、 Web ゕプリケーションの配置を容易にするための機能強化が代表的です。
また、操作性や魅力的な Web ゕプリケーション (Rich Internet Application: RIA) を実現するための軽量なラ ンタムである Silverlight に対応したゕプリケーション開発の機能を標準で取り入れました。
(3) Office アプリケーション
Excel や Word をベースにしたゕプリケーションです。利用者にとって馴染みのあるユーザーンターフェス を提供したり、利用者自身がゕプリケーションのデザンを行ったり、印刷や表計算といった機能を活用する場 合に Office ゕプリケーションは最適な選択肢です。
Visual Studio で は 、 Excel や Word と い っ た Office 製 品 を 活 用 し た 業務 ゕ プリ ケ ー シ ョ ン を .NET Framework ベースで構築するための機能を提供しています。Visual Basic や C# といった .NET Framework
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版)
対応の言語を利用できるほか、.NET Framework 自身がもつセキュリテゖや信頼性を利用できるのがメリットで す。Visual Studio 2010 では、Office 2007 はもちろん、最新の Office 2010 対応のゕプリケーションを構築 することができます。さらに SharePoint 2010 にも対応。SharePoint の Web パーツや、ワークフローといっ た機能を拡張し、企業に最適な業務 Web ゕプリケーションを構築することができます。
(4) Windows® Azure™ アプリケーション
近年、次世代 IT の基盤として、クラウド コンピューテゖングが注目されています。
マクロソフトでは、Windows Azure というクラウド OS を提供していますが、その Windows Azure 対応 のゕプリケーション開発基盤が Visual Studio です。
Visual Studio は、新しいテクノロジの登場であっても、開発者がこれまでの .NET ゕプリケーション構築の知 識や経験を最大限活用することができるように、開発スタルを可能な限り統一しています。
Visual Studio 2010 では、Windows Azure 対応のゕプリケーションを Windows Azure 上に容易な手順で配 置するための機能を搭載しています。
3. マルチコア対応アプリケーションの開発
IT 環境の変化に合わせてハードウェゕも進化しています。特に近年 CPU 進化の方向性がクロック数の向上からコゕ 数の増大へと大きく変化した現在、ソフトウェゕの性能を向上する技術として、並列処理を実現する、いわゆる並列 化プログラミングの重要性が高まっています。
Visual Studio は、新しいテクノロジの登場であっても、開発者がこれまでの .NET ゕプリケーション構築の知識や 経験を最大限活用することができるように、開発スタルを可能な限り統一しています。
Visual Studio 2010 では、新たに .NET Framework 4 で搭載された並列プログラミングの機能を活用したゕプリ ケーションの構築を支援します。
統合開発環境の強化 【設計の強化】 4. UML への対応
Visual Studio 2010 Ultimate は業界標準のモデリング言語 (※設計図) である UML (統一モデリング言語、UML: Unified Modeling Language) に準拠したツールを提供します。
モデル図の作成機能が Visual Studio 2010 に搭載され、UML 2.1 で定義されているモデル図のうち、代表的な 5 つ の UML 図 (クラス図、シーケンス図、ユースケース図、ゕクテゖビテゖ図、コンポーネント図) を作成することが できます。 5. 設計図と開発プロジェクトにおける作業との連動 モデル図と、要件、テスト、タスクといった開発プロジェクトにおける作業項目を関連付けて管理することができま す。これにより要件が確実に満たされているか、仕様変更が発生した場合にどのような影響があるかなどを網羅的に 把握することができます。 6. アプリケーションが設計通り作成されているか検証 ゕプリケーションの論理レヤー (※ゕプリケーションの概念的な構造) を設計するための機能を提供します。また
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版) コードが設計通り作成されているかを検証する機能により、プログラム上問題が無くても、例えば許可されていない レヤーへの呼び出しを行っている場合など、エラーとして検出することができます。これにより設計工程から開発 工程がスムーズにつながり、ゕーキテクチャ設計思想に準拠した堅牢なゕプリケーションを構築することができます。 7. 依存関係の把握 ゕプリケーションの関連性 (どのクラスが、どのクラスを呼び出しているかなど) をマトリクスや図など多様な角度で 可視化することができます。クラス間やゕプリケーション間の呼び出しの依存度を把握することで、例えば仕様変更 や保守、拡張において、どのプログラムを修正すべきか、どれくらいの工数がかかりそうか、どこをテストすべきか を、より正確に把握することができます。 8. コードの複雑度分析 コードメトリクスの機能では、コードの複雑度を解析し、コードの保守容易性を数値として提示します。これによっ て、クラスやメソッドを修正することによって、どれくらいの修正やテストが必要となるかを把握することができま す 【開発の強化】 9. マルチ モニターの対応 Visual Studio 2010 ではデザン画面やコード エデゖタをメン ウゖンドウから切り離し、別のモニター上に映す ことができます。Visual Studio 2010 は開発作業だけでなく、管理作業など、多くの機能が統合されていますが、マ ルチモニタへの対応により、複数のモニターを利用している開発者は、画面を広く作業領域を広げることができます。 10. コーディング機能の強化 コーデゖング作業はゕプリケーション開発で重要な作業であり、開発者は多くの時間を費やします。その効率化は開 発期間やコストはもちろんのこと、最終的に出来上がるゕプリケーションの品質にも大きな影響を与えます。Visual Studio 2010 はコードの記述や修正、および検索性を向上するためのさらなる機能強化により開発作業における生産 性向上に貢献します。 (1) コードの入力や検索性の向上 変数にカーソルを合わせるとすべてのンスタンスがハラトされて使用状況を把握できるとともに、これら ンスタンスにショートカットで移動することができます。 さらに、命名規約のパターンによって、メソッドやプロパテゖを効率的に検索したり、ンテリセンスの候補と して表示されます。(例: AddItemOrder であれば、頭文字の “AIO” で検索できます) また、変数の場合にはプレフゖックスを省略して検索したり、ンテリセンスの候補として表示されます。(例: txtName であれば “name” で検索することができます) (2) 呼び出しの関係性理解 (Visual C# のみ) 呼び出しの階層化によって、メソッドを呼び出している/呼び出されているメソッドを確認することができます。 実際にゕプリケーション起動することなくプログラムの実行フローを把握でき、修正の影響範囲やテストの必要 性をより容易に理解することができます。 (3) メンバーの逆生成
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版) 定義されていない呼び出しのコード (ンスタンスなど) を先に記述し、そこから実際のクラス、メソッド、プ ロパテゖ等を作成することができます。 コーデゖングの効率が向上するとともに、テスト駆動開発のプラクテゖスの実践においても有用です。 (4) コードを洗練 (リファクタリング) リフゔクタリングの機能を搭載。変数名を変更する際には、定義および使用しているすべての変数を一括変更し たり、特定のコードのブロックを切りだしてメソッド化するなど、コードを洗練する多様な機能を提供します。 保守性を高めるためにはコードの見直しが必要ですが、リフゔクタリングの機能によって、修正ミスのリスクを できる限り抑えながら、修正作業に取り掛かることができます 11. デバッグ機能の強化 デバッグは記述したコードが仕様通りに動作するかを確認する最初のステップとなりますが、この時点においては数 多くの潜在的な問題がコードに含まれており、通常その作業には多くの時間と労力を費やします。 Visual Studio 2010 はこれまで提供してきたデバッグ機能をさらに強化し、デバッグ作業におけるさらなる生産性向 上をもらたし、開発期間コストの削減、品質の強化に貢献します。 (1) 目的に応じたブレークポイントの使い分け ブレークポントごとにラベルをつけて管理することができ、ラベルごとに一括して有効化/無効化/削除をす ることができます。 デバッグ時には、状態の遷移のみを確認したい場合や、より詳細な情報を必要とする場合など、異なる目的があ るのが通常です。目的に応じてブレークポントをラベル付けすることにより、デバッグの効率が向上します。 (2) 特定の変数の値を画面上で監視する デバッグ実行時に任意の変数にマウスポンターを移動すると、その変数の実行時の値が表示されます。このデー タチップはピン止めして常に表示させることができます。デバッグを進めるにつれて現在の値が画面上に表示さ れますので、主要な変数の値の遷移を見ながらゕプリケーションの正当性を確認することができます。 (3) ダンプファイルの出力 デバッグ実行時にその時点のダンプフゔルをメニューから生成することができます。これによりさらに詳細に 踏み込んだゕプリケーションの検証を可能とします。 12. デバッグ情報の履歴保持 (IntelliTrace™) 新機能 IntelliTrace は、ゕプリケーションのデバッグ実行を履歴として記録し、デバッグ中に状態をさかのぼって確 認することができます。これまでは、既に通り過ぎたコードの状態を確認する場合には、もう一度デバッグをやり直 す必要がありました。これは積み重なると多大な時間を消費するとともに、データベースやシステムのデータ変更な ど、容易に繰り返し実行できない場合もあります。IntelliTrace はデバッグの履歴を保持することにより、デバッグの 効率化に貢献します。 さらに、この履歴は、保存して他のエンジニゕに渡すことができます。テスト担当者と修正担当者が異なる場合にお いては、これまで伝えることができなかった具体的な行ごとの遷移と実行結果をデバッグ情報として渡すことができ、” 再現しないバグ” の発生を軽減することができます。
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版) 13. コードの品質を検証 静的コード分析機能によって、コンパルやデバッグでは確認することが難しい、パフォーマンスやセキュリテゖと いった品質の観点からのコードの問題をツールで検出することができます。 ゕプリケーションのバグの大部分はコードレビューにて発見されています。これらコードレビューにてチェックすべ き品質の問題を半自動的に確認することが可能となり、コードレビューの効率化を促進します。 14. アプリケーションのパフォーマンス分析 ゕプリケーションの実行結果より、さまざまな詳細情報を取得してパフォーマンスの分析・チューニングに活用する ことができます。 実行時にボトルネックとなるロジックは「ホットパス」として視覚的に提示。パフォーマンス向上の際の大きなヒン トとなります。さらに、コード修整前後でのパフォーマンス比較データが示されるため、修整によるパフォーマンス 上の副作用を効率的に把握できます。 パフォーマンス分析機能は、スレッド単位でのパフォーマンスの取得も可能であり、マルチコゕ向けの並列プログラ ミングのパフォーマンス分析にも活用できます。 15. データベースの開発作業 データベースに対する変更をより安全かつ効率的に実施できるように、スキーマ情報を抽出しオフランでの開発を 可能にする機能を提供します。 たとえば、運用中のデータベースから抽出したスキーマ情報とデータを基に、保守開発とテスト用の環境を用意し、 安全にスキーマの変更を行うことが可能です。また、抽出したスキーマ情報は Team Foundation Server で管理を行 うことで、変更履歴の記録が可能になります。さらに、スキーマデータの比較機能を利用すれば、変更中のスキーマ と運用中のスキーマの比較を効率的に実施できます。 さらに、データベーススキーマに対するリフゔクタリング機能を提供。スキーマの変更を行う際に影響がある箇所を 判定し、該当箇所の変更の支援を行います。 【テストの強化】 16. 要件とテストの包括的な管理 テストの計画、実施、発生した問題の追跡をひとつのテスト専用ツール Test Manager 2010 で実施することができ ます。テスト担当者ごとのテスト状況を把握してリソース配分を行ったり、要件とテストを一対一で対応づけて、テ ストの進捗状況や品質の状況を要件と照らし合わせて管理することで、要件ごとにテストの重要度分析や機能実装の 優先度付けなどを判断することもできます。 また、テスト対象の環境 (サポート OS やサポート ブラウザなどの組み合わせ) を定義することで、ひとつのテスト ケースに対してテスト対象の環境ごとに状況を管理することができます。 17. 効率的なテストの実施 自動テスト、手動テストを Test Manager 2010 から実施することができます。手動テストにおいてはあらかじめ定 義したテスト ステップを実施することができ、問題が発生した場合には、ここからバグ票を作成し、修正担当者に割 り当てることができます。 その際、バグ票に、問題が発生した画面キャプチャを添付したり、テストを実施したシステム情報 (OS のバージョン、 サービスパックの適用有無、メモリ搭載量、CPU 利用率等) を自動的に記載したり、自動的に記録された実際の画面
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版)
操作のストリーミング (Windows Media 形式) 、IntelliTrace によるデバッグ履歴、問題が発生した時点のテスト環 境のスナップショットなど、修正作業に必要となる多くの情報を提供することができます。 これまでは、これら情報はテスト担当者が別途電話やメールで明示的に記載し、修正を担当する開発者は、これら情 報をもとに自分で再現環境を構築し、問題のある手順を実際に試してみてから修正に取り掛かる必要がありました。 この機能により問題状況の把握から実際の修正作業に取り掛かるまでの工数を削減することができます。 18. 単体テストの実行 実際のコードをもとにテストコードを自動生成することができ、さらにテストの実施においてはツールを使って複数 のテストを一度に実施したり、ソースコードのチェックン時にテストを自動的に実行させるといった活用が可能で す。 また、異なる入出力の条件によるテストが必要な場合においては、その条件を CSV フゔルやデータベースに定義 し、レコード数分自動的にテストを実施することが可能です。これは、しきい値のテスト (※最大値や最小値の確認) な どに活用できます。 テストコードを保持することによって、後で仕様変更が発生した場合における回帰テストの実施や、開発プロジェク ト終了後における保守や拡張時の再テストに活用することができます。 さらに、テスト駆動開発の実践においては、テストコードから実際のコードを記述したり、リフゔクタリングの機能 と合わせて活用することも可能です。 19. テストの網羅性の確認 (コードカバレッジ) 単体テストの実施によって、どれくらいのコードの動作が検証されたか、コードカバレッジの機能で確認することが できます。 動作が確認されたコードの割合を数値化することができるとともに、テストされたコードを色分けして視覚的に確認 できるため、より精度の高い単体テストの実施が可能になります。 20. データベース オブジェクトの単体テスト ストゕドプロシージャ、関数、トリガなどのデータベース オブジェクトもゕプリケーションを構成する重要な要素の ひとつです。Visual Studio 2010 には、ソースコードだけではなく、データベースオブジェクトの単体テストを実施 するための機能を提供します。 テスト対象となるデータベースオブジェクトを指定し、単体テスト生成のメニューを選ぶだけで、単体テスト用のス ケルトンコードが用意され、テストに必要となる情報を加えることで、単体テストを構築可能です。 さらに、単体テストにおける検証のためのロジックは、T-SQL はもちろん C# や Visual Basic にて作成できるため、 メンバーそれぞれが得意な言語を利用して適切なテスト作成を行えます。 21. 修正箇所に影響するテストを実施 開発の途中で仕様が変更となることがたびたびありますが、そのコードだけでなく、他のコードにも修正による副作 用が発生しないか、回帰テストを実施することが重要です。Visual Studio 2010 では繰り返し行われる回帰テストを 支援するためのテスト機能を提供していますが、すべてのテストを都度実行するのは時間と手間がかかります。 新しいテスト影響度分析機能は、修正箇所に影響があると思われるテストを洗い出しことができます。これにより効 率的に回帰テストを実施時することができます。 22. UI の自動テスト
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版) コード化された UI テストにより、ユーザーンターフェス (UI) の操作手順を記録し、再生することができます。 問題修正後の再現テストにおいては、記録済の操作手順を再実行することにより、複雑なテストの再現や、回帰テス トの実施を自動化することができます。 テスト可能なゕプリケーションの種類には制限があります。詳細については以下の URL を参照ください。 http://msdn.microsoft.com/ja-jp/library/dd380742(VS.100).aspx 23. Web アプリケーションの詳細なテスト Web ゕプリケーションの操作を記録し、その情報を基に繰り返し可能なテストを自動で生成できます。 これによって、問題修正後の再確認、後で仕様変更が発生した場合における回帰テスト (※修正の副作用で他に問題が 無いか確認する) の実施、開発プロジェクト終了後における保守や拡張時の再テストに活用することができます。 さ らに作成したテスト データを元に Web ゕプリケーションの負荷テストを実施することができます。 24. 負荷テストの実施 作成した Web ゕプリケーションのテストや、ビジネス ロジックの単体テストをもとに負荷テストを実施することが できます。 実行ユーザー数を段階的に増加させたり、さまざまなパフォーマンス カウンタを取得して詳細な分析を 行うなど、本格的な負荷テストが実施可能です。 さらに Visual Studio Team Agent 2010 と組み合わせることによ り、負荷テストの実施時において複数のコンピューターをグループ化し、それらを協調させながらより多くの仮想ユー ザーを生成することが可能になります。つまりグループ内の個々のコンピューターそれぞれが仮想ユーザーを生成し、 グループ全体として多数の仮想ユーザーによる負荷テストを実行できます。(分散ロード テスト) 単一のコンピューターを使用した負荷テストに比較すると、分散負荷テストでは、より多くのユーザーによりゕプリ ケーションが使用される状況をシミュレートでき、またその結果をより正確に得ることができるようになります。こ れにより、ミッション クリテゖカルなゕプリケーションの開発が効率化されます。 25. エージェントとコントローラーによる柔軟な仮想ユーザー数の調整
複数のコンピューターにより構成されたグループで協調した負荷生成を行うために、Visual Studio Test Load Agent ではエージェントとコントローラーを用意しています。エージェントである Test Load Agent は、テストの実行とシ ミュレートされた負荷を生成するために使用されます。一方、コントローラーである Visual Studio Test Load Controller は、エージェントの管理およびテスト結果を収集するために使用されます。コントローラーとエージェン トの関係は一対多の関係となり、一つのコントローラーに対し、複数のエージェントを関連付けることが可能です。 このゕーキテクチャにより、大規模な負荷を生成する際には、負荷生成のための役割を持つエージェントの数を増や すことで、仮想ユーザー数を柔軟に調整することが可能になります。 26. より本番環境に近いテスト データの生成 データベースのスキーマ情報をもとに、自動的にテストデータを生成することができます。その際、正規表現や、デー タ生成時に参照可能なデータを指定することで、特定のパターンのデータや、テーブル間のデータの割合 (例: 商品マ スターデータ 1 に対して、その売り上げデータ 1,000) といったより精度の高いデータの作成が可能となり、本番環 境を想定したデータを開発やテスト環境で生成、利用することが容易になります。 【管理の強化 ~ さまざまな開発プロジェクトの基盤】 27. 目的に応じたツールを提供
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版)
Studio Team Explorer Everywhere 2010 により Java ゕプリケーション開発者に開発環境を提供します。 また、ブラウザから Team Foundation Server の主要機能にゕクセスすることができる Visual Studio Team Web Access 2010 によりプロジェクト管理者や開発者に、より簡易的な管理機能を提供します。
28. クライアント OS における開発環境の提供
Team Foundation Server 2010 のンストール時に、基本構成を選択することで、Windows Vista 以降のクラゕ ント OS にンストールすることができます。基本構成ではゕプリケーション開発に必須となるソースコード管理、 タスク管理、プロジェクト管理、自動ビルドの機能を提供します。さらに詳細構成にし、Windows Server 上にン ストールすると、プロジェクト ポータルとレポーテゖングを含めたすべての機能を利用することができます。 29. テスト環境の仮想化 テスト環境を仮想環境として構築、共有でき、生産性を確保しながらソフトウェゕ品質の向上を可能にします。 仮想化によるサーバーリソースの有効活用でハードウェゕや運用コストを削減したり、環境構築やメンテナンスの一 元化により、人によるバラつき無い確実な環境を提供することができます。 さらに Test Manager 2010 によるテストの実施時には、問題が発生した瞬間の環境のスナップショットを取得し、 テスト担当者から開発者にそのまま受け渡すことができるため、環境に依存した問題であっても再現性が高まります。 【管理の強化 ~ 作業管理とプロジェクト管理】 30. 作業項目の管理 作業項目管理の機能ではタスク、バグ、変更依頼など、開発プロジェクトにおけるさまざまな作業の管理が可能です。 期限、担当者、進捗率、優先度といった基本情報から、作業の履歴、成果物、ソースコード、テスト結果などの添付 やリンクなど作業に関係する要素を関連付けて管理することができます。 また、作業項目の種類や、作業項目内の管理項目は独自に定義することが可能であり、開発プロセスに準拠したプロ ジェクト運営が可能になります。 31. 開発ポータルの提供 開発プロジェクトごとに専用の Web ポータルサトを作成することができます。このプロジェクトポータルを活用 することによって、チームメンバ間の情報共有やコミュニケーションを促進することができます。 このポータルサトではプロジェクトの成果物となるドキュメントの管理や、プロジェクトで発生するさまざまな問 題を関係者全員で共有したり、討論するためのデゖスカッションや掲示板などさまざまな機能が活用できます。 さらに、プロジェクトやチームの特色にあわせて柔軟にカスタマズすることができ、開発チーム全体の生産性向上 に貢献します。 32. 開発作業と連動した作業の管理
Team Foundation Server の機能は、Visual Studio のひとつのウゖンドウから操作することができます。このため 開発者はこれまで馴染んだ操作方法で、プロジェクトの様々な作業を行うことができます。
さらに、Visual Studio と Team Foundation Server を組み合わせて活用することで、コーデゖングやテストといっ た開発作業と、タスク、バグ、リスクなど様々な作業の管理をスムーズに連携させることができます。これによって、 開発者にできる限り負担をかけることなく、より自然で効率的な作業管理が可能となります。
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版)
プロジェクト メンバーによる開発作業やテストの結果は Team Foundation Server のデータベースに蓄積されます。 プロジェクト管理者は、自らプロジェクト メンバーから情報を聞き出してそれを進捗管理表に書き写すのではなく、 Team Foundation Server によって自動的に収集されたデータにもとづき、リゕルタムに進捗状況を把握すること ができます。
その際、プロジェクト管理者は Office Excel® や Office Project といった、既に使い慣れているツールを利用する ことができ、今まで培ってきたプロジェクト管理の効率性を妨げることなく、さらに予測可能性を向上させることが できます。 34. プロジェクト状況の可視化 レポーテゖングの機能によって、品質状況やバグの収束予測など可視化されたプロジェクト状況にもとづき、迅速か つ適切な判断を行うことができます。また、これらレポートは Web ページとして閲覧可能なだけでなく、PDF や Excel フゔルに変換して活用することもできます。 これらの機能によって、プロジェクト管理者は属人性が排除された詳細なデータに基づき、常に最新かつ多角的な視 点でプロジェクト状況を把握することができるとともに、プロジェクト管理にかかる負荷を軽減することができます。 【管理の強化 ~ 品質を高めるバージョン管理】 35. 堅牢なソースコード管理の基盤
Team Foundation Server は SQL Server をベースにしているため、高い信頼性や可用性を提供するとともに多重防 御によるセキュリテゖ構造を持っています。
36. 修正に関する多くの情報を記録
問題が発生した際、過去のチェックンでどのような変更が行われたのか追跡することがあります。この際、変更の 履歴が取られていなかったり、情報が分散していると時間とコストがかかります。
Team Foundation Server はチェックンごとに関連する情報をひとまとめにして記録し、後で追跡、確認すること ができます。(修正されたフゔルやフォルダ、変更日時、変更を行ったユーザー、チェックン時のメモ、関連する タスクやバグ表へのリンク等) この記録は変更したり削除することができないため、コンプラゕンス対応など、厳密 かつ確実な変更管理が求められる際に有用です。
37. 特定の開発者で開発途中のソースコードを共有
完成していないソースコードを、正式なチェックンによってプロジェクト メンバー全員に公開される前に、関係す る一部の開発者とだけ共有したいケースがあります。 Team Foundation Server は通常のチェックンと同じような 仕組みながら、未確定の変更をマスターフゔルとして反映せずにサーバーに一時的に格納するための方法を提供し ます。小グループの限定した共有や、コードレビューの際のフゔルの引き継ぎ、作業中断時にローカルコンピュー ターではなくサーバー内に安全に格納したいといった様々なニーズを実現します。 38. チェックイン時に必要条件を満たしているか確認 ソースコードをチェックンする前に、そのソースコードが品質や開発プロセス上のルールなど特定の必要条件を満 たしているか確認することは効果的です。
Team Foundation Server はチェックン時に、特定のテストが成功するか、セキュリテゖやパフォーマンスなど一 定の品質をクリゕしているか、作業の履歴が記録されているかなどをチェックし、条件を満たさない場合はチェック
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版) ンをブロックすることができます。 39. 継続的に統合作業を実施することで品質を高める (継続的インテグレーション) 統合作業を開発の初期段階から継続的に実施することで、問題が蔓延するのを未然に防ぐことができるとともに、問 題の追跡や修正にかかる時間やコストを最小限に抑えることができます。しかしこの継続作業を人の手で実施すると なると多大な負荷がかかります。
Team Foundation Server はソースコードがチェックンされたのを契機に、または一定間隔で自動的にビルドを実 施させることができます。さらに単にビルドを実施してゕプリケーションを生成するだけでなく、特定のテストが成 功するか、セキュリテゖやパフォーマンスなど一定の品質をクリゕしているかを、ビルドと合わせて自動的に実行、 確認することができます。
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版)
エディションごとの機能比較表
Visual Studio 2010 では、エンジニゕのニーズに応じて、さまざまなエデゖションを提供しています。 開発プロジェクトに携わる役割や工程に応じて最適なエデゖションを選択ください。 設計から開発、テスト、導入までゕプリケーション ラフサクルを広範囲にカバーし、高い品質を持つゕプリケー ションを、高い開発生産性を保ちながら構築するために必要となる機能を提供します。 ゕプリケーションの開発工程において、高い品質と生産性を維持しながらゕプリケーションを開発するために必要とな る機能を提供します。Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版)
プロフェッショナル エンジニゕ向けに、ビジネスの要件やユーザーのニーズに最適なゕプリケーションを選択し、そ れを構築するために必須の機能を提供します。
テストの計画から実施、発生した問題の管理まで、一連のテスト プロセス全般における専門的かつ包括的な機能を提 供します。
Microsoft® Visual Studio® Team Foundation Server 2010 は、開発プロジェクトの基盤として、ソフトウェゕ資 産の確実な管理と、プロジェクトの効率化を支援します。
Microsoft Visual Studio Test Load Agent を使用することで、複数のコンピューターをグループ化、協調させながら 負荷テスト用の負荷を生成できます。この機能を使用することで Visual Studio 2010 Ultimate が持つ負荷テスト機 能を拡張し、ミッション クリテゖカルなゕプリケーションの開発、テストを強力にサポートします。Microsoft® Visual Studio® Load Test Virtual User Pack 2010 は、負荷テストを実施する際に必要な仮想ユーザーに関し、本 1 製品 につき 1,000 仮想ユーザーのラセンスを提供します。
* Visual Studio 2010 Ultimate with MSDN では、無制限の仮想ユーザー数によるゕクセスが可能な Visual Studio 2010 Load Test Feature Pack を MSDN Subscription 特典として提供しており、別途 Visual Studio Load Test Virtual User Pack 2010 を購入いただく必要はありません。
Linux や Unix 上の Eclipse IDE から Team Foundation Server 2010 へのゕクセスを実現します。
表: Visual Studio 2010 の機能と対応エディション No 機能 U ltim at e Pr em iu m Pr of es sio n al Te st P ro fe ss io n al T FS 備考 旧 バ ー ジ ョ ン と の 比 較
アプリケーション開発の強化
1 複数の .NET Framework に対応 〇 〇 〇 強化Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版) 2 多様なゕプリケーション開発の実現 〇 〇 〇 (1) Windows ゕプリケーション 〇 〇 〇 強化 (2) Web ゕプリケーション 〇 〇 〇 強化 (3) Office ゕプリケーション 〇 〇 〇 強化 (4) Windows® Azure™ ゕプリケーション 〇 〇 〇 新規 3 マルチコゕ対応ゕプリケーションの開発 〇* 〇* 〇 マルチスレッドのプロ フゔリング機能 は Premium 以上 新規
統合開発環境の強化
設計の強化 4 UML への対応 〇 △* Premium ではモデル 図の読み込みのみ可能 新規 5 設計図と開発プロジェクトにおける作業との連 動 〇 必須 新規 6 ゕプリケーションが設計通り作成されているか 検証 〇 新規 7 依存関係の把握 〇 新規 8 コードの複雑度分析 〇 〇 開発の強化 9 マルチ モニターの対応 〇 〇 〇 新規 10 コーデゖング機能の強化 〇 〇 〇 (1) コードの入力や検索性の向上 〇 〇 〇 新規 (2) 呼び出しの関係性理解 (Visual C# のみ) 〇 〇 〇 新規 (3) メンバーの逆生成 〇 〇 〇 新規 (4) コードを洗練 (リフゔクタリング) 〇 〇 〇 11 デバッグ機能の強化 〇 〇 〇 (1) 目的に応じたブレークポントの使い分け 〇 〇 〇 新規 (2) 特定の変数の値を画面上で監視する 〇 〇 〇 新規 (3) ダンプフゔルの出力 〇 〇 〇 新規 12 デバッグ情報の履歴保持 (IntelliTrace™) 〇 新規 13 コードの品質を検証 〇 〇 強化 14 ゕプリケーションのパフォーマンス分析 〇 〇 強化Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版) 15 データベースの開発作業 〇 〇 テストの強化 16 要件とテストの包括的な管理 〇 〇 必須 新規 17 効率的なテストの実施 〇 〇 必須 新規 18 単体テストの実行 〇 〇 〇 19 テストの網羅性の確認 (コードカバレッジ) 〇 〇 20 データベース オブジェクトの単体テスト 〇 〇 21 修正箇所に影響するテストを実施 〇 〇 新規 22 UI の自動テスト 〇 〇 新規 23 Web ゕプリケーションの詳細なテスト 〇 24 負荷テストの実施 〇* *250 以上の仮想ユー ザー、およびリモート での負荷テストを実施 する場合には、仮 想 ユーザー数に応じ て Visual Studio Load Test Virtual User Pack 2010 が必要で す。 Visual Studio 2010 Ultimate with MSDN では、無制限の仮 想 ユーザー数によるゕク セスが可能な Visual Studio 2010 Load Test Feature Pack を MSDN Subscription の特典として提供して います。 25 エージェントとコントローラーによる柔軟な仮 想ユーザー数の調整 〇* 26 より本番環境に近いテスト データの生成 〇 〇 管理の強化 27 目的に応じたツールを提供 〇 〇 〇 必須 強化 28 クラゕント OS における開発環境の提供 〇 〇 〇 必須 新規 29 テスト環境の仮想化 〇* 〇* 必須 MSDN Subscription 付製品のみ 新規
Microsoft® Visual Studio® 2010 機能概要 (2011 月 5 月 13 日版) 30 作業項目の管理 〇 〇 〇 必須 強化 31 開発ポータルの提供 〇 〇 〇 必須 32 開発作業と連動した作業の管理 〇 〇 〇 必須 33 蓄積されたデータを活用したプロジェクト管理 〇 〇 〇 必須 強化 34 プロジェクト状況の可視化 〇 〇 〇 必須 強化 35 堅牢なソースコード管理の基盤 〇 〇 〇 必須 強化 36 修正に関する多くの情報を記録 〇 〇 〇 必須 強化 37 特定の開発者で開発途中のソースコードを共有 〇 〇 〇 必須 強化 38 チェックン時に必要条件を満たしているか確 認 〇 〇 〇 必須 強化 39 継続的に統合作業を実施することで品質を高め る (継続的ンテグレーション) 〇 〇 〇 必須 強化