144
Managing Projects with Visual Studio 2010 Student Manual Enhancing all aspects of Application Lifecycle Management

Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

  • Upload
    others

  • View
    20

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Student Manual

Enhancing all aspects of Application Lifecycle Management

Page 2: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Copyright Notice

©2012 Enhance ALM Pty Ltd. All rights reserved.

No part of this material may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying and recording, for any purpose without express written permission of Enhance ALM Pty Ltd.

Trademarks

All trademarks referenced are the property of their respective owners

Disclaimer

While Enhance ALM takes great care to ensure the accuracy and quality of these materials, all material is provided without any warranty whatsoever, including, but not limited to, the implied warranties of merchantability or fitness for a particular purpose.

Page 3: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 0 - Introduction

© 2012 Enhance ALM Pty Ltd Page 3

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 0 - Introduction

Welcome

Welcome to Enhance ALM’s Managing Projects with Visual Studio 2010 course.

For information about our other courses, be sure to visit www.enhancealm.com.au

Page 4: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 0 – Introduction Managing Projects with Visual Studio 2010

Page 4 © 2012 Enhance ALM Pty Ltd

4 ©2012 Enhance ALM Pty Ltd

Your Instructor

Nick HauensteinMicrosoft Certified ProfessionalConnected Technology AdvisorApache [email protected]

About your Trainer

Your trainer, Nick Hauenstein, is a trainer based in Kirkland, Washington. He is a popular trainer

with specialist skills in BizTalk, SharePoint, Visual Studio and Team Foundation Server.

Page 5: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 0 - Introduction

© 2012 Enhance ALM Pty Ltd Page 5

5 ©2012 Enhance ALM Pty Ltd

Introductions

• Name• Company• Job Title/function• Job responsibility• Project management experience• Visual Studio ALM experience (Have you used TFS?)• Your expectations for the course• Your favourite hobby/interest

Introductions

To help get to know who is on the course, we need to know a little about you. Your trainer will

ask each attendee to outline their project management experience as well as their expectations

for the course.

It might also help to get to know you if you share your favourite weekend activity

Page 6: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 0 – Introduction Managing Projects with Visual Studio 2010

Page 6 © 2012 Enhance ALM Pty Ltd

6 ©2012 Enhance ALM Pty Ltd

Facilities• Class hours• Restrooms• Meals• Phones

Please MUTE your phones when you are not speaking.

It makes it easier for everyone the hear the instructor and any questions that might be

asked.

Facilities

Your trainer will run you through a few details about the training facilities etc.

Page 7: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 0 - Introduction

© 2012 Enhance ALM Pty Ltd Page 7

7 ©2012 Enhance ALM Pty Ltd

About This Course

• Audience• Course Prerequisites• Course Objectives• What this course is and is not

A course on Project Management practices and theory A practical look at using VS2010 & TFS 2010 to help you

manage projects

About this course Audience: The primary audience for this course is Project Managers, Business Analysts and team leaders who actively participate in software development projects. Prerequisites: Students who attend this training should have:

• Experience and familiarity with process methodologies such as Microsoft Solutions Framework (MSF).

• Experience in coordinating or managing projects using Visual Studio tools or comparable third party products.

Course Objectives: After completing this course, students will be able to:

• Initiate a new Team Project in TFS 2010 • Enter requirements including test cases and acceptance criteria into TFS • Break their product backlog into suitably sized sprints • Track project risks and quality measures • Configure alerts and notifications for team members • Create adhoc reports using Microsoft Excel

Page 8: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 0 – Introduction Managing Projects with Visual Studio 2010

Page 8 © 2012 Enhance ALM Pty Ltd

8 ©2012 Enhance ALM Pty Ltd

Course OutlineModule 1 Introducing TFS 2010

Module 2 Initiating a New Team Project

Module 3 Managing Requirements using Work Items

Module 4 Effective Estimation

Module 5 Planning work using Backlogs and Sprints

Module 6 Managing Risks

Module 7 Avoiding Technical Debt and Keeping Quality in Focus

Module 8 Keeping the Communication pathways open

Module 9 Creating and customising reports

Course Outline

The following modules will be covered during the Mastering Testing with Visual Studio 2010 course

• Module 1: Introducing Microsoft Visual Studio 2010

• Module 2: Initiating a New Project

• Module 3: Managing Requirements using Work Items

• Module 4: Effective Estimation

• Module 5: Planning work using Backlogs and Sprints

• Module 6: Managing Risks

• Module 7: Avoiding Technical Debt and Keeping Quality in Focus

• Module 8: Keeping the Communication Pathways Open

• Module 9: Creating and Customising Reports

Page 9: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 0 - Introduction

© 2012 Enhance ALM Pty Ltd Page 9

9 ©2012 Enhance ALM Pty Ltd

Links in Courseware

• Courseware shows links in the following formathttp://ealm.info/xy or http://ealm.info/alias

• Similar to bit.ly or tinyurl.com• These abbreviated links are provided to simplify

entering what are sometimes very long URLs to resources

• If you have any problems please email [email protected]

Links in the courseware.

Often hyperlinks to resources can be quite long and contain long strings of characters. To make it easier for you to access resources on the Internet we have created a small web utility similar to tinyurl or Bit.ly so you can enter a much shorter URL.

For example. When you enter a URL in the abbreviated format such as http://ealm.info/AB this will automatically redirect you to the Enhance ALM Blog.

Should you have any difficulties using the abbreviated hyperlinks, please email [email protected]

Page 10: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 0 – Introduction Managing Projects with Visual Studio 2010

Page 10 © 2012 Enhance ALM Pty Ltd

10 ©2012 Enhance ALM Pty Ltd

?

ANY QUESTIONS?

Any Questions?

If you have any questions before we get stuck into the course, now’s the time to ask them.

Page 11: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 0 - Introduction

© 2012 Enhance ALM Pty Ltd Page 11

NOTES

Page 12: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 12 © 2012 Enhance ALM Pty Ltd

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 1 - Introducing Microsoft Visual Studio 2010

Introduction

This module has been included to ensure all students are familiar with the many parts of the

Visual Studio 2010 product suite.

Page 13: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 13

2 ©2012 Enhance ALM Pty Ltd

Module Objectives

At the end of this module you will be able to;• List some of the key new features in Visual Studio 2010• Understand the Visual Studio 2010 ALM environment• Understand the key difference between each of the main Visual

Studio product versions and know which features are in which version

• Understand your new licensing entitlements for certain products that have changed from previous versions

Module Objectives

At the end of this module you will be able to;

• List some of the key new features in Visual Studio 2010 • Understand the Visual Studio 2010 ALM environment • Understand the key difference between each of the main Visual Studio product versions

and know which features are in which version • Understand your new licensing entitlements for certain products that have changed from

previous versions

Page 14: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 14 © 2012 Enhance ALM Pty Ltd

3 ©2012 Enhance ALM Pty Ltd

Agenda

• What’s new in Visual Studio 2010?• Visual Studio 2010 product suite• Visual Studio Client SKUs• Software for Development and Production use as

part of your MSDN Subscription

Agenda

This agenda for this module is as follows.

• What’s new in Visual Studio 2010

• Visual Studio 2010 product suite

• Project Workflow

• Software features by Product version

Page 15: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 15

4 ©2012 Enhance ALM Pty Ltd

Visual Studio 2010Agile Project

Planning End to End Traceability

Stunning New Reports

1-click Custom Excel reports

SharePoint Dashboards

Branch Visualization

Distributed Build

Team Build Windows Workflow

Integration

Test Management

Test Execution

Manual Test Runner

Test Impact Analysis

Coded UI Test Historical

DebuggingGated

Checkin

Activity Diagram

Modeling Projects

Logical Class Diagram

Architectural Explorer

Sequence Diagram

Component Diagram

Use Case Diagram

Layer Diagram

Scalability ++

TFS Administration

w/MMC Database Edition merged

into DevelopmentTest Lab Management

UML support

Team Collections

UI Prototyping

Simplified installation

Custom link types

Thread Contention Profiling

Sequentialload test model

CLR 4.0 supportSharePoint

toolsTFS 64-bit support

Build notification agent

Tier interaction profiling

Visually track changes

Data collectors

Virtual user visualisation

TFS Farms

Team Build Templates

What’s new in Visual Studio 2010

This slide has been created to show you just how many new and improved features exist in the

Visual Studio 2010 release. Visual Studio 2010 (codenamed Rosario) was developed in parallel

with Visual Studio 2008 (codenamed Orcas) following the release of 2005. It is important to

realise that the 2010 release represents over five years work from the 2005 release, not just two

years work form the 2008 release.

Page 16: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 16 © 2012 Enhance ALM Pty Ltd

Visual Studio 2010

The Visual Studio 2010 ecosystem includes many different products and capabilities. Your

instructor will walk you through each of these as they appear on this animated slide.

Page 17: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 17

Visual Studio 2010 – Delivering business value

An integrated ALM suite like Visual Studio 2010 offers a number of significant benefits to an

organisation. Example of the benefits offered include:

• Collaborate and Communicate

• Drive Predictability

• Manage Team Workflow

• Use Familiar Tools

• Ensure Quality Early and Often

• Integrate Work Frequently

• Make Real-Time Decisions

Page 18: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 18 © 2012 Enhance ALM Pty Ltd

7 ©2012 Enhance ALM Pty Ltd

BusinessAnalyst Project

Manager

Dev Team

Test

Operations

ChangeRequests

Use Case

Non FunctionalRequirements

Bugs

Tasks

ProductionErrors

Example workflow

Example Workflow

The development of modern applications involves input and coordination of an increasing

number of roles in a team. Keeping communication lines open while keeping track of all project

artefacts is critical to project success.

Page 19: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 19

8 ©2012 Enhance ALM Pty Ltd

Managing Workflow

• Work Item templates are defined by the Process Template

• Support for multiple work item types– User Story, Task, Bug, Test Case and more

• Customizable

Managing Workflow

All project activity is tracked using the Work Item Tracking capability in Team Foundation Server

(TFS). Examples of Work Items include User Stories, Tasks, Bugs and Test Cases.

A Process Template in TFS defines much of the Workflow for work items in a project including:

• The Work Item Type (Eg. Task)

• The fields in the work item (Eg. Assigned to, description and priority)

• The default field values and a definition of what can be stored in the field

• The states that a work item can exist in (Eg. Active, Resolved and Closed)

• Rules determining valid transitions between states. (Eg. A bug Must move from Active to

Resolved before it can be closed)

Using Process Template customisation you can configure many of these values to better suit

your specific development practises.

Page 20: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 20 © 2012 Enhance ALM Pty Ltd

9 ©2012 Enhance ALM Pty Ltd

Managing Workflow (cont’d)

• Project Managers can manage work items with familiar tools

SharePoint Project Portal

Team Web Access

Managing Workflow – Familiar Tools

Two of the most popular tools used today for Project Management are Microsoft Project and

Microsoft Excel. TFS allows you to continue using these client side tools to manage your projects

while storing the content in the TFS database rather than the office document.

To enable the integration between the Microsoft Office products you simply need to install

Team Explorer on your machine and you should see a new “Team” menu appear in Project and

Excel.

In addition to these two client side tools, you can also access TFS through a SharePoint portal or

through the Team Web Access we application as well as a number of third party tools such as

TeamCompanion.

Page 21: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 21

10 ©2012 Enhance ALM Pty Ltd

Team Explorer Everywhere 2010

• Components– Team Foundation Server plug-in for Eclipse– Cross-platform command-line client for TFS– Visual Studio Team Explorer 2010

• Previous versions were known as Teamprise

Visual Studio Team Explorer Everywhere 2010

In early November 2009, Microsoft acquired the Teamprise-related assets of SourceGear LLC, which enable developers using the Eclipse IDE or operating on multiple operating systems, including Unix, Linux and Mac OS X, to build applications with Microsoft Visual Studio Team Foundation Server.

The Teamprise product has been enhanced for the Visual Studio 2010 release and is now named Visual Studio Team Explorer Everywhere 2010.

Team Explorer Everywhere 2010 comprises the following components:

• Team Foundation Server plug-in for Eclipse • Cross-platform command-line client for TFS • Visual Studio Team Explorer 2010

Page 22: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 22 © 2012 Enhance ALM Pty Ltd

11 ©2012 Enhance ALM Pty Ltd

: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :

: : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :

Microsoft Test Manager

Visual Studio features per SKU

Visual Studio 2010 Versions

The three main versions of Visual Studio 2010 are Professional, Premium and Ultimate. In a team

environment most developers will have Visual Studio 2010 Premium or Ultimate.

Visual Studio 2010 Professional Visual Studio 2010 Professional represents the basic level for professional software developers.

Visual Studio 2010 Premium This version adds Database development features.

Visual Studio 2010 Ultimate This is the top level version of Visual Studio 2010.

Page 23: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 23

12 ©2012 Enhance ALM Pty Ltd

Visual Studio Test Professional

ProfessionalMicrosoft Test Manager

Visual Studio Test Professional 2010

Microsoft® Visual Studio® 2010 Test Professional is a specialized toolset for quality assurance

teams that helps simplify test planning and execution. Test Professional works in conjunction

with Visual Studio software for developers, enabling effective collaboration between developers

and testers throughout the application development lifecycle.

Page 24: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 24 © 2012 Enhance ALM Pty Ltd

13 ©2012 Enhance ALM Pty Ltd

• Team Foundation Server– Version control– Work item tracking– Build automation– Team portal– Test case management– Team Explorer 2010

• Testing– Unit testing

• Development Platform– Windows development– Web development– Office/SharePoint dev– Cloud development

• Debugging/Diagnostics– Breakpoint

enhancements– New WPF visualiser– 64-bit support for mixed

mode debugging

Visual Studio 2010 Professional with MSDN Subscription

Microsoft has included Team Foundation Server with 1 Client Access license with all three Visual

Studio 2010 SKUs.

Page 25: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 25

14 ©2012 Enhance ALM Pty Ltd

• Testing– Code Coverage– Test Impact Analysis– Coded UI Tests

• Database Development– DB deployment– DB change management– DB unit testing– DB test data generation

• Debugging/Diagnostics– Static code analysis– Code metrics– Profiling

• Architecture & modelling– UML Layer diagram

viewer

All features of Visual Studio 2010 Professional with MSDN PLUS

Visual Studio 2010 Premium with MSDN Subscription

The Premium version of Visual Studio 2010.

Page 26: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 26 © 2012 Enhance ALM Pty Ltd

15 ©2012 Enhance ALM Pty Ltd

• Testing– Web performance

testing– Load testing

• Architecture & modeling– Architecture explorer– UML 2.0 compliant

diagrams(Activity, Use case, Sequence, Class, Component)

– Layer diagram and dependency validation

• Debugging/Diagnostics– IntelliTrace

• Lab Management– Test and Lab Manager– Virtual environment

setup & tear down– Test Case Management– Manual Test Execution– Manual Test Record &

Playback– Lab Management

Configuration

All features of Visual Studio 2010 Premium with MSDN PLUS

Visual Studio 2010 Ultimate with MSDN Subscription

The Ultimate version of Visual Studio 2010.

Page 27: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 27

16 ©2012 Enhance ALM Pty Ltd

MSDN Software Entitlements

• Software for Development and Test• Software for Production use

MSDN Software Entitlement

In this section we’ll quickly look at a change to MSDN licensing that occurred with the VS2010 release.

Page 28: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 28 © 2012 Enhance ALM Pty Ltd

17 ©2012 Enhance ALM Pty Ltd

Software entitlements (1)

Professional Premium Ultimate

Windows® Azure™

Windows®, Windows Server®

Microsoft SQL Server®

Toolkits, Software Development Kits, Driver Development Kits

Microsoft Office

Microsoft Dynamics®

All other Servers

Windows® Embedded

The following software is licensed for DEVELOPMENT AND TEST use as part of MSDN entitlement

Software entitlement for Development and Testing

As part of your MSDN subscription, you are entitled to use the software listed above for

Development and Testing purposes.

Page 29: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 29

18 ©2012 Enhance ALM Pty Ltd

Software entitlements (2)

Professional Premium Ultimate

Microsoft Expression Studio 3

Microsoft Office Professional Plus 2010

Visio® Premium 2010

Project Professional 2010

The following software is licensed for PRODUCTIONuse as part of MSDN entitlement

Software Entitlement for Production use

As part of your MSDN subscription, you are entitled to use the software listed above for

Production purposes.

Page 30: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 1 – Introducing Microsoft Visual Studio 2010 Managing Projects with Visual Studio 2010

Page 30 © 2012 Enhance ALM Pty Ltd

19 ©2012 Enhance ALM Pty Ltd

?

ANY QUESTIONS?

Any Questions?

Now is a great time to ask any questions you have not asked already during this module.

Page 31: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 1 – Introducing Microsoft Visual Studio 2010

© 2012 Enhance ALM Pty Ltd Page 31

NOTES

Page 32: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 32 © 2012 Enhance ALM Pty Ltd

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 2 - Initiating a new project

Introduction

This module has been included to familiarise students with the knowledge required to create

new Team Projects in Team Foundation Server. The module discusses the structure of a Team

Project and then walks you through the project creation wizard explaining the key decisions

you’ll need to make on each screen in the wizard.

Page 33: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 33

2 ©2012 Enhance ALM Pty Ltd

Agenda

• Organising Projects in TFS– Team Projects– Team Project Collections

• Process Templates• Walkthrough – Creating a new Team Project• Process Guidance• What’s next• Configuring Security• Lab – Creating a new Team Project

Agenda

This module is divided into five main sections followed by a lab to reinforce the knowledge

gained in this module.

1. Organising Projects in TFS

- Team Projects

- Team Project Collections

2. Process Templates

3. Walkthrough – Creating a new Team Project

4. Process Guidance

5. What’s next

6. Lab – Creating a new Team Project

Page 34: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 34 © 2012 Enhance ALM Pty Ltd

4 ©2011 Enhance ALM Pty Ltd

ORGANISING PROJECTS IN TFS

More than just a VS SolutionVisual Studio Solutions and ProjectsTeam ProjectsTeam Project CollectionsNaming a Team Project

Organising Projects in TFS

In the next section we’ll look at the following;

• More than just a VS Solution

• Visual Studio Solutions and Projects

• Team Projects

• Team Project Collections

• Naming a Team Project

Page 35: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 35

5 ©2011 Enhance ALM Pty Ltd

More than just a VS Solution

• TFS adds “containers” called Team Projects and Team Project Collections that contain Visual Studio solutions and projects.

• Organising and structuring your projects is important in allowing team members to easily find the work or information they are looking for.

More than just a Visual Studio Solution

A Team Project in TFS has the following characteristics:

- It is a collection of work items relating to the deliverables of this specific Team Project.

- A Team Project has a Project Portal created with it. This Project Portal, created in

SharePoint, provides a rich web-based interface through which you can work with work

items, view reports and utilize document libraries to store project documentation.

- A Team Project has a set of Reports created in a SQL Reporting Services folder where

reports can be customised and additional reports added.

- Build definitions are stored at the Team Project level. It is common for a Team Project to

contain a number of build definitions.

- Each Team Project has a top level source control folder created to store source code

relating to that project inside it. Eg. $\MyTeamProject

- Security can be configured at the Team Project level. This is a common approach.

Page 36: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 36 © 2012 Enhance ALM Pty Ltd

6 ©2011 Enhance ALM Pty Ltd

Visual Studio Solutions and Projects

• Visual Studio Solutions may contain one or more Visual Studio Projects

Visual Studio Solution

Visual Studio Solutions and Projects

For over ten years, developers using Microsoft Visual Studio have been familiar with the concept of having Solutions that contain one or more Visual Studio Projects.

The introduction of Team Foundation Server does not change this fundamental structure but rather, builds on it through the addition of Team projects and Team Project Collections which we’re about to examine.

Page 37: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 37

7 ©2011 Enhance ALM Pty Ltd

Team Projects

• Team Projects in TFS can containone or more Visual Studio Solutions

Team Project

Visual Studio Solution #1 Visual Studio Solution #2

Team Projects

A Team Project is a new “container” that has been introduced through the addition of a Team

Foundation Server to a development team. A Team Project may contain one or more Visual

Studio Solutions which may contain one or more Visual Studio Projects.

Team Projects are a collection of work items, reports, source control and more.

Page 38: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 38 © 2012 Enhance ALM Pty Ltd

8 ©2011 Enhance ALM Pty Ltd

Team Project Collection

Team Project Collections

• Team Project Collections can contain one or more Team Projects

Team Project #1

Visual Studio Solution #1 Visual Studio Solution #2

Team Project #2

Visual Studio Solution #3 Visual Studio Solution #4

DB

Team Project Collections

Team Project Collections group Team Projects and are stored as a single database on the TFS

Data Tier server. Team Project Collections (TPCs) can be backed up and restored independently

and you can also move a TPC between TFS servers.

Page 39: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 39

8 ©2012 Enhance ALM Pty Ltd

Project Structure in TFS

Visual Studio

Projects

Visual Studio

Solutions

Team projects

Team Project

Collections

Sydney

Retail

POS

C# Web Project

C# DB Project

Inventory VB.NET Winforms

Purchasing Market Watch

ASP.NET Project

Project Structure in TFS

Developers will already be familiar with the knowledge that Visual Studio Solutions can contain

one or more Visual Studio Projects. TFS add two more “containers” above these to allow you to

better group larger units of work.

Team Project Collections can contain one or more Team Projects. Team Projects can contain one or more Visual Studio Projects.

Page 40: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 40 © 2012 Enhance ALM Pty Ltd

9 ©2011 Enhance ALM Pty Ltd

Naming a Team Project

• Use a clear and logical name your team members can relate to.

• Avoid product code names• Avoid version numbers• Limited to 64 unicode characters or less• Can’t use / : \ ~ & % ; @ ' " ? < > | # $ * } { , + = [ ]

You CANNOT rename a team project!

Naming a Team Project

There are a number of restrictions on names you can use for Team Projects. First and foremost,

you should know that you CANNOT rename team projects. The name you assign to the Team

project when it is created is the name that will remain with it.

For more information about naming restrictions, refer to the MSDN library article at

http://ealm.info/AS

Page 41: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 41

14 ©2011 Enhance ALM Pty Ltd

CONNECTING TO A TFS SERVER

URL ConstructionConnecting using Team ExplorerConnection Dialogs

Connecting to a TFS Server

In this next section we’ll focus on how you connect to your TFS server and walkthrough connecting from Team Explorer.

Page 42: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 42 © 2012 Enhance ALM Pty Ltd

15 ©2011 Enhance ALM Pty Ltd

URL Construction

• Team Explorer - required information

URL Construction

To connect to your corporate Team Foundation Server from Team Explorer, you will need to

know the following information.

Protocol Has your server been configured to use HTTP (default) or HTTPS (SSL based encrypted connection)

Server Name The server name which you can resolve to the appropriate IP address. This may be the short name (Eg. CorpTFS) or a Fully Qualified Domain Name (FQDN).

TCP/IP Port You will need to know the port number on which the TFS server is listening for connection. This is commonly 8080 (default) or 443 if you are using HTTPS.

Virtual Directory

In 2010, all TFS services are located in a Virtual Directory. By default this is usually “tfs”

Page 43: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 43

16 ©2011 Enhance ALM Pty Ltd

Connecting using Team Explorer

• Start Team Explorer on clientStart Menu | All programs | Microsoft Visual Studio 2010 | Microsoft Visual Studio 2010

• Choose menu item or Team Explorer toolbar

Connecting using Team Explorer

When you install Team Explorer 2010, either as a standalone product or as part of Visual Studio, it appears in the Start Menu in a program folder named “Microsoft Visual Studio 2010”. To start Team Explorer, you should click on the Microsoft Visual Studio 2010” menu item inside this folder to start Team Explorer.

Once Team Explorer is visible in the Visual Studio Shell, you can choose to connect to TFS using either of the following two ways:

1. Select “Connect to Team Foundation Server…” in the Team drop down menu 2. Select the third button inside the Team Explorer toolbox.

Page 44: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 44 © 2012 Enhance ALM Pty Ltd

17 ©2011 Enhance ALM Pty Ltd

Connection Dialogs

Connection Dialogs

1. In the “Connect to Team Project” dialog box, click the Servers button on the right. 2. In the “Add/remove Team Foundation Server” dialog box, click the Add button on the

right 3. Enter the name of the TFS Server and optionally the Path (Virtual directory), the Port

Number and the protocol if the default values are incorrect. 4. Click on OK to connect to your Team Foundation Server

Page 45: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 45

14 ©2012 Enhance ALM Pty Ltd

PROCESS TEMPLATE OVERVIEW

What is a Process TemplateThe importance of choosing the right templateAvailable Templates• MSF Agile v5.0• MSF CMMI v5.0• Microsoft Scrum v1.0Template Architecture

Process Template Overview

In this section we’ll look at the following:

• What is a Process Template • The importance of choosing the right template • Available Templates • MSF Agile v5.0 • MSF CMMI v5.0 • Microsoft Scrum v1.0 • Template Architecture

Page 46: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 46 © 2012 Enhance ALM Pty Ltd

11 ©2011 Enhance ALM Pty Ltd

What is a Process Template?

• The template TFS uses when creating new Team Projects

• Defines key aspects of a team project such as work item types, queries and reports

• You can choose a process template during the project creation wizard

• While some aspects of the process can be changed after a project has been created, you can’t simply change from one process template to another after the project has been created

What is a Process Template?

A Process Template is specified when you start the Project Creation Wizard and determines a number of significant characteristics of your new projects including;

• Work item types (Eg. User Story or Requirement or Product Backlog Item) • Initial work item instances • Work Item Queries • Reports • SharePoint Document libraries and their contents • Default security groups • Default Areas and Iteration names • Source Control settings

Once a Team project has been created, the Process Template no longer has any bearing on the Team Project. It is only used during Team project creation.

Page 47: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 47

16 ©2012 Enhance ALM Pty Ltd

The importance of choosing the right template• Your selection of a process template should reflect

how your team works.• It is not easy to change from one process template

to a different one after the project has been created.• An incorrect choice can cause great friction and

dissatisfaction across a team.• One size does not fit all. Expect to want or need to

make some customisations to the template.

The importance of choosing the right template

Selection of the Process Template is an important choice during the creation of a new Team

Project. This is largely because it is not possible to easily change from one Process Template to a

different one once a Team Project has been created and information stored in the Team Project.

NOTE: Once a team project has been created you can make some changes to the team project.

Eg. You can add additional fields to work item types or modify transition between work item

states.

Page 48: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 48 © 2012 Enhance ALM Pty Ltd

17 ©2012 Enhance ALM Pty Ltd

Available templates

• There are two out-of-the-box templates– MSF for Agile Software Development– MSF for CMMI Process Improvement

• The two OOTB templates are based on a different MSF process with a different philosophical approach to software development.

• On 19th July 2010, Microsoft announced a freely available Scrum template called Microsoft Visual Studio Scrum 1.0

Available templates

When you install the RTM version of Team Foundation Server, the following two process

templates are automatically installed.

• MSF for Agile Software Development

• MSF for CMMI Process Improvement

You can download a third template, the “Microsoft Visual Studio Scrum 1.0” from the Visual

Studio Gallery and install it. To download the Scrum template, visit http://ealm.info/AH

Page 49: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 49

18 ©2012 Enhance ALM Pty Ltd

MSF for Agile Software Development

• Best suited for teams that;– Develop software in short iterative cycles– Have open communication between team members– Respond and adapt to change readily– Do frequent deployment of their software– Practice Scrum, XP, FDD or any other Agile methodology

MSF for Agile Software Development

The MSF for Agile Software Development template is best suited for teams that;

• Develop software in short iterative cycles

• Have open communication between team members

• Respond and adapt to change readily

• Do frequent deployment of their software

• Practice Scrum, XP, FDD or any other Agile methodology

You can read the Process Guidance for this template online at http://EALM.INFO/AGILE5

Page 50: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 50 © 2012 Enhance ALM Pty Ltd

19 ©2012 Enhance ALM Pty Ltd

MSF for CMMI Process Improvement

• Capability Maturity Model Integration (CMMI)• Best suited for teams that;

– Develop in a more traditional waterfall manner– Require a strong process driven workflow– Are geared towards larger projects that are broken into

phases and groups– Are focused on gaining CMMI Level 3 appraisal

MSF for CMMI Process Improvement

CMMI was originally developed by the Carnegie Mellon Software Engineering Institute to assess

defence, aerospace, and government contractors in a regulated environment.

The MSF for CMMI Process Improvement template is best suited for teams that;

• Develop in a more traditional waterfall manner

• Require a strong process driven workflow

• Are geared towards larger projects that are broken into phases and groups

• Are focused on gaining CMMI Level 3 appraisal

You can read the Process Guidance for this template online at http://EALM.INFO/CMMI5

Page 51: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 51

20 ©2012 Enhance ALM Pty Ltd

Microsoft Visual Studio Scrum 1.0

• Best suited for teams that;– Have had Scrum training– Use Scrum terminology– Conduct Scrum ceremonies (Reviews, retrospectives)– Use and maintain Product and Sprint Backlogs

Microsoft Visual Studio Scrum 1.0

The Microsoft Visual Studio Scrum 1.0 template is best suited for teams that;

• Have had Scrum training

• Use Scrum terminology

• Conduct Scrum ceremonies (Reviews, retrospectives)

• Use and maintain Product and Sprint Backlogs

You can read the Process Guidance for this template online at http://EALM.INFO/SCRUM1

Page 52: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 52 © 2012 Enhance ALM Pty Ltd

21 ©2012 Enhance ALM Pty Ltd

Template Architecture

• Process Template Composition

• New Team Project Wizard– used by project leads to create a new team project

• XML Process definition files– a set of tasks that must run to correctly configure a new

team project for the process.

BuildClassificationsGroup and PermissionsLabReports

Test ManagementVersion ControlWindows SharePoint ServicesWorkItem Tracking

Template Architecture

Process Templates are a collection of XML and content files. To get a better understanding of

the inner workings of a Process Template, you can download the Process Template files to your

local computer and examine them.

The download the MSF for Agile Software Development process template, follow these steps:

1. Open Visual Studio 2010 and connect to your TFS Server

2. Select Process Template Manager… from Team | Team Project Collection Settings

3. Select the Process Template you wish to download and click the Download button

4. Choose a folder to download the template to and click Select Folder

5. Open the folder you selected in Windows Explorer and navigate through the various XML

files and content folders.

Page 53: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 53

22 ©2012 Enhance ALM Pty Ltd

CREATING A NEW TEAM PROJECT

New Team Project Creation FormWalkthrough of Project Creation Wizard (PCW)Process GuidanceExercise – Exploring the Process Guidance

Page 54: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 54 © 2012 Enhance ALM Pty Ltd

23 ©2012 Enhance ALM Pty Ltd

New Team Project Request form• Reduce mistakes by

providing a form to prompt for required data.

Page 55: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 55

24 ©2012 Enhance ALM Pty Ltd

WALKTHROUGHCreating a new Team Project using the Project Creation Wizard

Walkthrough

Your instructor will walk you through the New Team Project Wizard and highlight the various

choices available on each screen in the wizard.

Page 56: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 56 © 2012 Enhance ALM Pty Ltd

20 ©2011 Enhance ALM Pty Ltd

Start New Team Project Wizard

• Use Team Explorer to create new Team Projects

21 ©2011 Enhance ALM Pty Ltd

Project name and description

Page 57: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 57

22 ©2011 Enhance ALM Pty Ltd

Select Process Template

23 ©2011 Enhance ALM Pty Ltd

Choose SharePoint site location

Page 58: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 58 © 2012 Enhance ALM Pty Ltd

24 ©2011 Enhance ALM Pty Ltd

Choose Source Control settings

25 ©2011 Enhance ALM Pty Ltd

Confirm settings

Page 59: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 59

26 ©2011 Enhance ALM Pty Ltd

Team Project Created

Walkthrough complete

Your new Team Project has now been created.

Page 60: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 60 © 2012 Enhance ALM Pty Ltd

27 ©2011 Enhance ALM Pty Ltd

Process Guidance

Process Guidance

At the completion of the New Team Project Wizard you are given the opportunity to view the

Process Guidance that corresponds to the Process Template you selected in the wizard.

The Process Guidance is a website that provides detailed information about the process you

have selected including information about the various work item types, the fields available in

each work item type and much more.

It is well worth your time to go through the Process Guidance to get an understanding how to

best use the features of your new Team Project.

You can view the Process Guidance for the three Microsoft Process Templates at any time on the

Internet using the following links.

http://EALM.INFO/AGILE5 http://EALM.INFO/CMMI5 http://EALM.INFO/SCRUM1

Page 61: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 61

28 ©2011 Enhance ALM Pty Ltd

EXERCISE

Spend 5-10 minutes exploring the online Process Guidance for one of the following processes.

http://ealm.info/agile5http://ealm.info/cmmi5http://ealm.info/scrum1

NOTE: This exercise requires Internet access

Exercise

1. Choose one of the following URLs corresponding to the three process templates

provided by Microsoft.

• http://ealm.info/agile5

• http://ealm.info/cmmi5

• http://ealm.info/scrum1

2. Enter the URL into a browser to be taken to the location in the MSDN library where the

process guidance is located.

3. Spend 5-10 minutes exploring the online Process Guidance.

Page 62: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 62 © 2012 Enhance ALM Pty Ltd

34 ©2012 Enhance ALM Pty Ltd

WHAT’S NEXT?

Configuring Team Project PropertiesConfigure Security GroupsConfirm Source Control settingsConfigure initial source foldersSpecify desired Check-in PoliciesConfigure initial Areas and IterationsConfigure initial Projects Alerts

For now we’ll just have a quick look at Security

What’s Next?

Once your Team project has been created, there are a number of steps that still need to be completed. One of the most important steps is to configure security for your new Team Project. The next section will examine configuring security.

Page 63: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 63

30 ©2011 Enhance ALM Pty Ltd

CONFIGURING SECURITY

Security in three placesA common security problemEffective role based security

Configuring Security

In this next section we’ll look at configuring the default role-based security in TFS. We’ll examine security in a very general sense and not dive into fine grain security in this course.

Page 64: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 64 © 2012 Enhance ALM Pty Ltd

31 ©2011 Enhance ALM Pty Ltd

Security in 3 places

TEAMFOUNDATION

SERVER

SHAREPOINTPRODUCTS

SQLREPORTINGSERVICES

Security in 3 places

One of the initial misunderstandings people have with TFS is the thought that it is a single product. In reality TFS relies heavily on other Microsoft products to provide its functionality. As a result of this, security must be configured not only in TFS but in SharePoint and SQL Reporting Services.

Page 65: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 65

32 ©2011 Enhance ALM Pty Ltd

A common security problem

TFS Permissions

SQL Permissions

SharePoint Permissions

A common security problem

One of the most common problems involving security occurs when permissions for a user are only configured in TFS and not in SharePoint and SQL Reporting Services.

As you can see in the screenshot in the slide above, there are little red crosses next to the Documents and Reports nodes. This is a sure indicator that security has only been set in TFS and not the other two locations.

Page 66: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 66 © 2012 Enhance ALM Pty Ltd

33 ©2011 Enhance ALM Pty Ltd

Effective role based security

1. Create a new team project Eg. “Payroll”2. Create four groups in active directory

– Domain\Payroll_administrators– Domain\Payroll_contributors– Domain\Payroll_readers– Domain\Payroll_builders

3. Add appropriate members to each group4. Use TFS Administration Tool* to configure groups

in TFS, SQL & SharePoint(*Download from http://ealm.info/AR)

Effective role based security

The most effective security is role based security where team members are grouped based on their access requirements to the Team project. Integration with Active Directory allows us to centralise security configuration and ensure that ongoing security is easily managed using standard practises.

One suggested method of configuring security is to create four Active Directory group based on the four default permissions in a Team project. To assist in identifying these in AD, prefix each group name with the name of the specific Team project.

Add appropriate users to each AD group.

Now that the group are configured, use a free tool from CodePlex to assign these groups to Team Foundation Server, SQL Reporting Services and SharePoint.

Page 67: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 67

34 ©2011 Enhance ALM Pty Ltd

DEMONSTRATIONThe TFS Administration Tool

Demonstration

In this demonstration, your trainer will show you a great freeware tool called the TFS Administration Tool. You will see that it makes the process of adding groups to the three products very easy.

Page 68: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 68 © 2012 Enhance ALM Pty Ltd

35 ©2011 Enhance ALM Pty Ltd

DELETING TEAM PROJECTS

How to Delete a Team ProjectDeletion using TFS Admin ConsoleDeletion using the Command-line tool

Deleting Team Projects

Deleting Team projects is not a common requirement for a person working with TFS. If, for whatever reason you need to do this, there are two alternative methods.

Page 69: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 69

36 ©2011 Enhance ALM Pty Ltd

How to delete a Team Project

• Two alternative ways: TFS Administration Console or the Command Line

• Each uses different approaches and what is deleted is different

• You must be a member of the Team Foundation Administrators group or have explicit permissions

How to delete a Team Projects

Deleting Team projects is not a common requirement for a person working with TFS. If, for whatever reason, you find you do need to delete a Team Project, you can select one of two methods to achieve this.

Page 70: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 70 © 2012 Enhance ALM Pty Ltd

37 ©2011 Enhance ALM Pty Ltd

Deletion using TFS Admin Console

Deletion using TFS Admin Console

The easiest way to delete a Team Project is to use the TFS Administration Console on the TFS Server.

1. Start the TFS Administration Console 2. Select the Team Project Collections node from the menu tree 3. Select the Team Project that contains the Team Project you wish to delete 4. From the list of Team Projects in the selected Team Project Collection, click on the Team

Project you wish to delete and then click the Delete link as highlighted in the slide above.

Page 71: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 – Initiating a New Project

© 2012 Enhance ALM Pty Ltd Page 71

38 ©2011 Enhance ALM Pty Ltd

Deletion using Command-line toolTeam Foundation Delete Project ToolCopyright (c) Microsoft Corporation. All rights reserved.

TfsDeleteProject [/q] [/force] [/excludewss] /collection:<url> <team project name>

Deletes the Team Project from Team Foundation. To use this command, you must be a member of either the Team Foundation Server Administrators group or a member of the Project Administrators group for the project you are deleting. Use this command with caution because after deleting the team project it cannot be recovered.

[/q] - Do not prompt for confirmation.[/force] - Continue even if some data cannot be deleted.[/excludewss] - Exclude the project's SharePoint site when deleting the project. This option will leave site intact so that it remains for other projects that may be using it./collection:<url> - The url for a Team Project Collection.<team project name> - The name of the project. Use quotes if there are spaces in the name.

TFSDeleteProject /collection:http://tfsserver:8080/tfs/defaultcollection “My Project”

Deletion using Command-line tool

Deleting a Team project using the command prompt is different from deleting from the TFS Administration Console. For specific details and more information, visit http://ealm.info/AQ

Page 72: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 – Initiating a New Project Managing Projects with Visual Studio 2010

Page 72 © 2012 Enhance ALM Pty Ltd

39 ©2011 Enhance ALM Pty Ltd

HANDS ON LAB

This Lab comprises the following exercises:1. Reviewing Team Foundation Server Status 2. Creating and verifying a new Team Project

20 Minutes

40 ©2011 Enhance ALM Pty Ltd

?

ANY QUESTIONS?

Page 73: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 LAB – Creating a new Team Project

© 2012 Enhance ALM Pty Ltd Page 73

Overview In this lab you will use a number of tools to review TFS information and then create a new Team Project.

System Requirements In order to complete this lab you will need the Visual Studio 2010 RTM virtual machine provided by Microsoft.

Exercises This Hands-On Lab comprises the following exercises:

1. Reviewing Team Foundation Server Status

2. Creating and verifying a new Team Project

Estimated time to complete this lab: 25 minutes.

Page 74: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 LAB – Creating a new Team Project Managing Projects with Visual Studio 2010

Page 74 © 2012 Enhance ALM Pty Ltd

Exercise 1: Reviewing Team Foundation Server Status In this exercise students will review the server settings and status that exist for Team Foundation Server.

• Review application tier settings. • Review data tier settings. • Review Reporting Services Settings. • Review SharePoint Web applications. • Review Team Foundation Server Logs.

Task Detailed Steps Logging onto the lab virtual machine

1. Start the lab Virtual Machine if it is not already started 2. Log in as Michael Affronti if you have not already done so. The

password is P2ssw0rd Open Team Foundation Server Administration Console and review application tier settings.

1. Click Start | All Programs | Microsoft Team Foundation Server 2010.

2. Click Team Foundation Administration Console.

3. Under the name of your TFS server, click Application Tier.

4. What is the service account under which the application tier is running? ______________________________________________________

5. What is the name of the application pool and Web site? ______________________________________________________

6. What authentication mechanism is being used by the application tier? ______________________________________________________

7. Click Change URLs. What is the notification (public) URL? What is the server URL? Why might these be different? Click Cancel. ______________________________________________________ ______________________________________________________ ______________________________________________________

8. What is the full URL for Team System Web Access? ______________________________________________________

9. Is alerting turned on? ______________________________________________________

Page 75: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 LAB – Creating a new Team Project

© 2012 Enhance ALM Pty Ltd Page 75

Task Detailed Steps Create a new team project collection.

1. In the Team Foundation Administration Console, under the name of your TFS server, click Team Project Collections.

2. Click Create Collection.

3. Name the new project collection HRAppsCollection.

4. Accept defaults for the other options by clicking Next five times.

5. Click Verify.

6. If you Readiness Checks all pass, click Create.

Note: It may take up to ten minutes before you can move to the next step.

7. Click Complete.

8. Click Close.

9. Select the HRAppsCollection in the list then click Stop Collection. The collection must be stopped in order to rename it.

10. Enter “Stopping collection to rename it” as the reason and click Stop.

11. Click Edit Settings and then rename the project collection to HRProjectCollection and click Save.

12. Click Start Collection to bring the renamed project collection back online. Notice the URL for the Team Project Collection has been changed.

Page 76: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 LAB – Creating a new Team Project Managing Projects with Visual Studio 2010

Page 76 © 2012 Enhance ALM Pty Ltd

Task Detailed Steps Review data tier settings. 1. Review the settings under Data Tier Summary. You can find this when

you select the Application Tier node.

2. What is the name of the SQL Server?

______________________________________________________

3. Is TFS using a named instance?

______________________________________________________

Review Reporting Services settings.

1. Review the settings under Report Services Summary.

2. What are the URLs for report manager and report server?

______________________________________________________

3. Under which account are they running?

______________________________________________________

Review SharePoint settings.

1. Click the SharePoint Web Applications node.

2. What SharePoint Web applications have been added?

______________________________________________________

3. What service accounts are specified to support the team project portals?

______________________________________________________

4. Click the Extensions for SharePoint products node. How does the information here map to the SharePoint Web applications noted above?

______________________________________________________

______________________________________________________

View the Team Foundation Server logs.

1. Click the Logs node.

2. Open some of the logs and review them. If you encountered trouble with the installation or configuration of Team Foundation Server, would these logs be helpful in resolving the issue?

______________________________________________________

Close the Team Foundation Administration Console

1. Close the Team Foundation Administration Console

Page 77: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 2 LAB – Creating a new Team Project

© 2012 Enhance ALM Pty Ltd Page 77

Exercise 2: Creating and verifying a new Team Project In this exercise, students will create a new team project, and verify that it has been created successfully.

• Create a new team project. • Verify team project creation.

Task Detailed Steps Logging onto the lab virtual machine

1. Start the lab Virtual Machine if it is not already started 2. Log in as Michael Affronti if you have not already done so. The

password is P2ssw0rd Create a new Team Project for the new project collection.

1. Click Start | All Programs | Microsoft Visual Studio 2010.

2. Click Team | Connect to Team Foundation Server.

3. In the Connect to Team Project dialog, select the HRProjectCollection and click Connect.

4. In Team Explorer, right click the server and click New Team Project.

5. Name the team project MYTeamProject and click Next

6. Select the MSF for Agile Development v5.0 process template to create the project. Click Next.

7. Keep the default to create a new SharePoint site for this project and click Next.

8. Keep the default to create a new source control folder and click Next.

9. Review the settings and click Finish.

10. The status of the project creation will be shown on the Team Project Creation Status page as each step is completed. (The team project creation could take up to five minutes due to running on a virtual machine.)

11. On the Team Project Created page, clear the Launch the process guidance for more information about running the team project check box and click Close.

Page 78: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 2 LAB – Creating a new Team Project Managing Projects with Visual Studio 2010

Page 78 © 2012 Enhance ALM Pty Ltd

Task Detailed Steps Verify team project creation.

1. Find the newly created team project in Team Explorer.

2. Expand the Documents and Reports folders and ensure that there are items listed under them.

3. Right click the team project and click Show Project Portal to view the Project Dashboard.

4. Close the Browser. 5. In the Work Items folder, expand the Team Queries node to see the

queries that are preconfigured for you. Open Team Foundation Server Administration Console and verify the new team project belongs to the proper project collection.

1. If you closed The Team Foundation Administration Console:

a. Click Start | All Programs | Microsoft Team Foundation Server 2010.

b. Click Team Foundation Administration Console.

2. Under Team Foundation, click Application Tier.

3. Under Application Tier, click Team Project Collections.

4. Select the HRProjectCollection Team Project Collection.

5. Click the Team Projects tab and verify that the MYTeamProject team project belongs to the HRProjectCollection.

Page 79: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 52 © 2012 Enhance ALM Pty Ltd

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 3 – Managing Requirements using Work Items

2 ©2011 Enhance ALM Pty Ltd

Module Objectives

• At the end of this module you will be able to;– Describe the purpose and benefit of Work Items– Understand the different Work Items type– Create Work Items using a variety of tools– Link Work Items to enhance traceability– Use and create Work Item Queries– Create alerts in TFS using the TFS Alerts Explorer Power Tool

Page 80: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 53

3 ©2012 Enhance ALM Pty Ltd

Agenda

• Requirements• Understanding Work Items• Work Items by Process Template• Creating Work Items• Linking Work Items• Querying Work Items• TFS Alerts

4 ©2011 Enhance ALM Pty Ltd

UNDERSTANDING WORK ITEMS

What are Work Items?Work Item PropertiesWork Item FieldsWork Item States and Transitions

Page 81: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 54 © 2012 Enhance ALM Pty Ltd

5 ©2011 Enhance ALM Pty Ltd

What are Work Items

• Work Items are assignments we want to track such as Tasks, Bugs, User Stories

• Work items are created via Team Explorer, Excel, Project, the Project Portal or Team Web Access

• Work Items are searchable• Work Items can be linked to other Work Items or to

external resources

6 ©2011 Enhance ALM Pty Ltd

Work Item Properties

• Work Item Types have:– Fields

• The various pieces of data stored in that Work Item– States

• Indicate status of the Work ItemEg. New, Active, Resolved, Closed

– Transitions• Define allowable paths between states in a Work Item

Eg. - New to Active, Active to Resolved, Resolved To Closed

Page 82: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 55

7 ©2011 Enhance ALM Pty Ltd

Work Item Fields

• Fields in a User Story Work Item

8 ©2011 Enhance ALM Pty Ltd

Work Item States and Transitions

• States and Transitions for a User Story Work Item

Page 83: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 56 © 2012 Enhance ALM Pty Ltd

9 ©2011 Enhance ALM Pty Ltd

WORK ITEM TYPES BY PROCESS

Work Item Types (Agile)Work Item Types (CMMI)Work Item Types (SCRUM)

10 ©2011 Enhance ALM Pty Ltd

Work Item Types (Agile)Name Purpose

Bug A bug communicates that a potential problem exists in the code that your team is developing.

Issue A team can use the issue work item to track an event or situation that might block work or is blocking work on the product.

Shared Steps Your team can use shared steps to streamline definition and maintenance of manual test cases

Task A task communicates the need to do some work

Test Case A team uses test cases to define both manual and automated tests that can be run and managed by using Microsoft Test Manager.

User Story A user story communicates functionality that is of value to the end user of the product or system.

Page 84: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 57

11 ©2011 Enhance ALM Pty Ltd

Work Item Types (CMMI)Name Purpose

Bug A bug communicates that a potential problem exists in the code that your team is developing.

Change Request A team can use the change request work item to track a proposed change to some part of the product.

Issue A team can use the issue work item to track an event or situation that might block work or is blocking work on the product.

Requirement A requirement communicates functionality that is of value to the customer of the product or system.

Review A team can use the review work item to document the results of a design or code review.

Risk Risk work items document a possible event or condition that can have a negative outcome on the project in the future.

Shared Steps Your team can use shared steps to streamline definition and maintenance of manual test cases

Task A task communicates the need to do some work

Test Case A team uses test cases to define both manual and automated tests that can be run and managed by using Microsoft Test Manager.

12 ©2011 Enhance ALM Pty Ltd

Work Item Types (SCRUM)Name Purpose

Bug A bug communicates that a potential problem exists in the code that your team is developing.

Impediment Allows you to identify and track problems that prevent the team from completing tasks efficiently.

Product Backlog Item

Product Backlog Items are the requirements of the product.

Shared Steps Your team can use shared steps to streamline definition and maintenance of manual test cases.

Sprint Captures the goal, the start and end dates, and the retrospective results for each sprint in a project.

Task A task communicates the need to do some work.

Test Case A team uses test cases to define both manual and automated tests that can be run and managed by using Microsoft Test Manager.

Page 85: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 58 © 2012 Enhance ALM Pty Ltd

13 ©2011 Enhance ALM Pty Ltd

CREATING WORK ITEMS

Creating Work Items using Team ExplorerDemonstrationCreating Work Items using Microsoft ExcelDemonstrationUsing Microsoft Project

14 ©2011 Enhance ALM Pty Ltd

Creating Work Items in Team Explorer• Work Items are often created using Team Explorer• Expand the Team Project you wish to create your

new Work Items in• Right-click on the Work Items node and select New

Work Item

Page 86: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 59

15 ©2011 Enhance ALM Pty Ltd

DEMONSTRATIONCreating a Quick Work Item in Visual Studio

16 ©2011 Enhance ALM Pty Ltd

Creating Items in Excel• Work items can be

created and edited via Microsoft Excel

• Provides a more familiar UI to Managers and end users unfamiliar with Visual Studio

Page 87: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 60 © 2012 Enhance ALM Pty Ltd

17 ©2011 Enhance ALM Pty Ltd

DEMONSTRATIONCreating a Work Item using Microsoft Excel

18 ©2011 Enhance ALM Pty Ltd

Using Project

• Provides a familiar UI for managers to work with • Items can be individually marked for synchronization• Project fields are mapped as part of the Project

Template to individual Work Item fields

Page 88: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 61

19 ©2011 Enhance ALM Pty Ltd

TRACEABILITY THROUGH LINKING WORK ITEMS

Linking Work itemsDifferent types of linksAdding a link to a Work ItemDemonstration – Linking Work Items

20 ©2011 Enhance ALM Pty Ltd

Linking Work Items

User Story

TaskTask

TasksChangeset

Changesets

ChangesetBugs

ChangesetTest Cases

Page 89: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 62 © 2012 Enhance ALM Pty Ltd

21 ©2011 Enhance ALM Pty Ltd

Different types of Links• Affected By• Affects• Changeset• Child• Hyperlink• Parent• Predecessor• Related

• Result Attachment• Shared Steps• Successor• Test Case• Test Result• Tested By• Tests• Versioned Item

22 ©2011 Enhance ALM Pty Ltd

Adding a Link to a Work Item

Page 90: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 63

23 ©2011 Enhance ALM Pty Ltd

DEMONSTRATIONLinking Work Items

24 ©2011 Enhance ALM Pty Ltd

FINDING WORK ITEMS

Querying Work itemsBuilt-in QueriesQuery TypesQuery ToolbarDemonstrationExercise

Page 91: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 64 © 2012 Enhance ALM Pty Ltd

25 ©2011 Enhance ALM Pty Ltd

Querying Work Items

• Team Explorer comes with pre-built queries for retrieving work items

• You can edit and create your own queries• Query filters includes variables such as:

– @project– @Me– @Date

• Queries a can span across projects

26 ©2011 Enhance ALM Pty Ltd

Built-in Queries

Page 92: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 65

27 ©2011 Enhance ALM Pty Ltd

Query Types

• There are three types of queries in TFS 2010– Flat List of Work Items

• Default query style, identical to TFS 2005/2008– Tree of Work Items

• Displays work items in a hierarchical view– Work Items and Direct Links

• Find WI’s by the links types they have

28 ©2011 Enhance ALM Pty Ltd

Query Toolbar

← Saves changes to changed work items

← Refreshes the query results

← Cancels/Stops a query

← Prints query results

← Adds a new linked work item

← Links to an existing item

← Opens the currently selected work item

Page 93: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 66 © 2012 Enhance ALM Pty Ltd

29 ©2011 Enhance ALM Pty Ltd

Query Toolbar

← Expand/Collapse All

← Promote / Demote current work item(s)

← Column Options

← Edit the current query

← Creates a report in Microsoft Excel

← Open query result in Microsoft Excel or

send results in email using Microsoft

Outlook

30 ©2011 Enhance ALM Pty Ltd

DEMONSTRATIONCreating a Work Item Query

Page 94: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 67

31 ©2011 Enhance ALM Pty Ltd

EXERCISECreating and editing Work Items

Exercise

Create the following queries in the TailSpin Toys team project.

NOTE: Not all queries will return data in TailSpin Toys.

Name: High Priority Bugs in the past week for Michael or April Criteria: Return all Bug work items that have been assigned to either Michael or April

that have been activated in the past 7 days and have a priority of either 1 or 2 Location: My Queries

Name: My User Stories and linked test cases Criteria: Return a tree of work items that shows all user stories assigned to the user

that is running the query and all linked test cases. Location: Team Queries

Name: Requirements with linked bugs Criteria: Return only those User Stories that have Bugs linked to them. Location: Team Queries

Page 95: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 68 © 2012 Enhance ALM Pty Ltd

32 ©2011 Enhance ALM Pty Ltd

ALERTS IN TFS

What are Alerts?Two Alert ChoicesCreating a new AlertDemonstrationExercise

33 ©2011 Enhance ALM Pty Ltd

What are Alerts?

• Alerts are generally emails that you can chose to receive when certain events occur.

• Some common Alerts you may like to subscribe to include– A Work item was assigned to me– My Work Items changed– Check-In to a specific folder with a policy override– All builds requested by me– Failed Builds

Page 96: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 69

34 ©2011 Enhance ALM Pty Ltd

Two Alerts Choices?• Project Alerts

– Built-in– VERY limited (5 alerts)

• Alerts Explorer– Part of TFS Power Tools– Excellent

35 ©2011 Enhance ALM Pty Ltd

Creating a new alert

Page 97: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 70 © 2012 Enhance ALM Pty Ltd

36 ©2011 Enhance ALM Pty Ltd

DEMONSTRATIONCreating Custom Alerts using the Alerts Explorer

Page 98: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 3 – Managing Requirements using Work Items

© 2012 Enhance ALM Pty Ltd Page 71

37 ©2011 Enhance ALM Pty Ltd

EXERCISECreating an Alert using the Alerts Explorer

Exercise

Using the TFS Alerts Explorer, create the following Alert

1. Email [email protected] when a Bug work item assigned to Michael Affronti and either Severity 1 or Priority 1.

Page 99: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 3 – Managing Requirements using Work Items Managing Projects with Visual Studio 2010

Page 72 © 2012 Enhance ALM Pty Ltd

39 ©2011 Enhance ALM Pty Ltd

?

ANY QUESTIONS?

Any Questions Now’s the time to ask any questions you have not had an opportunity to ask during the module.

Page 100: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 4 – Effective Estimation

© 2012 Enhance ALM Pty Ltd Page 73

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 4 – Effective Estimation

2 ©2012 Enhance ALM Pty Ltd

Agenda

• Group Discussion• Who does Estimation?• Units of measure• Poker Planning

Page 101: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 4 – Effective Estimation Managing Projects with Visual Studio 2010

Page 74 © 2012 Enhance ALM Pty Ltd

3 ©2012 Enhance ALM Pty Ltd

Group Discussion

What are the issues faced due to poor estimation?

4 ©2012 Enhance ALM Pty Ltd

Who does Estimating?

• Who should estimate tasks?• Who is accountable for estimates?• The Team must estimate the level of effort it will take

to implement each item in the Product Backlog– Estimation should be done collaboratively

Page 102: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 4 – Effective Estimation

© 2012 Enhance ALM Pty Ltd Page 75

5 ©2012 Enhance ALM Pty Ltd

Units of Measure

• Story Points– A unit of measure for expressing the overall size of a PBI– Their sole purpose is to allow tradeoffs among other user

stories in the product backlog– Points are relative and do not translate into precise hours– Only Sprint tasks are estimated in hours

Product Backlog Items = Story PointsSprint Tasks = Hours

6 ©2012 Enhance ALM Pty Ltd

Velocity

• The velocity of a team equals the number of story points achieved to the definition of Done in a sprint

• Eg. A team of 7 who delivered 140 story points in a 4 week sprint has:– Velocity of 140– An average of 1 story point per team member per day

• Don’t try to compare velocity across different teams.

Page 103: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 4 – Effective Estimation Managing Projects with Visual Studio 2010

Page 76 © 2012 Enhance ALM Pty Ltd

7 ©2012 Enhance ALM Pty Ltd

Group Activity

PokerPlanning

8 ©2012 Enhance ALM Pty Ltd

Group Activity

• As a group decide on how many story points the following Product Backlog Item is.

Wash the exterior of a family car and

vacuum the inside.

Story points = ___

Page 104: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 4 – Effective Estimation

© 2012 Enhance ALM Pty Ltd Page 77

9 ©2012 Enhance ALM Pty Ltd

Group Activity

• Using Poker Planning, provide estimates for the following;

Rotate the tires on the car

including the spare in the

boot.

Story points = ___

Build a 1 metre high mailbox using cement

and bricks

Story points = ___

10 ©2012 Enhance ALM Pty Ltd

Group Activity

• Using Poker Planning, provide estimates for the following;

Replace car battery

Story points = ___

Repaint drivers car door

Story points = ___

Page 105: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 4 – Effective Estimation Managing Projects with Visual Studio 2010

Page 78 © 2012 Enhance ALM Pty Ltd

11 ©2012 Enhance ALM Pty Ltd

?

ANY QUESTIONS?

Page 106: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 5 – Planning work using Backlogs and Sprints

© 2012 Enhance ALM Pty Ltd Page 79

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 5 – Planning work using Backlogs and Sprints

2 ©2012 Enhance ALM Pty Ltd

Agenda

• The Product Backlog• The Sprint Backlog• Work Item Queries• Discussion

Page 107: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 5 – Planning work using Backlogs and Sprints Managing Projects with Visual Studio 2010

Page 80 © 2012 Enhance ALM Pty Ltd

3 ©2012 Enhance ALM Pty Ltd

The Product Backlog

• Prioritized list of product/project requirements• Expressed in business language• Ideally expressed such that each item has value to

the user or customers of the product• Anyone can contribute items for the backlog• One person (the Product Owner) is responsible for

prioritization and making sure requirements are well formed

4 ©2012 Enhance ALM Pty Ltd

The Sprint Backlog

• The Sprint Backlog is a list of Tasks that defines a Team's work for a Sprint– Tasks are related to the user stories selected for the Sprint– Tasks emerge during Sprint planning– Tasks continue to emerge during the Sprint

• The tasks are what the Team has defined as being required to turn committed Product Backlog items into system functionality

• The ideal task size is no more than one day– Tasks are estimated as a team

Page 108: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 5 – Planning work using Backlogs and Sprints

© 2012 Enhance ALM Pty Ltd Page 81

5 ©2012 Enhance ALM Pty Ltd

Work Item Queries

• The Scrum template creates a folder to contain the Current Sprint

• Queries need to be manually updated

6 ©2012 Enhance ALM Pty Ltd

Group Discussion

How does/might Scrum work in your organisation?

Page 109: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 5 – Planning work using Backlogs and Sprints Managing Projects with Visual Studio 2010

Page 82 © 2012 Enhance ALM Pty Ltd

7 ©2012 Enhance ALM Pty Ltd

?

ANY QUESTIONS?

Page 110: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 6 – Managing Risks

© 2012 Enhance ALM Pty Ltd Page 83

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 6 – Managing Risks

2 ©2012 Enhance ALM Pty Ltd

Agenda

• How do you track project risks today?• Risks in MSF Agile• Risks in CMMI• Tracking Risks in Scrum

Page 111: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 6 – Managing Risk Managing Projects with Visual Studio 2010

Page 84 © 2012 Enhance ALM Pty Ltd

3 ©2012 Enhance ALM Pty Ltd

Group Discussion

How do you track project risks today?

4 ©2012 Enhance ALM Pty Ltd

Risks in MSF Agile

• No specific Risk work item type.

Page 112: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 6 – Managing Risks

© 2012 Enhance ALM Pty Ltd Page 85

5 ©2012 Enhance ALM Pty Ltd

Risk Work Items in CMMI

6 ©2012 Enhance ALM Pty Ltd

Risk Work Items in CMMI

Page 113: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 6 – Managing Risk Managing Projects with Visual Studio 2010

Page 86 © 2012 Enhance ALM Pty Ltd

7 ©2012 Enhance ALM Pty Ltd

Tracking Risks in Scrum

• There is no Risk work item type in the Microsoft Scrum v1.0 process template.

• Options– Add risks as Product Backlog Items– Create a Risk work item type

8 ©2012 Enhance ALM Pty Ltd

?

ANY QUESTIONS?

Page 114: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management
Page 115: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 7 – Keeping Quality in Focus

© 2012 Enhance ALM Pty Ltd Page 87

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 7 – Avoiding Technical Debt & Keeping Quality in Focus

2 ©2012 Enhance ALM Pty Ltd

Agenda

• Group Discussion• What is Technical Debt?• Contributing factors• Avoiding Technical Debt• Conclusion

Page 116: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 7 – Keeping Quality in Focus Managing Projects with Visual Studio 2010

Page 88 © 2012 Enhance ALM Pty Ltd

3 ©2012 Enhance ALM Pty Ltd

Group Discussion

How do you monitor Quality on your projects today?

4 ©2012 Enhance ALM Pty Ltd

What is Technical Debt

• The most frequently quoted definition comes from Ward Cunningham

“Technical Debt includes those internal things that you choose not to do now, but which will impede future development if left undone. This includes deferred refactoring.Technical Debt doesn’t include deferred functionality, except possibly in edge cases where delivered functionality is “good enough” for the customer, but doesn’t satisfy some standard (e.g., a UI element that isn’t fully compliant with some UI standard).”

Page 117: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 7 – Keeping Quality in Focus

© 2012 Enhance ALM Pty Ltd Page 89

5 ©2012 Enhance ALM Pty Ltd

Steve McConnell - Online

Here’s a summary of the kinds of technical debt:1. Unintentional Debt. Debt incurred unintentionally

due to low quality work2. Intentional Debt. Debt incurred intentionally

A. Short-Term Debt. Short-term debt, usually incurred reactively, for tactical reasons

i. Focused Short-Term Debt. Individually identifiable shortcuts (like a car loan)

ii. Unfocused Short-Term Debt. Numerous tiny shortcuts (like credit card debt)

B. Long-Term Debt. Long-term debt, usually incurred proactively, for strategic reasons

6 ©2012 Enhance ALM Pty Ltd

A silent problem

• Teams that don’t measure their productivity can’t measure future lost productivity due to technical debt

• When technical debt can’t be measured, it can be easily ignored by management and stakeholders

Page 118: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 7 – Keeping Quality in Focus Managing Projects with Visual Studio 2010

Page 90 © 2012 Enhance ALM Pty Ltd

7 ©2012 Enhance ALM Pty Ltd

Contributing Factors

• Deadlines– Unreasonable expectations– Unreasonable commitments– Poor estimation practices– Change of team membership– Scope creep– “Just get it done” attitude

8 ©2012 Enhance ALM Pty Ltd

Contributing Factors

• Duplication– Copy and paste programming– The “Google” programmer– Inexperienced team members– Continuing a poor design/architecture

Page 119: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 7 – Keeping Quality in Focus

© 2012 Enhance ALM Pty Ltd Page 91

9 ©2012 Enhance ALM Pty Ltd

Contributing Factors

• Get it right the first time– Leads to over-planning and over-design– Soon becomes the opposite of Agile– Creation of “might need” or ”could want” code

• In reality we know we never get it right the first time.• Solution? Develop maintainable code that can be

easily changed and tested

10 ©2012 Enhance ALM Pty Ltd

Contributing Factors

• Deadlines

• Duplication

• Get it right the first time

POORPLANNING

Page 120: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 7 – Keeping Quality in Focus Managing Projects with Visual Studio 2010

Page 92 © 2012 Enhance ALM Pty Ltd

11 ©2012 Enhance ALM Pty Ltd

Combating Technical Debt

• As more technical debt is identified, it is important to make a continual effort to pay it back.

• If technical debt is not managed effectively, the costs for maintaining software will increase at a rate that will eventually outrun the value it delivers to customers.

12 ©2012 Enhance ALM Pty Ltd

No matter what, the cost of addressing

technical debt increases with time.

Page 121: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 7 – Keeping Quality in Focus

© 2012 Enhance ALM Pty Ltd Page 93

13 ©2012 Enhance ALM Pty Ltd

The best way to combat Technical

Debt is to avoid it in the first place.

14 ©2012 Enhance ALM Pty Ltd

Avoiding Technical Debt

• Debt can accumulate in many different areas• It requires a multifaceted approach to avoiding it.

Page 122: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 7 – Keeping Quality in Focus Managing Projects with Visual Studio 2010

Page 94 © 2012 Enhance ALM Pty Ltd

15 ©2012 Enhance ALM Pty Ltd

Avoiding Technical Debt

• Always include Acceptance Criteria in your User Stories

• Create ALL appropriate test case work items and link to the user story

• If testing is “postponed” we still see a record of the incomplete testing

TESTING

16 ©2012 Enhance ALM Pty Ltd

Avoiding Technical DebtTESTING

Page 123: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 7 – Keeping Quality in Focus

© 2012 Enhance ALM Pty Ltd Page 95

17 ©2012 Enhance ALM Pty Ltd

Avoiding Technical DebtTESTING

18 ©2012 Enhance ALM Pty Ltd

Avoiding Technical Debt

• Discuss with stakeholders and management to put this on the agenda or on the radar

• Add Technical Debt to the Product Backlog• Ensure it is not always sorted to the bottom• Monitor time spent on backlog

VISIBILITY

Page 124: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 7 – Keeping Quality in Focus Managing Projects with Visual Studio 2010

Page 96 © 2012 Enhance ALM Pty Ltd

19 ©2012 Enhance ALM Pty Ltd

Avoiding Technical Debt

Static code analysis – Find duplication• Code Coverage• Pair programming• Code reviews

SOURCE CODE

20 ©2012 Enhance ALM Pty Ltd

Avoiding Technical Debt

• Code Metrics– Maintainability Index 0-9, 10-19, 20-100– Cyclomatic Complexity – Depth of Inheritance– Class Coupling– Lines of Code (based on lines of IL)

• Can be calculated for entire solution to project

SOURCE CODE

Page 125: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 7 – Keeping Quality in Focus

© 2012 Enhance ALM Pty Ltd Page 97

21 ©2012 Enhance ALM Pty Ltd

Avoiding Technical Debt

• Code MetricsSOURCE CODE

22 ©2012 Enhance ALM Pty Ltd

CASE STUDYImpeding business agility due to Technical Debt – An extreme example

Page 126: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 7 – Keeping Quality in Focus Managing Projects with Visual Studio 2010

Page 98 © 2012 Enhance ALM Pty Ltd

23 ©2012 Enhance ALM Pty Ltd

In conclusion

• Short term technical debt is not always bad. Think of it like a business overdraft

• Identify and avoid a culture of always putting things off to meet short term goals

• Utilise tools like Microsoft Team Foundation Server to help identify accumulation of debt

24 ©2012 Enhance ALM Pty Ltd

?

ANY QUESTIONS?

Page 127: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 9 – Creating and Customising Reports

© 2012 Enhance ALM Pty Ltd Page 99

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 8 – Keeping the Communication Pathways Open

2 ©2012 Enhance ALM Pty Ltd

Agenda

• Overview of TFS clients• Team Foundation Explorer• Microsoft Excel• Microsoft Project• Microsoft Word• Web based clients• Windows Shell• 3rd Party clients

Page 128: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 9 – Creating and Customising Reports Managing Projects with Visual Studio 2010

Page 100 © 2012 Enhance ALM Pty Ltd

3 ©2012 Enhance ALM Pty Ltd

Team Foundation Explorer

• PROS– Integrated into Visual Studio IDE– Richest client interface– Extensible (add your own nodes etc)

• CONS– Installation includes several prerequisite installs– Creates Start menu item “Microsoft Visual Studio 2010”

4 ©2012 Enhance ALM Pty Ltd

Microsoft Excel

• PROS– The most popular project management tool today– Little training required (Many Excel users already)– Best tool for editing multiple work items– Creation of Work Item libraries

• CONS– Linking and Attachments on individual WIs only– Requires .NET Programmability support installed

Page 129: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 9 – Creating and Customising Reports

© 2012 Enhance ALM Pty Ltd Page 101

5 ©2012 Enhance ALM Pty Ltd

Microsoft Project

• PROS– Scheduling (GANTT chart)– Well used tool familiar to most PMs today

• CONS– Integration is not smooth– Requires a few workarounds– Added cost for Project licences

6 ©2012 Enhance ALM Pty Ltd

Microsoft Word

• PROS– Editing documents

in document libraries• CONS

– Nothing OOTB– Third party offerings;

• TeamWord 1.0• TfsWord - Word Extensions for Team Foundation Server

Page 130: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 9 – Creating and Customising Reports Managing Projects with Visual Studio 2010

Page 102 © 2012 Enhance ALM Pty Ltd

7 ©2012 Enhance ALM Pty Ltd

Web: Project Portal

• PROS– OOTB functionality– My Dashboard and Project Dashboards provide a useful mix

of information– Provides access to Team Wiki and other SharePoint

functionality• CONS

– Requires SharePoint– Some dashboards require SharePoint Enterprise Edition

8 ©2012 Enhance ALM Pty Ltd

Web: Team Web Access

• PROS– Free for all users with TFS CAL– Fully featured web interface– Bulk edit of work items– Direct WI creation from URL template

• CONS– Not easily customisable– Doesn’t scale well

Page 131: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 9 – Creating and Customising Reports

© 2012 Enhance ALM Pty Ltd Page 103

9 ©2012 Enhance ALM Pty Ltd

Web: Work Item Web Access

• PROS– Allows users to create, view and edit their OWN work items

with a CAL– Convenient web interface

• CONS– Limited view can lead to duplicate bug reports– Increased Bug triage overhead

10 ©2012 Enhance ALM Pty Ltd

Windows Shell

• PROS– Access TFS directly from Windows Explorer– No need to open Visual Studio just to check out files

• CONS– ?

• More Information– Download the TFS Power Tools 2010

Page 132: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 9 – Creating and Customising Reports Managing Projects with Visual Studio 2010

Page 104 © 2012 Enhance ALM Pty Ltd

11 ©2012 Enhance ALM Pty Ltd

Team Explorer Everywhere 2010

• Components– Team Foundation Server plug-in for Eclipse– Cross-platform command-line client for TFS– Visual Studio Team Explorer 2010

• Previous versions were known as Teamprise

12 ©2012 Enhance ALM Pty Ltd

THIRD PARTY CLIENTS

TeamSpecTeamPulseTeam Companion

Page 133: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 9 – Creating and Customising Reports

© 2012 Enhance ALM Pty Ltd Page 105

13 ©2012 Enhance ALM Pty Ltd

TeamSpec• TeamSpec enables the Business Analyst, Project

Managers, and Executive Management to contribute to the Application Lifecycle.

• The development team continues to work against Tasks and code changesets, which can be rolled up to higher level project artifacts which are also represented as Work Items in TFS.

• TeamSpec allows team members to– Create structured documents out of project artefacts (Eg.

Change Requests, Scenarios, Tasks) using TeamSpec Skins.– Using existing documents, content can be pushed into Team

Foundation Server which can then be used to manage software projects.

• Getting Started With Team Spec Video (17:49)

14 ©2012 Enhance ALM Pty Ltd

TeamPulse

• TeamPulse helps you expressively define project requirements and make sure everyone on the team has a real understanding about what needs to be done and why.

• Watch TeamPulse Video (6:20)

Page 134: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 9 – Creating and Customising Reports Managing Projects with Visual Studio 2010

Page 106 © 2012 Enhance ALM Pty Ltd

15 ©2012 Enhance ALM Pty Ltd

TeamCompanion

• TeamCompanion is an Outlook AddIn (Plugin) and a first class Team Foundation Server (TFS) client. In addition to the standard TFS client features, TeamCompanion leverages Outlook features providing unique capabilities that lead to better collaboration and communication among all project stakeholders.

• Watch TeamCompanion Videos (Multiple videos -Time varies)

16 ©2012 Enhance ALM Pty Ltd

?

ANY QUESTIONS?

Page 135: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 9 – Creating and Customising Reports

© 2012 Enhance ALM Pty Ltd Page 107

1 ©2012 Enhance ALM Pty Ltd

Managing Projects withVisual Studio 201 0Module 9 – Creating and Customising Reports

2 ©2012 Enhance ALM Pty Ltd

Agenda

• Overview of Reports in TFS• Accessing Reports• Key reports for your team• Creating an ad-hoc report using Excel

Page 136: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 9 – Creating and Customising Reports Managing Projects with Visual Studio 2010

Page 108 © 2012 Enhance ALM Pty Ltd

3 ©2012 Enhance ALM Pty Ltd

Overview of Reports in TFS

• Reporting is one of the key values offered by Team Foundation Server

• Accurate and timely reporting helps keep a project on track

• Reports can and should be viewed by all team members, not just Project Managers and stakeholders

4 ©2012 Enhance ALM Pty Ltd

Reporting Architecture

Designed forReporting

Designed forTransactions

OLTP Databases

TFSWarehouse OLAP Cube

Page 137: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 9 – Creating and Customising Reports

© 2012 Enhance ALM Pty Ltd Page 109

5 ©2012 Enhance ALM Pty Ltd

Data refresh

• Warehouse Updates– 2008 – every 3600 seconds– 2010 – specific events kick off update

• Cube Updates– Full update every 24 hours at 2am– Incremental update every 2 hours

6 ©2012 Enhance ALM Pty Ltd

Technology Choice

All three of the following technologies can access data stored in the TFS Cube.• Microsoft Excel

– Quick and easy reports• Report Builder

– Almost as easy as Excel• Business Intelligence Development Studio (BIDS)

– More complex but backed by the full capability of SQL Reporting Services.

Page 138: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 9 – Creating and Customising Reports Managing Projects with Visual Studio 2010

Page 110 © 2012 Enhance ALM Pty Ltd

7 ©2012 Enhance ALM Pty Ltd

Accessing Reports

Using Team Explorer– Excel Reports– SQL Reports

8 ©2012 Enhance ALM Pty Ltd

Accessing Reports

Via Project Portal

Via Team Web Access

Page 139: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 9 – Creating and Customising Reports

© 2012 Enhance ALM Pty Ltd Page 111

9 ©2012 Enhance ALM Pty Ltd

Key reports for your team

• Build Quality Indicators Report• Build Success Over Time• Bug Status Report• Burndown and Burn Rate Report (CMMI)• Remaining Work Report

10 ©2012 Enhance ALM Pty Ltd

Build Quality Indicators Report

Page 140: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 9 – Creating and Customising Reports Managing Projects with Visual Studio 2010

Page 112 © 2012 Enhance ALM Pty Ltd

11 ©2012 Enhance ALM Pty Ltd

Build Success over Time

12 ©2012 Enhance ALM Pty Ltd

Bug Status Report

Page 141: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 9 – Creating and Customising Reports

© 2012 Enhance ALM Pty Ltd Page 113

13 ©2012 Enhance ALM Pty Ltd

Burndown and Burn Rate Report

14 ©2012 Enhance ALM Pty Ltd

Remaining Work Report

By Hours By Work Items

Page 142: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 9 – Creating and Customising Reports Managing Projects with Visual Studio 2010

Page 114 © 2012 Enhance ALM Pty Ltd

15 ©2012 Enhance ALM Pty Ltd

Creating an ad-hoc reporting in Excel

From the data warehouse

From the OLAP Cube

16 ©2012 Enhance ALM Pty Ltd

Creating an ad-hoc reporting in Excel

Page 143: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Managing Projects with Visual Studio 2010 Module 9 – Creating and Customising Reports

© 2012 Enhance ALM Pty Ltd Page 115

17 ©2012 Enhance ALM Pty Ltd

Creating an ad-hoc reporting in Excel

18 ©2012 Enhance ALM Pty Ltd

WALKTHROUGH

Your instructor will walk you through creating a new Excel Pivot Table/Chart report

Page 144: Managing Projects with VS2010images.quicklearn.com/tfs/pm.pdf · Managing Projects with Visual Studio 2010 Student Manual. Enhancing all aspects of Application Lifecycle Management

Module 9 – Creating and Customising Reports Managing Projects with Visual Studio 2010

Page 116 © 2012 Enhance ALM Pty Ltd

19 ©2012 Enhance ALM Pty Ltd

?

ANY QUESTIONS?