もう怖くない!team foundation server 2015 update 1...

45
ももももももTeam Foundation Server 2015 もももももももももも ももももももももももももも もも 日日日日日日日日日日日日日 日日日日日日日日 日日 日日 [email protected] om 2016 日 1 日 28 日

Upload: masaki-takeda

Post on 07-Jan-2017

1.151 views

Category:

Software


0 download

TRANSCRIPT

もう怖くない!Team Foundation Server 2015ワークアイテム管理とテンプレートのカスタマイズ 概要

日本マイクロソフト株式会社

開発ツール推進部

武田 正樹 [email protected]

2016 年 1 月 28 日

本日の Agendaレポート編 Team Foundation Server でのワークアイテム管理の特長

可視化の際のポイント

プロセス編 Team Foundation Server のプロセステンプレート

プロセステンプレートのカスタマイズ

まとめ

参考資料

2

レポート編Team Foundation Server での

ワークアイテム管理の特長

可視化 - トレーサビリティ

作業項目や成果物が連携されており、様々な角度の状況把握が可能

バグ

バグ

テスト結果

要件

要件

要件

要件

タスク

タスク

タスク

タスク

テスト

テスト

テスト

テスト結果

ソースコードの修正( 変更セット )

ソースコードの修正( 変更セット )

ソースコード

設計書

4

可視化 – 普段利用しているツールで

Excel

Microsoft Project

開発者プロジェクト管理者

Team Foundation Server

• 進捗状況• 負荷状況• コスト分析 ... など

• 進捗状況• バグ一覧• 要件管理表 ... など

Web ブラウザ • 進捗状況

• 負荷状況• バグ一覧• 要件管理表• 作業ログの確認 ... など

開発作業テスト作業

( 蓄積 )

使い慣れたツールの活用

リアルタイムで正しい情報を必要なタイミングで取得

集計にかかる作業を削減

バグ票、タスク表入力

5

Team Foundation Server レポート

• Team Foundation Server で使

用しているデータベースサー

バーに、 Analysis Services と

Reporting Services がインス

トール済みであることが前提

• 集計データに反映されるまで、

2-3 時間程度かかる

6

レポート編可視化の際のポイント

コレクションとチームプロジェクト

• Team Foundation Server では、コレクション単位でデータベースが作成

• ワークアイテム ID はコレクション内での連番となる

コレクション Aチームプロジェクト A-1

ID 2: ワークアイテム Y

チームプロジェクト A-2ID 1: ワークアイテム X

コレクション Bチームプロジェクト B-1

ID 1: ワークアイテム Z

チームプロジェクト B-2ID 2: ワークアイテム

W

8

クエリ

• コレクション内のワークアイテムを検索

• Team Foundation Server の共有クエリとして保存すると、再利用可能

• 検索結果をグラフ化し、ダッシュボードに表示

9

Excel ・ MS Project 連携方法

Team Foundation Server 2015 Update 1 の場合は、 Microsoft Team Foundation Server Office Integration 2015 Update 1 をインストールするだ

https://www.microsoft.com/ja-jp/download/details.aspx?id=49992

10

Excel ・ MS Project 連携

• Team Foundation Server に保存されたクエリを使用してデータ抽出可能

• 1つの チームプロジェクトからのデータのみ抽出可

• ワークアイテムを一括入力できる「入力リスト」モードあり

• MS Project では、デフォルトが「入力リスト」モード

11

<Web>

<Excel>

Reporting Services との連携• Reporting Services にレポートテンプレートが用意

• レポートビルダー等を使用してのレポートの追加・カスタマイズ可能

12

Analysis Services との連携Team Foundation Server 用のディメンションやキューブが用意

https://msdn.microsoft.com/ja-jp/library/dn217883.aspx

13

Excel で Analysis Services の接続Excel で Analysis Services に接続可能

14

例 ) コードチャンをピボットテーブルで出力コードチャンをチームプロジェクト・日付のピボットテーブルとして出力する場

15

プロセス編Team Foundation Server の

プロセステンプレート

標準のプロセステンプレート

Scrum, Agile, CMMI プロセステンプレートが標準搭載

17

エピック

機能

プロダクトバックログ

タスク

バグ

タスク

ポートフォリオ

バックログ

バックログ

エピック

機能

ユーザーストーリー

タスク

バグ

タスク

エピック

機能

必要条件

タスク

バグ

タスク

エピック

機能

Scrum Agile CMMI

よくいただく声

18

どのテンプレートを使えばいいですか?う

テンプレートが全部アジャイルですね。うちはウォーターフォールなので、使えないです。

Agile テンプレートのユーザーストーリーはどう使えばいいですか?

開発プロセスにツールをよせる発想

19

従来の開発プロセスを変更しない場合• 足りない項目はプロセステンプレートのカスタマイズで対応

• 項目数やレポートが充実している CMMI をお勧め

従来の開発プロセスを破壊的に見直す場合• まずは開発プロセスを見直し

プロセステンプレートにそった運用はアンチパターン

ウォーターフォールでも大丈夫

名称変更だけで印象は変わる

20

ポートフォリオ

バックログ

バックログ

エピック

機能

小分類

タスク

バグ

タスク

大分類

中分類

Scrum Agile CMMIエピック

機能

小分類

タスク

バグ

タスク

大分類

中分類

エピック

機能

小分類

タスク

バグ

タスク

大分類

中分類

プロセス編プロセステンプレートの

カスタマイズ

主なカスタマイズ項目

• ワークアイテム• カテゴリ名

• ワークアイテム名

• ワークアイテムの項目・入力レイアウト

• ワークアイテムの状態

• MS Project と連携する項目

• グループ・権限設定

• チェックインポリシー

• レポート22

• 区分、イテレーション

• クエリ

• XAML ビルド

• ラボマネジメント

カスタマイズ注意事項

• プロセステンプレートは、チームプロジェクト作成時のみ適用

• チームプロジェクト作成後のカスタマイズは原則不可能

• 標準テンプレート Scrum, Agile, CMMI はカスタマイズ不可

• 標準テンプレートをダウンロードしてのカスタマイズは可能

• ダウンロードした GUID を変更しないとアップロードできな

23

Power ToolsVisual Studio 上でプロセステンプレートの修正が可能https://visualstudiogallery.msdn.microsoft.com/898a828a-af00-42c6-bbb2-530dc7b8f2e1

24

25

ワークアイテムの編集作業は、 Power Tools を使うと GUI で操作することができます。1. エクスプローラーで デスクトップの CMMI フォルダにある [ProcessTemplate.xml] を右クリックします。2. [ プログラムから開く ] をクリックします。3. [Microsoft Visual Studio 2015] をクリックします。

ワークアイテムの変更 (1)

2

3

1

26

Visual Studio が起動し、 Power Tools の画面が表示されます。今回はワークアイテム [ 必要条件 ] を編集します。1. [Type Definitions] をクリックします。2. ワークアイテムの一覧が表示されます。 [ 必要条件 ] をクリックします。3. [Edit] をクリックします。

ワークアイテムの変更 (2)

3

1

2

27

ワークアイテム [ 必要条件 ] に関する編集画面が表示されます。今回はワークアイテムの名前の変更と項目追加をします。1. ワークアイテムの名前を変更します。 [Name] の内容を [ 必要条件 ] から [中項目 ] に変更します。2. ワークアイテムの項目を追加します。 [New] をクリックします。

ワークアイテムの変更 (3)

1

2

28

項目定義に関するポップアップウインドウが表示されます。今回はドロップダウンリスト形式で値を選択できる [難易度 ] という項目を追加します。1. 項目の表示名を指定します。 [Name] には [難易度 ] と入力します。2. データベースに格納される際のスキーマ名を指定します。 [Reference Name] には [Custom.Demo] と入力します。

ワークアイテムの変更 (4)

1

2

29

続いて、ドロップダウンリストで選択できる値を定義します。1. [Rules] タブをクリックします。2. [New] をクリックします。3. ルール形式を選択するポップアップウインドウが表示されます。 [ALLOWEDVALUES] を選択します。4. [OK] をクリックして、ポップアップウインドウを閉じます。

ワークアイテムの変更 (5)

1

23

4

30

ALLOWEDVALUES に関するポップアップウインドウが表示されます。ここにドロップダウンで選択できる値を入力します。1. [New] をクリックします。2. 値を入力するためのポップアップウインドウが表示されます。 [初心者向け ] と入力します。3. [OK] をクリックして、ポップアップウインドウを閉じます。4. [ALLOWEDVALUES] のウインドウに [初心者向け ] と入力されていることを確認します。

ワークアイテムの変更 (6)

31

2

4

31

1. 前頁の [ ワークアイテムの変更 (6)] の操作を行い、 ALLOWEDVALUES ウインドウに [中級者向け ] と [上級者向け ] を追加します。

2. [OK] をクリックして、 ALLOWEDVALUES ウインドウを閉じます。3. 項目定義に関するポップアップウインドウに戻ります。 [OK] をクリックして、ウインドウを閉じます。

ワークアイテムの変更 (7)

3

1

2

32

1. ワークアイテム [ 必要条件 ] に関する編集画面に、 [難易度 ] という名前の項目が追加されていることを確認します。

ワークアイテムの変更 (8)

1

33

ワークアイテムの項目を追加しましたが、ワークアイテムの編集画面にも追加する必要があります。

1. [Layout] タブをクリックします。

ワークアイテムの変更 (9)

1

34

1. [Preview Form] をクリックします。2. ワークアイテムのプレビューウインドウが表示されます。今回は、 [ 状態 ] グループに先ほど作成した [難易度 ] を

追加します。確認したら [X] をクリックして、プレビューウインドウを閉じます。3. [Group 状態 ] の下にある [Column] を右クリックします。4. [New Control] をクリックします。

ワークアイテムの変更 (10)

1

2

3

4

35

1. 状態グループに [難易度 ] の項目を追加します。 [Field Name] には、 [Custom.Demo] を選択します。そして、 [Label] には、 [難易度 ] と入力します。

2. [ すべて保存 ] ボタンをクリックして、ファイルを保存します。3. [Preview Form] をクリックします。

ワークアイテムの変更 (11)

2

1

3

36

1. 状態グループに [難易度 ] の項目が追加されていることを確認します。2. 確認したら [X] をクリックして、プレビューウインドウを閉じます。

ワークアイテムの変更 (12)

2

1

37

今回は [ 必要条件 ] のワークアイテムの名前も変更しているため、このままプロセステンプレートをアップロードするとチームプロジェクトの作成時にエラーとなります。 [Process Settings] にある [ 必要条件 ] も変更する必要があります。1. [ProcessTemplate.xml] タブをクリックします。2. [Process Settings] をクリックします。3. [RequirementBacklog] タグの中にある [pluralName] と [singularName] の [ 必要条件 ] を [中項目 ] に変更

します。

ワークアイテムの変更 (13)

3

1

2

38

1. 同じく [Process Settings] にある [WorkItemColors] タグの中にある [name=“ 必要条件” ] を [name=“中項目” ] に変更します。

2. [ すべて保存 ] ボタンをクリックします。

ワークアイテムの変更 (14)

1

2

開始日・終了日を MS Project で表示

• デフォルト設定で、 Microsoft Project からの Publish のみ許可

• プロセステンプレートにある [Classification] フォルダの

[FieldMapping.xml] を直接編集

• 赤枠の [PulishOnly] の値を [true] から [false] に変更

39

チームプロジェクト作成後の場合

• データベースを直接変更

• チームプロジェクトの ID は、 [dbo.tbl_projects] に格納

• 実施の場合は、必ずバックアップを!!

40

USE [Tfs_DefaultCollection]

UPDATE [dbo].[tbl_project_properties] SET [value] = '<?xml version="1.0" encoding="utf-8"?><MSProject>…<Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.StartDate" ProjectField="pjTaskStart" PublishOnly="false" /> <Mapping WorkItemTrackingFieldReferenceName="Microsoft.VSTS.Scheduling.FinishDate" ProjectField="pjTaskFinish" PublishOnly="false" />…</MSProject>' WHERE [name]= 'MSPROJ' and [project_id] = ‘xxxxxxxxxxxxxxxxxxxxxxxxx'

まとめ

• Team Foundation Server のワークアイテム管理の特長は、”可視

化”• Excel, MS Project との連携

• Team Foundation Server レポート

• 開発プロセスに即したプロセステンプレートのカスタマイズ

を• 項目の名称変更だけも使い勝手は変わる

41

参考資料

Team Foundation Server 手順書

http://takedamasaki555.wordpress.com/ Team Foundation Server / Visual Studio Team Services 手順書

Test Manager + Team Foundation Server / Visual Studio Team Services 手順書

Team Foundation Server 2015 によるテスト工数削減

Team Foundation Server プロセステンプレートの変更 手順書

Team Foundation Server 2015 Update 1 インストール手順書

Entity Framework 6.1.3 + ASP.NET MVC 5 サンプル アプリケーション構

築 手順書43

プロセステンプレート詳細(英語)Scrumhttps://msdn.microsoft.com/Library/vs/alm/work/guidance/scrum-process Agilehttps://msdn.microsoft.com/Library/vs/alm/work/guidance/agile-process CMMI https://msdn.microsoft.com/Library/vs/alm/work/guidance/cmmi-process

44

© 2016 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.