74
開発キックオフ時に マネージャが行うべき 11のこと Visual Studio Online & TFS 使い始めと HOME 画面の構成 1 ソフトバンク・テクノロジー株式会社(シニアエンジニア)古賀 慎一 20153月版 Copyright© 2015 Shin-ichi Koga All Rights Reserved.

開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

  • Upload
    -

  • View
    1.514

  • Download
    1

Embed Size (px)

Citation preview

Page 1: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

開発キックオフ時にマネージャが行うべき

11のことVisual Studio Online & TFS 使い始めと HOME 画面の構成

1

ソフトバンク・テクノロジー株式会社(シニアエンジニア)古賀慎一

2015年3月版

Copyright© 2015 Shin-ichi Koga All Rights Reserved.

Page 2: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

実務で Visual Studio Online(VSO)・TFS を使う時

最初に何をすればいいの?とりあえず使ってみたいんだけど

2

Page 3: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

キックオフミーティングを省いてはいけない様に

実務で VSO・TFS を使うなら

省いてはいけないことがあります

3

キックオフに間に合わせよう

Page 4: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

このスライドのゴール

※本スライドの対象者は プロジェクト・マネージャ、リーダー、あるいはその候補者

VSO・TFS を使い始める具体的な準備 のイメージを持つ

少人数での練習が出来るようになる

自社案件でVSO・TFSを「とりあえず」採用しても失敗しない

十分に準備してキックオフをむかえよう!4

Visual Studio Online / Team Foundation Server

Page 5: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

アジェンダ:最初にやるべき11のこと+1

1. VSO・TFSプロジェクトの作成

2. Welcomeページの作成

3. イテレーション期間の作成

4. Current クエリの修正

5. 構成管理(分岐)の初期準備

6. チェックインポリシーの設定

7. VSプロジェクトの作成・分岐

8. 自動ビルド・自動テストを構成

9. クエリの作成とチャートの表示

10.ユーザーの登録

11.チーム開発開始

☆スプリントが終了したらやること

5

Page 6: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

1. VSO・TFSプロジェクトの作成新しい開発のための Team Foundation Server を用意する

6

Page 7: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

練習用に TFS を用意しましょう!

いきなり本番の VSO・TFS でプロジェクト用の準備をするのは危険です

練習のためのクラウド VSO かオンプレTFS を用意

リーダーだけで無く、メンバーが慣れるためにも

新規案件の TFS とは別に、自由に使って試せる TFSを用意しましょう

このスライドでは新たに VSO を使うシナリオで説明します 7

Visual Studio Online / on-premises Team Foundation Server

Page 8: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

VSOアカウントを作成

「アカウント = URL サブドメイン部分」つまり1サイトが作られます

https://TfsAccountName.visualstudio.com/

※既に名前が使われていたら、もちろん作れません

https://visualstudio.com/ にアクセスして「無料アカウントを今すぐ作成」

※ 5名まで無料で使えます

※ MSDNユーザーは何人でも無料で使えます 8

本番用サイトでは練習したくない

Page 9: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

TFSプロジェクトを検討

アカウントの下に複数プロジェクトが作れます

https://TfsAccountName.visualstudio.com/

ProjectName1・・・案件1用

ProjectName2・・・案件2用https://TfsAccountName.visualstudio.com/DefaultCollection/ProjectName/

VSOではオンプレと違ってプロジェクトコレクションは増やせません(※DefaultCollection の1つだけ)

9

どう分けるか?練習しながら決めよう!

Page 10: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

TFSプロジェクトを3つ以上作ろう

開発プロセステンプレートを選択して TFSプロジェクトを作成

3種類、それぞれ作って練習に使いましょう

10

※テンプレートの違いはこのスライドを参考に

スクラム開発を始めよう!TFS を使った日常コミュケーションとチームワーク

http://www.slideshare.net/shinichikoga355/102-ver4

この名前は TFSアカウント(プロジェクトコレクション)内で重複しなければ使えます

Page 11: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

2. Welcomeページの作成READM.md ファイルにキックオフ資料の内容を記載して共有し続ける

11

Page 12: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

HOME - Overview と Welcome の役割

最初のページ Overview は

現在を「見える化」するダッシュボード 隣の Welcome ページはこの TFS の「使い方やルール」を示す

12

Page 13: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

README.md ファイルをソース管理直下に追加

作成は README.md をテキストで作るだけ

Markdown 構文(Wiki 形式)

以下のサンプルをテンプレートとして使ってください

TFS Project Welcome pages(README.md)とチェックインポリシーに指定する静的コード分析ルールセットhttps://code.msdn.microsoft.com/Welcome-pagesREADMEmd-75566110

13Welcome ページに何を記載するか?

Page 14: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

Welcome ページに載せるべき内容は

キックオフ資料の内容です

14

Page 15: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

キックオフ資料のアジェンダ例

プロジェクトの目的

システム概要

プロジェクトの日程・コスト

プロジェクト体制

プロジェクトメンバーの自己紹介

プロジェクト管理方法

レポーティングシステム

各種会議体

Q&A

15

プロジェクト・マネージャの「やってはいけない」

[計画編]キックオフ・ミーティングを省いてはいけない より引用http://itpro.nikkeibp.co.jp/article/COLUMN/20080523/303900/

Page 16: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

オープンソース README.md の役割も参考に

何が出来るのか?

どうやって使うのか?

どうやって参加するのか?

ライセンスは?

Document

Ticket

Deploy

Test

16

SOTA

わかりやすいREADME.mdを書く より引用

http://deeeet.com/writing/2014/07/31/readme/

Page 17: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

キックオフ資料と同等の情報をいつでも誰でも

最新の情報で「見える化」しておくことが Welcome ページの役割

社外向けの内容:お客様がそうだと思っている事

社内向けの内容:開発メンバー全員がそうだと思っておくべき事

開発スコープ・体制などに変更があったら、キックオフ資料を更新して共有しますよね?

そのときに Welcome (README.md) も更新します

17

途中参加者に古い資料を渡していませんか?

Page 18: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

3. イテレーション期間の作成スクラム開発でもウォーターフォールでも、開発期間を明確に示す

18

Page 19: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

タスクの期限はイテレーション期間で扱う

実はバックログ・タスクには

期間(期日)がない

イテレーション期間の子供

=期間内に終わらせる

「スクラム開発を始めよう!

TFS を使った日常コミュケーションと

チームワーク」35ページを参照

http://www.slideshare.net/shinichikoga355/102-ver4 19

Page 20: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

クエリで「現在の○○」を取得するために必要

標準で共有クエリに登録されているクエリ

現在のアクティブなバグ, タスク・・・

を取得するための条件として

「イテレーション期間」が使用されます

20

Shared Queries

Iteration Path

Page 21: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

お奨めは Current / Future / Past 内に @001

Current / Future / Past を作成

Future 内に @001 から連番で作成

(数ヶ月分、あるいは全期間分作ります)

現在の期間を Current の内に移動

(最初は @001)

※イテレーション期間は HOME の

Configure schedule and iterations... を押して設定 21

Page 22: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

必要があれば土日を開発可能な日に変更する

イテレーションの設定より先

に変更しましょう

(※デフォルトだと土日を避けて、

日付の候補が自動入力されるため)

完了見込みの計算にも使用されます

22

※管理者で(右上の歯車のアイコン)を押して Control panel に入り、Team Name のリンクをクリック、

Members が表示されているので、隣の Settings をクリックすると変更出来ます

Page 23: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

期間は一定、ウォーターフォールならフェイズ

ウォーターフォールならフェイズ(WBSの大・中項目)に合わせます

アジャイル・スクラム開発では1週間~3週間の固定

個人の趣味の開発であれば「月毎」にするのもおすすめです

入力した期間よりも先の期間を作成するのを忘れないために、Outlook 繰り返し予定を作成しましょう

23

Page 24: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

4. Current クエリの修正いつでも「現在」のタスクやバグが「見える化」されていること

24

Page 25: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

クエリのイテレーションパスを指定を親に変更

標準では ProjectName\Release 1\Sprint 1 特定の期間が指定されている

25

ProjectName\Current に変更

Current の子が変更されても

(@001から@002になっても)

常に「現在の○○」が取得できる

Page 26: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

最初の機能・バックログ・タスク・バグを登録

イテレーション期間に追加

「現在の○○」クエリが動作しているか?確認

「スクラム開発を始めよう!

TFS を使った日常コミュケーションと

チームワーク」36~55ページを参照

http://www.slideshare.net/shinichikoga355/102-ver4

26

Page 27: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

5. 構成管理(分岐)の初期準備最初にフォルダを作成して、意図を示しておく

27

Page 28: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

お奨めの「分岐」は D・M・P\@001

ソースバージョン管理では開発用に分岐、リリース用に分岐が必須

28

M : メインブランチ

D\@001 : 開発用ブランチ

P\@001 : リリース用ブランチ

マージ ( merge )

分岐 ( branch )

分岐 ( branch )

最新ソースコード(VSO・TFSで自動ビルド・自動テスト)

リリースに使うソースコードリリース毎に新しいブランチ

開発するソースコード

Page 29: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

名前はなぜ M や D\@001 がお奨めか?(1)

分岐のパスは、そのまま Visual Studio の作業フォルダに

(C:\users\UserName\FolderNameが先頭に追加され、さらに bin\Debug 内にビルドされる)

パスが長いとビルド出来ない

ビルド出来ても Azure 発行が出来ない事がある(一時生成ファイルの名前が長い)

ビルドサーバーでのビルドや、Release Management でリリース出来ない事がある

パスは出来るだけ短くしておきたい

M/SolutionName ⇒ P/@001/SolutionName 29

Page 30: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

名前はなぜ M や D\@001 がお奨めか?(2)

「自由に名前をつけて良い」とするとわかりにくい

TFS や Visual Studio で ABC 順に並ぶ画面が多く、新旧がわかりにくい

人によって名前の付け方が違うと何の開発か?わからない

命名規則を作らなければならない

イテレーション期間と同じにすると時期がわかりやすい

(D\@001 が何の開発だったか?は、WORK でバックログ・タスクを見ればわかる)

30

Page 31: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

M全体を分岐するのがお奨め

Mの中にソリューションフォルダを作成

M全体を D\@001 や P\@001に分岐

メリット

サブフォルダを分岐すると、親フォルダ全体でマージできない

操作回数が少なくてすむ、分岐漏れ・マージ漏れを防げる

コード分析ルール(RuleSets)など相対パスが維持しやすい(※後述)

31

TFS Project Name

BuildProcessTemplets

D

@001

@002

@003

@003-2

M

Solution Name

Solution Name

P

@002

@004

Solution Name

RuleSets

RuleSets

RuleSets

Page 32: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

なんとしても最初に D・M・P フォルダを作成

一番最初に M を作っておかないと、

ソース管理直下にソリューションが乱立して、

全体を1回で分岐できなくなる

リリース事故のリスク

分岐フォルダとソリューションフォルダが混ざって名前順に

一度に分岐・マージできないので漏れが起きる

相対パスのずれによる事故 32

TFS Project Name

BuildProcessTemplets

Solution Name1

RuleSets

Solution Name2

Solution Name3

Solution Name4

Page 33: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

最初の D・M・P を作成して、サンプルの分岐を

まず最初にM・D・Pフォルダを作成

Mの中にサンプルソリューションを作成

M全体を D\@001 と P\@001に分岐

コード分析ルールセットも分岐(※後述します)

ソースバージョン管理について、最初にこれだけは絶対準備しましょう!

33

TFS Project Name

BuildProcessTemplets

D

@001

M

Solution Name

Solution Name

P

@001

Solution Name

RuleSets

RuleSets

RuleSets

Page 34: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

6. チェックインポリシーの設定メモリーリークするソースコードを VSO・TFS にチェックインさせない

34

Page 35: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

静的コード分析を有効にすれば

メモリーリークなど重大なバグを防げる

スペルミスや名前の付け方のバラツキによる誤解や事故を防げる

わかりやすい設計が身につき、バグが起きやすい構造や開発工数が減る

その代わり、最初にちょっと勉強しなければならない(抵抗がある)

守らない人がいると、警告がいわゆる「オオカミ少年」になってしまう

どうやってチームに根付かせるか?

35

Page 36: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

チェックインポリシーで強制できる

チェックイン前にコード分析必須

チェックインコメント必須

タスクとの関連づけ必須

ソリューションに含まれないファイルはチェックイン出来ない

「TFS Project Welcome pages(README.md)とチェックインポリ

シーに指定する静的コード分析 ルールセット」参照

https://code.msdn.microsoft.com/Welcome-pagesREADMEmd-75566110 36

Page 37: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

最初にチェックインポリシー違反の検知を!

ソースコードがある程度チェックインされた後から追加は困難・無理

ビルド出来ない、修正が膨大、無視するのが横行する(言い訳しやすい)

最初にチェックインポリシーを必ず設定する

チェックインポリシー違反(オーバーライド)の検知

チェックインポリシーは、緊急時にコメントを入れれば無視してチェックイン出来る

無視されたらメールが送信されるように設定を(※前述URL 最後を参照)

37

Page 38: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

7. VSプロジェクトの作成・分岐構成管理・チェックインポリシーが機能しているか?

38

Page 39: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

チェックインポリシーが動作しているか?

Mの中にソリューションを作成(※前述のもので可)

プロジェクトにチェックインポリシーを適用

パスは ..\..\..\RuleSets\CheckInPolicy.ruleset

3つ上がって RuleSets フォルダに入った中のファイル

ビルドしてチェックイン出来ることを確認

39

TFS Project Name

BuildProcessTemplets

M

Solution Name

RuleSets

D

P

Project Name

Visual Studio Project

CheckInPolicy.ruleset

Page 40: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

ルールセットを D・P直下に分岐しておく

RuleSetsを D\RuleSets と P\RuleSets に分岐

M・D・P どのプロジェクトからも同じ相対パスで

チェックインポリシーファイルが見つかる

ルールセットを先に分岐しておかないと、D・Pでは

Visual Studio が勝手に直下の RuleSets のファイルを見つける

Mにマージするときに相対パスがずれて、無用なマージが発生

(このマージを間違えると M の自動ビルドに失敗する)

40

TFS Project Name

BuildProcessTemplets

D

@001

M

Solution Name

Solution Name

P

@001

Solution Name

RuleSets

RuleSets

RuleSets

Page 41: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

構成管理は妥当か?発行やリリース手順を試す

M・D・P にアクセス出来るユーザーを制限することができる

ユーザーの作成は後述。ここでは他のユーザーになったつもりで試してみる。

Pからのリリースを試験

Azure に Webサイト・クラウドプロジェクトを発行

いわゆる「Hello World 」をリリースできるか?確認

他に必要な社内向けの手順書・チェックリストを準備

41

ここでリリース出来ないと

完成後も・・・

Page 42: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

8. 自動ビルド・自動テストを構成単体テストをどこまで作るか?議論するには効果を「見える化」する必要がある

42

Page 43: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

サンプルを実行・壊して効果を実感しよう

単体テストをどこまで作るか?

VSO・TFSで毎日ビルド・テストするか?

まず、サンプルを登録して

効果を見ながらディスカッション!

「TFS・VSO・ローカルで動作するデータベースを使った単体テス

トの作り方・量産方法」参照

https://code.msdn.microsoft.com/TFSVSO-dc7b8c9d

43

Page 44: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

単体テストをどこまで作れるか?

単体テストは約10年前から普及

NUnit, Visual Studio 標準機能

テスト駆動開発は普通の作り方

デスクトップアプリをF5デバッグしながら作るのと同じ

もはや「無し」では開発出来ない

ただしメンバーのスキルと慣れに依る

強制すると返ってスピード・質を落とす人も 44

Page 45: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

自動ビルド・自動テストをどこまで実現するか?

自動ビルド・自動テストを設定すると

開発者のローカル PC でしか動作しないコードが発見できる

バグはテストしていないのではなく「テストしたが他の環境で動かない」方が多い

難しいクリーンなDBでテストするライブラリ・サンプルを用意

「TFS・VSO・ローカルで動作するデータベースを使った単体テストの作り方・量産方法」https://code.msdn.microsoft.com/TFSVSO-dc7b8c9d

Surviveplus.UnitTestPlushttps://www.nuget.org/packages/Surviveplus.UnitTestPlus/ 45

Page 46: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

VSO自動ビルドは無料枠を超えると有料

前述のサンプルを作るために5日で1ヶ月の無料枠を使い切りました

チェックインの度にビルド・テストを実行する

「ゲートチェックインビルド」では無料枠は全く足りません

通常のプロジェクトでは、変更後のみの日次ビルドでも足りないはず

有料枠を使う、あるいは、週次でビルドするなどの検討が必要

46

高くはないですがお金を使うので

マネージャの仕事ですね

Page 47: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

ビルド・テスト結果を HOME Overview にピン

自動ビルドを設定したら、ビルド定義の Pin to homepage

ホームに結果を「見える化」

ビルドに失敗したら自動的に「バグ」が作成されるように設定することも可能

対応するフローも決めておきます

47

Page 48: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

9. クエリの作成とチャートの表示誰がどれだけ働いているか?グラフで見えれば「やる気」スイッチを押せる

48

Page 49: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

HOME – Overview に表示出来るもの

タスクの進捗バーンダウン(標準)

ビルド結果

作業項目(バックログ・タスク・バグ)のクエリ結果数とそのグラフ

テスト結果数とそのグラフ

標準の操作、最初に表示される How to

49

Page 50: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

クエリできればチャートをホームにピンできる

WORK Queries のチャート TEST テストスイートのチャート

50

Page 51: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

細かいことですが・・・

クエリ結果が 0 件の時も(エラー画面ではなく)

可愛いイラストが表示されるようになりました

51

実は重要!

Page 52: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

ブロークン・ウィンドウにしない!

ブロークン・ウィンドウ理論では

「建物の窓が壊れているのを放置すると、誰も注意を払っていないという象徴になり、やがて他の窓もまもなく全て壊される」※Wikipedia より引用

HOME に「日次ビルド」が失敗している結果が毎日ずっと表示されていれば

このプロジェクトはバグっていていいんだというメッセージになる

タスクが進捗し、ビルドは毎日成功し、テストも消化されるプロジェクト

管理の「見える化」だけではなく、チームのモチベーションを考えよう

52

Broken Windows Theory

Page 53: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

10. ユーザーの登録十分に準備が出来てからメンバーを招待する

53

Page 54: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

ここまで準備してからユーザーを追加します

管理者の追加・変更

開発者の追加

ステークホルダーの追加(出来ないことの確認)

前述までの準備が「守っている事」や「意図」を伝える前に触らせない

54

Page 55: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

管理者(オーナー)にはユーザーアカウントを

マイクロソフトアカウントは、長期間サインインしないと消えます

Windows Azure は課金に関わるユーザーが消えると、

その瞬間に環境が消えるようです

(VSOで試したことはありませんが Azure 上で動作しているので同じかもしれません)

管理者(特にオーナー)にするマイクロソフトアカウントは、

毎日サインインして使っている開発者ユーザーのアカウントにしましょう

専用アカウントを作ってしばらく使っていないと、数年後に環境ごと全部突然消えるかもしれません 55

Page 56: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

開発者をサンドボックスにも招待しましょう

最初に3種類、練習用の TFSプロジェクトを作成

自分の練習が終わったら、開発者をサンドボックスに招待して

使い方を説明しましょう

サンドボックス(砂場)=自由に使って壊しても問題ない環境

HOME Overview や Welcome ページにフィードバックをもらいましょう

56

Page 57: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

ステークホルダーでは Welcome が見られない

Welcome は README.md の閲覧権限 = ソース管理が見られないと

表示されないみたいです

ステークホルダーライセンスは HOME Overview はみられますが

ソースコードは見られません = Welcome が見られない

今後バージョンアップで改善されるかもしれませんが、確認が必要です

57

Page 58: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

11. チーム開発開始最初の数週間

58

Page 59: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

さぁ!

いよいよチーム開発開始です

59

Page 60: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

フル機能は使わなくて大丈夫

ここまで準備していれば、使えるところから使っても

問題になりません逆に準備しないで使い始めると、後からはどうしようも無くなって「TFS 使えねぇ」になるかも

60

Page 61: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

最初のタスクの割り当て・見積もり・作業開始

最初のイテレーション期間では、

「ベロシティによる予測」など

絶対にわからないことがあります

何週間かチームで経験しないと

わからないことを確認します

「スクラム開発を始めよう!TFS を使った

日常コミュケーションとチームワーク」参照

http://www.slideshare.net/shinichikoga355/102-ver4 61

Page 62: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

開発者は「担当作業」から作業開始の流れを

Visual Studio チームエクスプローラの「担当作業」

自分に割り当てられたタスクを開始できます

担当作業でタスクを「開始」し、開発出来たら

保留中の変更と共に「チェックイン」して完了します

実は「中断」も出来る優れもの

Visual Studio の作業中の内容を全て一時保存し、

別の作業をして、また戻ってくることが出来ます 62

Team Explorer My Work

Suspend

Page 63: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

スプリントが終了したらやること未完了のタスクを処理して翌営業日の朝を迎える

63

Page 64: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

イテレーション期間 Current を @002 に変更

現在の期間を Current に移動

Feature\@002 から

Current\@002 に

直前の期間を Past に移動

Current\@001 から

Past\@001 に

64

Page 65: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

イテレーション期間に終わらなかったタスクは?

必ず終わらせます

完了にして、次のイテレーションに新しいバックログ・タスクを作成する

全く着手していない場合は移動しても可

一部着手しているときは、分割したことがわかる名前をつけて分割する

期間中は「バーンダウンチャート」で進捗している事を確認

期間終了時は、必ず残り作業が 0 で終わるようにする

65

Page 66: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

残りタスクを放置すると

チームのベロシティ(1期間にこなせる作業量)がわからなくなる

実績を次の見積もりに活かすために、この範囲は全部終わった、とする

メンバーが、何が完了して何が完了していないか?確認・判断する必要

完了していないものは次期間に移っていることで判断不要

区切りなくダラダラと作業することが蔓延するなど、「壊れた窓」になる

「なんだ TFS 使えねぇ」はタスクの放置から始まります66

Page 67: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

意図を理解したメンバーで運用・維持する

翌朝(次のイテレーション期間の最初)に、

HOME Overview が誰が見てもわかりやすい綺麗な状態になっていること

タスクの完了・分割・移動など地味に作業がある

VSO・TFS の使い方の意図を理解したメンバーで運用する

初めてソースバージョン管理を導入したときと同じ:「なぜフォルダコピーじゃダメなんですか?」

効果を全員が感じられるまで、工夫して使い続けよう 67

Page 68: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

Appendix補足資料

68

Page 69: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

単体テストとスライドで取り扱わなかった TEST

単体テスト(C#コードでメソッドをテスト)

テストケース・テストスイート(手動テスト, テスト結果の記録)

コード化された UI テスト(画面操作の自動テスト -テストケースの手動の代わりに)

ロードテスト Web(簡単なWeb負荷テスト)

ロードテスト Visual Studio(シナリオを想定したWeb負荷テスト)

ラボ(手動テスト・コード化されたUIテストを仮想PCで実行しやすくする) 69

Unit Test (※ Visual Studio では単に Test とも)

Test Case, Test Suite

Coded UI Test

Load Test (※Simple Load Test という表記も)

Load Test with Visual Studio

Lab Management

Page 70: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

チームルーム (Team Room) とは

Lync, Skype, LINE, Facebook チャット, SMS などのテキスト会話と同様

VSO・TFS サイト上でチャット出来る

記録目的ではなく(過去の会話を探すのは少し難あり)

遠隔地でのとっさの会話に使用を想定

Lync(Skype for Business) が使えない場合に使うと良い

VSO・TFS プロジェクト用の他、作成も出来る

70

Page 71: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

ソフトウェア構成管理の教科書

IT Architects’ Archive―ソフトウェア開発の課題

パターンによるソフトウェア構成管理

http://goo.gl/2yF1N1

2006年出版で VSO/TFS を含む最近のツールについては

全く触れられていませんが、ソフトウェア構成管理の

考え方・基礎知識を勉強できます。お奨めです。

「何となく分岐・マージしている」人は是非一読を 71

Page 72: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

担当作業からチェックインの流れと「中断」

Visual Studio Ultimate 2012:

担当作業での複数タスクの処理方法

http://goo.gl/s5nouX

「中断」の説明のビデオですが、

担当作業からタスクを開始し、

チェックインするまでの作業の流れ

を実感することが出来ます。72

Page 73: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

使用したサンプル・ライブラリ・スライド

スクラム開発を始めよう!TFS を使った日常コミュケーションとチームワーク

http://goo.gl/NpUfRi

TFS Project Welcome pages(README.md)と

チェックインポリシーに指定する静的コード分析ルールセット

http://goo.gl/7mrcw0

TFS・VSO・ローカルで動作するデータベースを使った単体テストの作り方・量産方法

http://goo.gl/RStNCw

Surviveplus.UnitTestPlus

http://goo.gl/g2n2fX 73

Page 74: 開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成

Plus Programming .net 勉強会

http://www.facebook.com/PlusProgramming.net

74