Microsoftは、まもなくリリースされるVisual Studio 11で、ソフトウェアプロジェクトに関連するすべてのステークホルダに向けた開発プロセスを向上させる予定である。開発者、テスター、運用グループに対する要求は、複雑で常に変化している。 このチャレンジでMicrosoftは、“ソフトウェア構築における生産性と予測可能性”の改善による“アプリケーションライフサイクルマネージメント(ALM)" (PDF)プロセスを開発した
ALMは、以下の優先順位にフォーカスしている:
• チーム内のすべてのロールをまたいだ統合コラボレーション
• 無駄な作業を削減するためのタイムリーで実用的なフィードバック
• 手元のタスクを達成するための自然で適切なツール
• 透過的で、自由に採用できるアジャイルのベストプラクティス
MicrosoftのバイスプレジデントであるS.Somasegar氏は先日、まもなくリリースされるVS11の新しい機能がどのようにこのプロセスをサポートするかを説明した。
探索型テストとユニットテスト
開発者同士のコミュニケーションのためにチームエクスプローラウィンドウは、大幅に変更されている。ソフトウェアテスタは、レポートの報告に必要なマルチメディア(“ビデオ、オーディオ注釈、スクリーンショット...”)を含めることができる。VS11は、テスターの操作の完全なログを維持しており、バグを再現するためのアプリケーションの正確なステップを保存して、開発者へのレポートに含めることができる。
ユニットテストについては、バックグランドで継続的にユニットテストの実行が可能な新しいユニットテストランナー(Unit Test Runner)により、開発者は、リアルタイムでテストが成功したかどうかを知ることができる。テストの完了を待つ必要がないため、開発者の時間を節約することができる。
コードクローンの検出
C#とVisua Basicのアプリケーション開発者は、コードクローン(Code Clones)の検出機能の恩恵を受けることができる。これらは、“コードの共有ブロックにリファクタリングされるべき共通のコードブロック”である。 この検出技術は、Microsoft Researchが開発したセマンティック検索を利用している。-- これは単なるリテラルではない (コードの見た目だけでなく、意味を見て検索している)
チームコラボレーションとAgile開発の向上
Agile開発サポートと、VS11に含まれる方法論に関する向上。プロダクトオーナー(Scrumソフトウェア開発における顧客の声)は、動的なグループにプロダクトバックログの利用し、製品に組み込まれる機能のリストに優先度をつけることを可能にする。
機能の優先度を設定した後は、次のスプリント(製品開発の基本時間単位)にアサインすることができる。VS11は、総合的な開発チームの能力と、チームにアサインされた各開発者の能力の両方を追跡することができる。これは開発者の生産性が上回るか、下回るかを簡単に識別することができ、生産を最適化できる。
製品のステークホルダー(顧客/テスター/エンドユーザー/など)からのフィードバックをプロダクトオーナーから、適切な開発者に回すことができる。フィードバックを集中管理することで、次のスプリントが作成または、修正するためのガイドとしても使うことができる。