[アーカイブ] Disciplined Agile Delivery を TFS に実装してみた [Advent 12/20]
<オリジナル投稿 2012年12月20日 本ポストの情報はオリジナル投稿時点のものです。マイクロソフトの正式な見解や製品の仕様を保証するものではないことをご了承ください。>
このエントリーは、ALM Advent Calendar 2012 の 20日目です。また、ひとり気ままな Advent Calendar の 12/20 分でもあります。
今回は、IBM が提唱している Disciplined Agile Delivery (DAD) を TFS に実装してみます。といっても、元ネタがあり、それをもとに、日本語環境として実装してみたいと思います。
元ネタは、以下です:
DAD process template for TFS
DAD については、本家の情報をぜひご覧いただきたいのですが、簡潔にいうとアジャイルなアプローチのキモにあたる要素を取り入れたハイブリッドなプロセスのフレームワークといったところのようです。 Unified Process の特徴もあると感じています。独自のロールモデルもあり、なかなか興味深いですね。
さて、元ネタでは、TFS 標準のプロセステンプレートである MSF for Agile Development をベースにテーラリングをしています。
プロセステンプレート マネージャでアップロード
MSF for Agile Development 6.1 をダウンロードし、プロセスに手を加えて、それをアップロードしただけです。
チームプロジェクトの作成
「Disciplined Agile Delivery JPN」を選択し、チームプロジェクトを作成します。
チームプロジェクト名は、適当に入力しました。本来は、適切な名称をセットしてください。この名前はあとで変更できませんので、慎重に。
「Disciplined Agile Delivery」を選択します。
あとは、流れに従ってください。
Disciplined Agile Delivery for TFS
イテレーションは、DAD に沿って、「方向づけ」、「作成」、「移行」 としています。
また、「ユーザー ストーリー」に、「受け入れ基準」を新設しています。こちらは、HTML形式で、リッチテキストで表現できるようにしてあります。
これで DAD 実装と言えるか?
これはなんとも言い難いところです。私自身、十分に DAD をキャッチアップしきれていませんし。ただ、この元ネタでは、DAD とその位置づけを、ここで定めています。この範疇では DAD を実装できていると言えるようです。
また、単にプロセステンプレートをそれっぽくしたから、ということではなく、TFS が持つポリシーやバディビルド、継続的インテグレーション(ゲートチェックイン)の組み合わせで効果を発揮することとなるでしょう。また、.NET であれば、 Visual Studio の持つ、コード分析やスタイルチェック (StyleCop)、コードメトリックス、コードクローン検出、プロファイラや、単体テストからの負荷テストなどが生きてくるでしょう。これは、DAD に特化したことではないですが。
TFS のプロセステンプレートは、柔軟性もありますし、標準搭載の MSF for Agile, MSF for CMMI は、Microsoft Solutions Framework の名にふさわしく、汎用的に使える、テーラリングがしやすいフレームワークを形成してくれています。なので、今回の DAD のように、これらをベースにすることで、比較的容易に実装が行えるわけです。
また、Visual Studio Scrum のプロセステンプレートも検査と適応のフレームワークであるスクラムの実装ですので、フレームワークに独自の味付けを行うことができます。日本でよくあるケースは、予実はとりたいので、実績時間の項目をタスクとバグに追加するというのがありますね(それの良し悪しはここでは問わないこととします)。
まとめ
今回の実装で DAD を実装とは個人的にも言い難いかなと思います。DAD ではガイドを大切にしていると思いますので、そこはしっかりとしたガイドへのリンクやガイドのプロセステンプレートへの実装を行うべきでしょう。合わせて、ツールメンターも取り揃えておくべきでしょう。DAD なので。
DAD は、アーキテクチャ オーナーなど アジャイル モデリングの要素も取り入れたいしていますので、参考になる情報が多くあると思います。
それは、さておき、TFS のプロセステンプレートは、なかなか優れものだと再確認しました。開発ライフサイクル全般にわたる開発リソースについて同じ方式で、プロセスを組めること、その下地でもあり、実績も豊富な標準搭載のプロセステンプレートを活かせることは、導入/改善にとっても欠かせない判断材料となるのではないかと思います。
さて、明日の ALM Advent Calendar は、 @libaty さんですね。LT も早くよろしくお願いしますねw
ひとり気ままな Advent Calendar 一覧:
- 指折り数えて待てないエンジニアのための Visual Studio Advent Calendar
- TFS 2012 with Update 1 Power Tools 提供はじまる [Advent 12/1]
- Eclipse/CLI で TFS にどこからでもつなぐ Team Explorer Everywhere 2012 Update 1 提供はじまる~日本語 言語パックも提供 [Advent 12/2]
- TFS ビルドサービスを可視化する [Advent 12/3]
- ビデオで学ぶ Visual Studio 2012 (日本語でOK)[Advent 12/4]
- TFS Express 2012 with Update 1 をセットアップする [Advent 12/5]
- 自動ビルドでツイートする [Advent 12/6]
- TFS のビルドプロセスを自在に!ビルドアクティビティの設定方法と自動ビルドでツイートする方法 [Advent 12/7]
- 意外と知らない TFS のレポート機能と Excel 連携 [Advent 12/8]
- 意外と知らない Visual Studio からの Excel レポート作成 [Advent 12/9]
- 意外と知らない TFS のデータウェアハウスを手動で更新する方法 [Advent 12/10]
- Visual Studio 2012 Update 1 ALM 仮想マシンとハンズオン資料の提供はじまる [Advent 12/11]
- Team Foundation Service 12/10 (Sprint 40) 更新 [Advent 12/12]
- スクラムの特徴をあらわす亜流な図 [Advent 12/13]
- Team Foundation Server のポスターガイドを作ってみました [Advent 12/14]
- Team Foundation Service に権限のないユーザーでアクセスすると [Advent 12/15]
- TF Service アカウントのパスワードを忘れた!という場合の対処方法 [Advent 12/16]
- User Delight を意識した開発へ ~ あなたは、あなたの現場が見えてますか?[Advent 12/17]
- Team Foundation Service で Java の継続的インテグレーション Update 1 での進化! [Advent 12/18]
- Team Foundation Service – 管理者の変更とタイムゾーンの変更 [Advent 12/19]
- Disciplined Agile Delivery を TFS に実装してみた [Advent 12/20]
- 2012 レトロスペクティブ ~ 第一 四半期 [Advent 12/21]
- 2012 レトロスペクティブ ~ 第二 四半期 [Advent 12/22]
- 2012 レトロスペクティブ ~ 第三 四半期 [Advent 12/23]
- 2012 レトロスペクティブ ~ 第四 四半期 [Advent 12/24]