[アーカイブ] Visual Studio 11 Beta 注目してほしい機能~その可能性~その4

<オリジナル投稿 2012年3月29日 本ポストの情報はオリジナル投稿時点のものです。マイクロソフトの正式な見解や製品の仕様を保証するものではないことをご了承ください。>

この投稿は、プレリリース版について言及しています。ここに記載している内容は、現時点でのみ有効であり、今後変更される場合もあります。あらかじめご了承ください。
対象: Visual Studio 11 Beta

今回ご紹介するのは、Team Explorer の新しい機能です。
チームエクスプローラーは、TFS へ接続するためのもので、Visual Studio の IDE から使うことができます。TFS への開発者の窓口ですね。
Visual Studio 2010 までのチームエクスプローラーは、作業項目(ユーザーストーリー、タスク、バグ、テストケースなど)、ドキュメント、レポート、ビルド(自動ビルド、CI)、ソース管理(バージョン、ソフトウェア構成管理)がツリーで並べられていて、ここから、

  • To DO リスト
  • ソースコード
  • ビルド
  • レポート

あたりを見ながら開発するスタイルでした。これは、OSS や様々なツールを組み合わせている場合に、いろいろなリポジトリにいろいろなインターフェイスからつなぐといった「不自然」な開発作業の流れを生まないため、開発作業の効率化やストレスフリーに好評でした。
でも、Visual Studio 11 (Team Foundation Server 11) でのチームエクスプローラーは、さらに進化です。
私は、講演などでは、「やりたいこと駆動な開発スタイル」と言っていますが、「より自然」な流れの中で、開発ができます。
開発では、よくこういうことがあります:

  • 開発の途中で違うタスクを先にやらなければいけなくなった
  • コードレビューを待っている間、開発が止まる
  • タスクやバグと関連付けるソースコードを間違えた
  • 何がなんのタスクやバグのためかわからなくなったからまとめてコミットした

これらは、ありがちかつ、「仕方がない」と思っている人もいるでしょう。逆に「常識」と思ってケアしている方もいるでしょう。どちらも、技術的負債の蓄積、地味なコストの蓄積につながることになります。
11 のチームエクスプローラーは、これらが起きにく「自然な」流れの中で開発できるようになります。自然な流れとは、下記が一望できることで得ることができます。
image
これが新しいチームエクスプローラーの「My Work (担当作業)」です。
上から、

  • 今行っている作業(「処理中の作業項目および変更)
  • ペンディングしている作業(「Suspended & Shelved Work」)
  • To DO、作業リスト(「Available Work Items」)
  • コードレビュー(「コードのレビューと要求)」

これで、今やっている作業、割り込んできた作業、レビューしてもらっている作業が直感的にわかるようになります。このリストは、ソースコードの変更セットと作業項目(タスクやバグ)がセットになっています。要するに開発者は、自分の作業内容からでも、ソースコードからでもこれらを直感的に把握できることになります。操作も、ほとんどがドラッグ&ドロップです。
To Do から、作業したい項目を一番上にドラッグ&ドロップ
imageimage
あとは、ソースコードはいつも通り ソリューションエクスプローラー使って開発していれば、ここにファイルが追加されていきます。
さて、急ぎの仕事が入ってしまい、今行っている作業をペンディングしないといけない場合です。その場合は、なくなく今までの開発環境を作り直さないといけなくなります。たとえば、今の仕事だと、扱うソースコードが異なるというだけでなく、ウィンドウなどの配置など含めて、仕事に依存することがあるかしれません、
image ってレイアウトで開発するのが効率がいいのと、
image
というスタイルがいい場合などです。単体テストエクスプローラー(※そのうち取り上げますね)の位置が違うだけですが、こういうウィンドウの
「配置も中断により変わるとイラッときますし、効率を落とします。
My Work の作業中断は、途中までのソースコードを取っておいてくれます。それだけでなく、開発環境のレイアウトなども取っておいてくれます。したがって、別の作業を行ったあとでも、もともとしかかっていた仕事をそのままの環境から続けることができます。
image 「中断」とやると、
image
作業環境自体がすっきりとしました。そして、前にしかかっていたタスクを戻してみると、
image
といった感じに、そのときの途中の状態から仕事を再開できます。
こういった直感的な仕事の自然な流れで開発ができるようになる、チームエクスプローラーをぜひお試しください。