TFSUG 第3回( #tfsug ) 参加メモ

「TFSUG 第3回」へ参加した際のメモです.
個人的なメモですので,誤りや勘違いが多々あるかと思います.
その点,ご理解ください.

■プログラム

  • 19:00-19:10 杉本さん(@nasugimo)
    • 前説
  • 19:10-19:40 細谷さん(@yasuohosotani)
    • タイトル:Agile開発でTFSをカスタマイズしない使い方
    • 概要:

ツールの話題は、ツールの熟練者がプラグインやカスタマイズなどの工夫した
話が多いと思いますが、今回は"バニラで使う"ということで、「いかにTFSを
そのまま使えているか」というお話をしたいと思います。 「そのまま使う」
なのでTFS自体の話というよりは、私が行っているアジャイルな開発をプロセ
ス、プラクティス、ドキュメンテーション等の観点から説明し、それらが
「そのままのTFS」でどのように運用されているかを紹介させていただければ
と思います。

  • 19:40-20:10 清水さん(@__Black)
    • タイトル:プラグインで工夫してみる:ツール特集
    • 概要:

TFS自体には沢山機能があり、そのままでも相当気持ちよく使えますが、プラ
グインによってもっと気持ちよく使えるようになります。本セッションでは、
プロセスに関係なく共通的におすすめしたいプラグインのご紹介と、好みの
プラグインがなければ自作もできますよ〜というところまでお話できればと
思います。

  • 20:10-20:30:座談会
  • 20:30-20:50:Lightning Talks
    • @wadatka さん:TFS Advent Calendar
    • @matsukawar さん:「自動UIテストのカスタマイズ (操作間の待ちを考慮する)」

■感想

  • 企画してくださった方々,会場提供くださった日本マイクロソフト様,発表者・質問者の方々ありがとうございました.
  • TFSは多機能・重量級のソフトなだけに,参加者の聞きたいポイントが様々だったのは印象的
  • 細谷さんの発表から,バニラな状態でも結構利用できることを感じた.
    • アジャイル開発でなくとも利用できそう.作業時間登録などは開発方法とは無関係だろうし.
  • 清水さんの発表から,TFSの拡張はプラグインがあれば簡単,自作は敷居があることを感じた.

■資料

■参考

■メモ
□19:00-19:10 杉本さん:前説

  • バニラとトッピングの説明
    • そのまま使うか,カスタマイズするか.
    • コンフィグだけのものから,開発からおこなうものまでバニラじゃないものにも色々ある.
    • プロフェッショナルサービスにもバニラとトッピングの考え方が大切なのではないか.
    • アジャイル開発のメリット:VerisionOneの資料
      • 可視性,適応能力,ビジネス価値,リスク

□中村さん

  • TFS関係では大企業が多いのでアジャイルじゃない開発で利用している人も多い

□19:10-19:40 細谷さん:Agile開発でTFSをカスタマイズしない使い方

  • 細谷さんがおこなっているアジャイルな開発をプロセス、プラクティス、ドキュメンテーション等の観点から説明し、それらが「そのままのTFS」でどのように運用されているかを紹介
  • TFS使い方
    • プロセス,要求管理,設計・実装,レビュー,メトリクス
  • プロセス
    • チーム内イテレーションと公式イテレーションとの入れ子構造にしている.
      • 例:チーム内イテレーション2週間,公式イテレーション2ヶ月
      • 公式イテレーションは外に向かってDOCやプログラム見せたり,プロセス検証したりする.
      • 【Q】2ヶ月先の計画とのマッチングはどうするのか?
        • 公式とチーム内とのずれはチーム内イテレーション終了のタイミングでも修正していく
        • チーム内イテレーションの結果をもとに交渉をおこなう.逆に現在の状況をクリアにすることで交渉の道具とできる.
      • 【Q】動いているからこそ,状況がわかりにくい場合どうするか?
        • 機能数など数字で話ができるような関係性にしておき,その数字で説明する.→細谷さんより「直接の相手とは数値なしでもいいような関係性をきづいておきつつ、何らかの方法で数字で伝える」とのコメントいただきました.細谷さんコメントありがとうございました.
      • チームクエリに公式イテレーションを対応付けさせ,そのイテレーションの下にチーム内イテレーションを対応付けする.
    • 連動が不可欠
  • 要求管理
    • 初期要求分析をおこなったあとに,継続的な要求分析をおこなっていく.
    • 要求全体を把握できる最低限のDocを必要最小限の更新をおこなう.
      • 画面の絵は作るけど,個々のコントロールは書かないなど
      • 1枚画面をつくって,それと同じなら"それて同じ"と文で書くだけとか.
      • これをやっていくことで,使っている人たちも必要なモノがわかってくることもある.
    • 最新のプロダクト要求仕様書もいれておく
    • プロダクトのフィードバックはTFSからEXCEL経由の入出力でおこない,開発チームへ見せる.
    • チーム内イテレーションのスコープはTFSから設定していく.
  • 設計・実装
    • (一般的な)アジャイル開発のやり方
    • イテレーション計画,機能の振る舞い詳細化(エラーなど含め話しあう),などなど
      • 機能の振る舞い詳細化(エラーなど含め話しあう)はホワイトボードのメモなど自分たちがわかればOK
      • 機能の詳細化をして,タスクをTFSに登録する.
    • ペアプログラミング,TDD,CIなどはTFSを利用して簡単におこなえる
  • シェルブを使ったコードレビュー
    • コミットしなくてもチェックしてもらえる場としてシェルブがある
  • メトリクスの計測


□中村さん

  • バニラで利用している.EXCEL連動と多機能&連携しているのが良い.


□19:40-20:10 清水さん:プラグインで工夫してみる:ツール特集

  • プロセスに関係なく共通的におすすめしたいプラグインのご紹介と、好みのプラグインがなければ自作もできますよ〜という話
  • TFSのツール1:Power Tools
    • 定番中の定番
    • 運用・テンプレート編集の色々追加される.
      • バックアップとワークアイテムテンプレートを使っている.
  • TFSのツール2:build extensiosn
    • javaのビルドを支援する機能が追加される
  • TFSのツール3:MSSCCI
    • VSSインタフェースでTFSへアクセスする機能が追加される.
    • ゲートチェックインなどのTFSらしい機能は使えないが,リポジトリ統一はできる.
      • VB側とTFS側の2つのチェックイン作業が走ってしまうのは残念
  • TFSのツール4:TFS Time Sheets
    • 作業実績を細かく入力でき,かつ残存時間が自動的に変更される.
    • PowerToolsにあるProcessEditorを使うと,項目設定が簡単におこなえる
    • "タイムシート"というタブが追加される.
      • xml形式でタブ項目や名前を定義できる.ただし,入力項目の表示はソースに埋め込まれているので変えられない.
      • 日,作業時間,コメントを入力するタブが追加され,それらを入力することで,追加&残存時間が自動に行われる
      • 作業者が楽になる機能
  • Visual Studio Gallary, Codeples, TFS Adavent Calendarで探してみると良い.
    • MVPの人ブログ書いているなども参考になる.
      • bharry's WebLog
      • Ewald Hofman氏のブログ
      • 長沢さんのブログ
  • 見つからない場合は自作可能
    • .NET, Java
    • API情報はMSDNにある.英語.
    • Prof. TFS Server 2010という本も参照
  • サンプルとしてFindBugsの実行結果をビルド結果で見れるツールを作ってみた.ブログ参照.


□20:10-20:30:座談会

  • 中村さんが個人的に色々な人の話を聞きたい.
  • 英語の情報は多いが,日本語の情報が少ないので,機会を設けたい.
  • 有償ツールなので企業ベースであり,情報発信が難しいのかな.
  • 来月導入に関する勉強会やる.
    • 2/20(月)@品川
  • 出力先コントロールできないのか?
    • ビルド時のプロパティ内で変数を変更すればできる,はず.by libatyさん
  • SVNやGitとの違いが大きいのでハマる.スモールスタート用の参考に.
  • ストーリーで導入する事例が話せるといいのかな.by__Blackさん


□20:30-20:50:Lightning Talks

  • @wadatka さん:TFS Advent Calendar
    • TFS Advent Cal.の紹介
  • @matsukawar さん:「自動UIテストのカスタマイズ (操作間の待ちを考慮する)」
    • VS2010の機能の説明.TFSの話ではない.
    • 自動UIテスト記録時に操作感の待ちが記録されない.
      • 標準ではオフになっている..configファイルを書き換えることでオンに設定できる.
      • オン設定することで待ち時間が記録される.単純な操作感の待ちを記録する.
      • もしくは,APIで記録することができる.これの場合,任意のプロパティが可能.高度なテストも可能.
  • TFS環境移行に関してはPowerToolsを利用したバックアップ&リストアが手軽