Estimated Time: 1 minuteThe agenda for this presentation is to learn what are the goals TFS 2010 achieves, to become familiar with the components that comprise TFS 2010, and to learn how these components collaborate and synergize to achieve them.
Estimated Time: 1 minuteFirst let’s talk about "why Team Foundation Server?" The goal of TFS is to create a central repository with a set of tools that make it really easy to collaborate between roles and functions on the team.TFS 2010 can be installed in either Basic or Advanced configurations:Advanced requires a server OS and enables all the enterprise features of Team Foundation Server. Basic can be installed on a client OS, like Windows 7, and enables a smaller subset of features. Basic is a great place to migrate your Visual SourceSafe assets and pick up new features in the process. TFS is at the core of the Visual Studio ALM solution and hosts a variety of services, tailored to the needs of each contributor and stakeholder:With Visual Studio, developers can connect to and work with TFS in a completely seamless manner and enjoy a familiar integrated development environment (IDE), with new and improved features that allow them to focus on being creative and writing code, while automating as many of the right-brain, mechanistic activities as desired.Requirements, Tasks and Bugs are easily tracked by Project Managers, Developers, and Testers from proposal or creation to completion.Developers can store their source code with TFS Version Control with a familiar and simple interface that is integrated into Visual Studio, as well as backed by SQL Server 2008.Teams can easily automate their build process with a highly customizable engine based on Microsoft’s new Workflow 4.0 Framework. With customizable Process Templates, the teams can define their own work flows and artifacts, as well as default documentation and reports. TFS 2010 comes with Agile MSF 5.0, a complete agile solution template, as well as a more traditional CMMI template and a SCRUM template.Stakeholders can use TFS for decision support with ad-hoc queries, as well as customizable reports, based on both Excel and SQL Server Analysis and Reporting Services.Throughout the rest of this module, we will elaborate on these core capabilities and give examples on how these capabilities can help you and your team to deliver better software faster.
Estimated Time: 2 minutesWork items are a fundamental feature of TFS 2010 that allows teams to collaborate. They are, in fact, the atoms upon which TFS 2010 projects are built - in essence, a work item is a statement of a work that needs to be carried out. You can link work items to each other or to external documents, associate them with source code or test cases and track and query them. This lets you structure your project by breaking it down into work items that define requirements, tasks, tests and other activities that your team needs to complete. TFS 2010 allows you to build rich hierarchies of inter-connected work items that represent sprints, iterations or other administrative forms. TFS 2010 provides a number of pre-defined work item types that fit projects working according to either an agile or a CMMI-based process. Of course, since no project or organization have the exact same process requirements, you can customize the contents of a work item to fit your needs.
Estimated Time: 5 minutesThe TFS 2010 Version Control is integrated into Visual Studio, allowing developers to store and retrieve their sources, compare different versions of their code, and track changes to the project, all from within their IDE.TFS version control is based on the robust SQL Server 2008, meaning that it can serve more users, work faster and store greater amounts of data, with increased reliability.If desired, the version control system can be secured and locked down at the branch, folder and file levels, so that you may limit access to certain repositories according to their teams, allow some code to be accessed by all, other code to be viewed by all, but edited only by some developers or teams, or deny the ability to view the code to any developer or group of developers. Additionally, each developer may decide to hide code that is not relevant to him (to reduce visual clutter). This code will not show up in the Source Control Explorer, and will not be retrieved for editing.Branching and merging source code is made easy with TFS 2010. The developer can select the source and target branches (folders), and the changes he wishes to copy. The merging is then done locally, where the developer can verify that the changes were properly made, before storing the new, merged code on the server.
Estimated Time: 5 minutesTFS 2010 allows developers to automate the process required to build the entire software suite. This process can (and often does) encompass building multiple solutions, on different platforms (desktop, web, mobile), different languages, both managed and unmanaged code, and may include any preparation actions required for producing a complete solution (running scripts, copying files, compressing, uploading and downloading, etc.).Additionally, the build automation process may be set to include running a suite of automated tests, including developer tests (unit tests) on the code, integration tests, web tests, UI tests, and load tests. The process can be set to fail or pass a build based on the results of the tests. The process can be set to be triggered manually, or automatically. Automatic triggers include scheduling (e.g. every night), whenever code is checked in (once per each check-in, or by grouping together all the changes made in a defined period of time), or before the code is checked in (i.e. the code is checked in only if the build passes). It is possible (and often advisable) to have multiple build definitions for different cases for the same software solutions.The build process may be handled by one or more machines, each handling the entire work load, or specializing in part of it (e.g. managed code, databases, etc.).The build automation process may be completely customized using the Microsoft Workflow Foundation 4.0 engine to drive and design each build process, and the activities they are comprised of.
Estimated Time: 2 minutesTFS 2010 contains two separate data warehouses: one based on a relational star schema, the other on an OLAP cube. Many of the operations that you perform in TFS 2010 – and the information you enter in these operations – are stored in these warehouses. You can take advantage of this multitude of information by using it to generate reports using the robust and powerful Reporting Services and Analysis Services components of SQL Server 2008. Out of the box, TFS 2010 provides many useful reports that can help you assess the condition and health of your project. You can also customize these reports to fit your needs or add additional ones. Since TFS 2010 supports integration with SharePoint technology, all the reports you create can be displayed in a dashboard using a project-specific SharePoint site. This feature is ideal for ensuring that all team members are familiar with the project’s state at any moment.While SQL Server 2008 reporting is a very powerful and capable tool, it may require too much time and effort for some simple tasks. In these cases, you can use TFS 2010’s work item queries to produce quick results which can easily be exported to Microsoft Excel for further processing or to Microsoft Outlook for sending to other people.
Estimated Time: 2 minutesUsing TFS 2010, you can manage your projects according to well-known methodologies. Out of the box, you can choose from Microsoft’s MSF for Agile 5.0 or CMMI templates which provide a set of pre-defined work item types, work item queries and reports. You can also download and install Microsoft’s Scrum 1.0 template for an agile template whose terms are more closely aligned to Scrum, or you may download 3rd party solutions from other companies. Further, you may also customize and tailor any process template to suit your needs and re-use them in new projects.Using TFS you are not limited to one tool – you can manage your work process from Visual Studio, the web, Outlook, Excel and MS Project. This means that team members can collaborate with each other using their favorite tools.By defining the various kinds of work required for your project, you can use TFS to support you in your way of doing things. This lets you track your progress and create the KPIs for generating and analyzing reports.
Estimated Time: 1 minute Finally, as this presentation showed, TFS allows collaboration among all of the contributors and stakeholders in a project, from inception to deployment, to work towards creating a robust system, and allowing everyone to focus on the important, creative aspects of the work, while delegating the mechanical “boiler-plate” processes to automation.As a result, the system is more reliable, and the productivity increases, when working with TFS.MSDN: Getting Started with Microsoft Visual Studio Team Foundation Server 2010http://msdn.microsoft.com/en-us/library/dd286491.aspx
Estimated Time: 1 MinuteBefore going into specifics, it is important to understand where various web-accessible resources are deployed. The two possible locations are:On the TFS 2010 Application Tier – this is where the Team Web Access web application residesOn the SharePoint Server – this is where project dashboards and portals reside.Note that this is a logical separation, which does not necessarily imply a physical separation. In other words, if you are using Windows SharePoint Services (and not Microsoft Office SharePoint Server), it may be deployed along with the TFS 2010 Application Tier on a single machine. If, however, you are using the full Microsoft Office SharePoint Server, then you will likely deploy it on a separate machine.
Estimated Time: 2 MinutesWeb Access is an add-on to the core TFS 2010 system which enables users to access the full gamut of information stored on the server using only a web browser. It is implemented as a web application on the TFS 2010 Application Tier and uses the same web service interface as other Client Tier applications such as Visual Studio 2010 or Visual Studio 2010 Team Explorer. Hence, it can be viewed as being a Client Tier application itself. Like TFS 2010’s core web services, it uses the industry-standard Microsoft Internet Information Server (IIS) for serving web content. Team Web Access is typically accessed using the URL http://<your server name>:8080/tfs/web.Web Access is particularly useful for mobile users, since it requires nothing more than a regular web browser. This means, for example, that such users can use lower-end machines (such as netbook computers) for accessing their company’s TFS 2010 server while on the move.
Estimated Time: 2 MinutesTeam Web Access supports the following operations:Create and edit work itemsPerform work item queriesAccess source-controlled files, as well as performing a subset of related operations on such files:Viewing related change sets and change history (as well as the user responsible for these changes)Comparing revisionsRun and review automated buildsView reports based on project informationCustomize the appearance of Team Web AccessTeam Web Access does not support the following operations:Administer team projects and / or team project collectionsMaking changes to source-controlled files (check-outs / check-ins, branching, merging)Creating or changing automated build definitionsManage security settingsSince Team Web Access is a client application, users need a Client Access License (CAL), similar to users of standalone clients.
Estimated Time: 2 MinutesTFS 2010 on server operating systems (Windows 2003 and 2008 / 2008 R2) supports integration with Microsoft Office SharePoint Server (MOSS) or Windows SharePoint Services (WSS) 3.0. This integration allows you to define specific locations, known as project dashboards, for conveniently showing meaningful project information in one place. What information is displayed is completely customizable – you can adapt the exact contents of a dashboard to fit your project or organization’s needs. Depending on whether you use MOSS or WSS, TFS 2010 supplies different, pre-configured dashboards out-of-the-box:WSS – TFS 2010 supplies only a single, unified Project DashboardMOSS – TFS 2010 supplies a set of 4 project dashboards: Work Progress, Test Progress, Product Quality and Build Quality. If you need to go beyond the default, you can create as many additional dashboards as you require. In particular, note that you are able to create user-specific dashboards. This feature is ideal for showing different information to different users – for example, a project manager can view project-wide statistics and Key Performance Indicators (KPI’s) such as bug counts for critical and high-severity bugs, while a business user can monitor work done on the user stories that are assigned to them as well as what bugs are filed against them.
Estimated Time: 3 MinutesThis slide shows an example of the single project dashboard that comes out-of-the-box when integrating TFS 2010 and WSS 3.0. This dashboard has been customized to contain the following items:Center of the screen:A burndown chart of the project. This report (part of the MSF for Agile Software Development v5.0 process template) shows the number of work hours that have been completed (in green) as well as the number of work hours that are yet to be completed for this iteration. A User Story Overview report for this project. This report shows the User Stories for Milestone 1 of this project, along with their completion status and the number of bugs associated with them.Right part of the screen:Important project dates – currently emptyProject Work Items – A list of work items in the project, and their current state. In this example, a list of bugs is visible along with the state of all such bugs as well as the number of test cases that were defined.Recent Builds – Currently empty. No automated builds have taken place for this project yet.Recent Checkins – The change set number and description for files that have recently been checked in.Left part of the screenLink to Team Web AccessLinks to project dashboards (the currently displayed project dashboard, as well as the personal dashboard for the user)Links to other important project locations (reports, documents, SharePoint lists and process guidance documentation)
Estimated Time: 2 MinutesA project dashboard is displayed using the integration between TFS 2010 and Microsoft SharePoint (either MOSS or WSS 3.0). As such, each discrete content unit on a dashboard – that is, a single report or list of items – is a Microsoft SharePoint entity known as a Web Part. The following Web Parts may be used on your dashboards:Team Web Access parts – You can use web parts for showing work item summaries, recent builds, recent check-ins as well as a work item query results part that can be configured to display specific queries and/or result columnsReport parts – You can use web parts for showing reports that originate in SQL Server Reporting Services. In particular, these reports may use TFS 2010’s data warehouse and / or multi-dimensional cube. Document parts – You can use web parts for showing various types of documents, such as Microsoft Office files or web pagesAny other web parts – You can use any other web parts, including those that you have developed yourself Ifyou are using MOSS, there are additional Web Parts available such as:An Excel Services web part for displaying and working with a live Excel workbookA KPIs web part for showing current metric values vs. required goal values
Estimated Time: 2 MinutesThe integration of TFS 2010 and Microsoft SharePoint (both MOSS and WSS 3.0) has the added benefit that you can use the collaboration features inherent in SharePoint for enhancing your project management capabilities.Such features include:List management – maintain lists of important information such as contacts, dates, etc.File sharing – team-wide document management, including version control (check-out / check-in / version history) and customizable viewsCollaboration – communicate efficiently with team members using wikis, discussion boards and surveys Microsoft Office integration – work effectively with Microsoft Office productivity applications
Estimated Time: 1 MinutesThis slide shows an example of a WSS 3.0-based project portal. It enables access to the following features (visible in the center part of the screen)Document and picture librariesInformation listsDiscussion boards and surveysAlso note that you have access – on the left part of the screen – to Team Web Access and project dashboards.
Estimated Time: 2 MinutesIn summary, accessing TFS 2010 through the web is an effective way to work. You can use Team Web Access to perform common operations that affect the project’s status and move it forward – similar to what you can do with a stand-alone client. On the other hand, if you are interested only in retrieving information regarding the project’s current state, you can use a web browser to access dashboards and portals. Finally, because of the tight integration between TFS 2010 and SharePoint, you can use the collaboration features of the latter for achieving better communication with your team.
Estimated Time: 2 MinutesIt is important to understand that the term ‘Microsoft SharePoint’ is not a single product. Rather, it may refer to one of two products:Windows SharePoint Services (WSS) 3.0 – This is a freely available version of SharePoint for server operating systems (Windows 2003, 2008 and 2008 R2). Using WSS, you can set up team sites that contain document workspaces, blogs and wikis, as well as manage information lists, such as team members or contacts.Microsoft Office SharePoint Server (MOSS) 2010 - This is a separately-purchased product that contains all of the features of WSS 3.0, and much more. Some of the advanced features of MOSS 2010 have to do with business intelligence (BI), whereby you can setup corporate sites that display a whole slew of valuable information and Key Performance Indicators (KPI’s).For further information about Microsoft SharePoint products, see http://sharepoint.microsoft.com/en-us/Pages/default.aspx
Estimated Time: 1 MinuteSharePoint allows you to perform the following operations on the documents it manages:Upload documentsCheck in/out documents and view version history – in essence, this is a full version-control mechanismManage documents in libraries – including security and versioning for the libraries themselvesAdd and manage metadata on documents, such as author, target audience, etc.Set template documents for each librarySet alerts that will notify you when changes have taken place in a document Use other features of SharePoint for setting up automated business processes that include SharePoint-managed documents
Estimated Time: 2 MinutesA key capability of TFS 2010 is its enterprise-class version-control component. This brings up the question of why someone would want to use a second, unrelated mechanism for version-control of documents. Some reasons for this choice may be as follows:The integration between TFS 2010 and SharePoint is manifested through a creation of a SharePoint site for each team project. In essence, this SharePoint site is the source for all things related to the team project – and in particular, its documents. Therefore, users may want to access only a single location on the network.While Visual Studio is an excellent tool, it is geared towards technical people – developers and testers. Some non-technical team members – for example, managers or business users – may not be comfortable with Visual Studio, or may not have Visual Studio installed at all. For these people, it would be very cumbersome and difficult to access documents if they were not managed by SharePoint.Similar to the last point, access to a SharePoint site (and its document store) requires that the user only have a web browser installed. This state of affairs is much more common than having tools such as Visual Studio installed, especially to users who use lower-end machines such as netbooks.Having said all of the above, it is ultimately your team’s decision where to store documents. It is entirely possible to store non-code artifacts – such as Microsoft Word documents or Excel spreadsheets – directly inside TFS 2010. Your team will have to decide for itself how and where to manage all of the content it requires to perform its work.
Estimated Time: 2 MinutesThis slide shows the integration between TFS 2010 and the document management facilities of SharePoint 2010.The first part of the slide shows the SharePoint view of the document management. You can reach this web page from the Team Explorer window by right-clicking the team project node and choosing ‘Show Project Portal’, and then selecting ‘Documents’ from the pane on the left-hand side of the resulting web page. This will now show you a list of available document libraries.The second part of the slide shows the Documents node in Team Explorer. Note that this is available only to TFS 2010 installations that have been deployed on server operating systems – i.e., Windows 2003, 2008 or 2008 R2. From the Documents node, you can access the various libraries and documents in SharePoint.
Estimated Time: 3 MinutesAn important benefit of the TFS 2010 – SharePoint integration is the fact that when a team project site is created, TFS 2010 automatically creates a number of useful document libraries for you. These libraries contain a large number of documents that may be very useful when running your projects. Such libraries include:Excel Reports – this library contains a host of Excel spreadsheets that communicate with TFS 2010 for producing Excel-based reports and analyses Process Guidance – this library contains reference material regarding the work item types and common procedures that apply to your team project’s process templateSamples and Templates – this library contains sample documents and templates that can be used for important project documents, such as rollout plans, security assessments and project vision statementsYou can control what document libraries are created in the SharePoint project site by customizing the relevant TFS 2010 process template. In particular, note that the built-in MSF for CMMI and MSF for Agile process templates create a different set of documents.
Estimated Time: 1 MinuteIn order to link TFS 2010 work items to SharePoint-managed documents, you need to use the ‘Hyperlink’ link type. This will allow you to add links to any web-addressable resource. You can then directly open that resource from the work item form.
Estimated Time: 2 MinutesThis slide illustrates the procedure for linking a work item to a document under SharePoint management. The first part of the slide shows how you can retrieve the URL for a document, by looking at the ‘URL’ property in the Properties window.The second part of the slide shows the dialog you will have to fill out when adding a new ‘Hyperlink’ work item link. This link type requires a URL and, optionally, a comment for describing the linked resource.Finally, the third part of the slide shows how you can open the linked web resource (which may be a web-addressable document in SharePoint) directly from the work item form.
Estimated Time: 2 MinutesIn summary, managing documents under SharePoint version-control is a very useful capability. This facility allows you to connect your development work items– tasks, bugs, test cases and so on – to documents and other resources that can offer further details for these items. Since documents under SharePoint control are version-controlled, you can also track changes and alterations over time – and do so directly from the related work items. Finally, the ability to access SharePoint from Visual Studio as well as from a browser allows all team members to access the document repository using their favorite tools.
Estimated Time: 1 minuteExamples of applications that belong to the TFS 2010 client tier: Visual Studio 2010, Microsoft Test Manager (MTM), Windows Command Line and PowerShell.Functionality exposed by the TFS 2010 application tier: dedicated TFS services, SharePoint services for document management and web portals, and the reporting and analysis services of SQL ServerType of data stored by the TFS 2010 data tier: operational data for each project (such as work items and source control) and data warehouses for reports and analysis
Estimated Time: 2 minutesTFS 2010 is conceptually composed of 3 separate tiers. The first two are the client and application tiers.The client tier is not, strictly speaking, implemented by Team Foundation Server 2010 itself. Rather, it is composed of client applications that make use of the TFS 2010 services and databases for managing, displaying and reporting on project artifacts such as source code and work items. These applications are primarily intended for end-users – developers, testers, managers and business analysts. The application tier contains a number of web services that expose the functionality of TFS 2010 to client-tier applications. In addition to dedicated TFS services, the application tier also contains the web services exposed by SQL Server Reporting Services which are used to provide reporting and analysis capabilities for project data. Finally, the application tier contains project-specific web portals and document storage repositories based on Microsoft SharePoint Server (MOSS) or Windows SharePoint Services (WSS). The use of either the reporting or SharePoint functionality is optional, and in particular, is not supported when the TFS 2010 application tier is installed on client operating systems (Windows XP or Windows 7).
Estimated Time: 2 minutesTFS 2010 is conceptually composed of 3 separate tiers. The third tier is the data tier.The data tier is used to persistently store all the data that is required for the proper operation of TFS 2010. Such data includes all operational project-specific artifacts, along with the warehousing infrastructure needed for generating reports. Storage services are provided using Microsoft SQL Server 2008, an enterprise-quality database. This ensures that IT concerns such as backups, load-balancing and clustering are handled by a familiar tool with a proven track record.The TFS 2010 application and data tiers are physically separate – each may be installed on different machines. Similarly, multiple application tiers can be installed for scenarios where clustered or high-load deployments are required.
Estimated Time: 2 minutesThe following dedicated services are exposed by the TFS 2010 application tier:Version Control – Used for managing source control operations such as check-in, check-out, branching and merging.Work Item Tracking – Used for managing discrete units of project information that denote concepts such as tasks, bugs, requirements and test cases.Automated Builds and Continuous Integration – Used for running and returning the results of automated, reproducible builds that may build source code, run unit tests and deploy applications based on various triggers.Test Lab Management – Used for managing hosts and virtual machines for automated provisioning of test environments.
Estimated Time: 3 minutesThe following databases are managed in the TFS 2010 data tier:A server-wide database (named, by default, Tfs_Configuration) for storing and managing TFS resources and configuration dataA database (named, for example, Tfs_DefaultCollection) for managing information that is specific to a collection of projects. In this case, the collection is named DefaultCollection. Multiple such databases may exist, each one matching a specific project collection. These databases contain the operational data required for day-to-day work with projects.A server-wide relational data warehouse (named, by default, Tfs_Warehouse) for use with report-building tools such as SQL Server Report Builder or SQL Server Business Intelligence Development StudioA server-wide Online Analytical Processing (OLAP) cube, facilitating the multi-dimensional analysis of project data. This cube has the capability to aggregate the data from the various operational databases, so that you can come up with meaningful insights into your project. Such insights may include the identification of trends, the analysis of historical data and many others.
Estimated Time: 2 minutesVisual Studio 2010 is the premiere IDE for building applications in the Microsoft ecosystem. Starting with Visual Studio 2010 Professional Edition, the IDE contains Team Explorer, an add-in for easily viewing and manipulating TFS 2010 information. Capabilities of Team Explorer include:Easily check-in, check-out, branch and merge individual source files or directoriesCreate, edit and query individual work itemsDefine, launch and view automated builds and their resultsView project documents, dashboards and reportsTeam Explorer is further useful for TFS 2010 administrators, as they can manage permissions and user groups directly from Visual Studio.
Estimated Time: 1 minuteThis slide shows the work item query screen, where a user can search for specific query items. In particular, you should note that work items may be displayed in a tree-like view so that parent-child relationships between work items are visualized.The second part of the slide shows some possible operations on a single work item, such as opening the work item in Microsoft Excel (via the TFS-to-Office integration) or the ability to create a new work item and automatically linking the two together.
Estimated Time: 1 minuteVisual Studio 2010 Team Explorer is a standalone version of the Team Explorer window available in Visual Studio 2010. It contains a minimal version of the IDE that does not support development activities. Visual Studio 2010 Team Explorer is intended for team members that do not need a complete development environment, such as business analysts.
Estimated Time: 2 minutesDevelopers who work on Java-based projects may also use TFS for their project-management needs. Visual Studio Team Explorer Everywhere 2010 – formerly known as Teamprise – contains a plugin that allows the Eclipse IDE to integrate with Team Foundation Server 2010. Developers working with other IDEs or editors can use the cross-platform command-line client. The following operating systems are supported: OS X, HP-UX, AIX, Linux, Solaris, Unix, Windows XP SP2, Windows Vista and Windows 7.There is also support – via the downloadable Team Foundation Build Extension – for running Ant or Maven 2 builds and publishing the results of JUnit tests back to TFS.
Estimated Time: 2 minutesTFS Web Access is a feature of TFS 2010 that enables access via a web browser. The following functionality is supported:Creating, editing and querying for work itemsRunning automated builds and viewing their resultsViewing files that are version-controlled along with their respective version informationViewing reports for the projectViewing and managing shared documents for the projectTFS 2010 Web Access is installed along with the server, but requires separate configuration. It may be turned off if not required.
Estimated Time: 3 minutesMicrosoft Test Manager (MTM) is a new tool that is included in the Test Professional and Ultimate editions of Visual Studio 2010. It is intended for testers and is designed to support their workflow and needs. Using MTM, a tester can design, review and execute different sets of tests for a project. The simplest set is composed of a single test case. Test cases may be composed into test suites which in turn may be composed into test plans. MTM further allows a tester to file a ‘rich’ bug into TFS, so that the developer may receive, along with the usual steps to reproduce, a number of additional items. These may include screenshots or videos of the failing application and complete, automatically-gathered diagnostic information about the failure.The integration between MTM and TFS 2010 allows all test cases to be managed, tracked and reported on. This allows project managers to understand how far along their testing effort has come and gauge the project’s readiness for release.
Estimated Time: 1 minuteThis screenshot of Microsoft Test Manager shows the contents of a single test plan, named “Calculating Freight Costs”. It contains 3 test suites – displayed in the left pane - named “By Standard Mail”, “By parcel service” and “By Priority Mail”, respectively. The current suite (“By Standard Mail”) is displayed in the right pane, and contains a single test case named “Sending a 5-pound package through Standard Mail”).
Estimated Time: 1 minuteUsers who work with the Microsoft Office suite of productivity applications can integrate with TFS 2010 directly from their familiar work environments. Once Visual Studio or Team Explorer 2010 are installed on the machine, work items may be created, managed and queried directly from Microsoft Excel or Project. This means that developers, testers, managers and business analysts can each work with their favorite tools and see the same data.Users requiring integration between TFS 2010 and Microsoft Project Server 2007 or 2010 can make use of the TFS-PS Feature Pack. This is available in the MSDN subscription that comes with Visual Studio 2010.
Estimated Time: 1 minute
Estimated Time: 2 minutesWhile the TFS UI in Visual Studio and Team Explorer 2010 supports almost all of the TFS functionality, there are still some users who prefer to use the command-line. This can be done using tf.exe, which is located in Program Files\\Microsoft Visual Studio 10.0\\Common7\\IDE. This tool is useful when users need to script commonly-performed operations.
Estimated Time: 2 minutesWindows PowerShell is Microsoft’s task automation framework that includes a command shell and a scripting language built on top of the .NET framework. This tool enables administrators and power users to automate and script operations that would otherwise be difficult or very error-prone. The use of PowerShell with TFS 2010 can be performed in several ways:Calling the TFS 2010 command-lines tools directly from a PowerShell scriptUsing the underlying .NET Framework for directly calling a TFS web service from PowerShellUsing the custom PowerShell cmdlets for TFS, available in the Visual Studio Gallery (http://visualstudiogallery.msdn.microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f). Currently, cmdlets can only interact with TFS’s version-control module.
Estimated Time: 2 minutesIn summary, Team Foundation Server 2010 is an open, extensible platform that can be used for managing a multitude of project information. TFS 2010 support is built into a number of commonly-used tools, such as Visual Studio for developers, Microsoft Test Manager for testers, Microsoft Project for managers and Microsoft Excel for business analysts. For other tools, TFS 2010 supports access through web services or the command-line tools. The result is that Team Foundation Server 2010 can be adapted to fit the needs of a wide variety of projects.
TFS 2010 – Thinking Outside the Sharepoint boxComunidade Portuguesa de SharePoint14ª Reunião Presencial08/10/2011
Agenda• Overview of Core TFS 2010 Capabilities• Accessing TFS 2010 via the Web• Project Document Management withSharePoint• TFS 2010 Architecture
Overview of Core TFS 2010Capabilities• Work Item Tracking• Version Control• Build Automation• Reporting• Project Management
Work Item Tracking• Work Items are the glue that brings TFS 2010together• Using work items, your team can managerequirements, tasks and bugs in distinct unitsthat can be scheduled, tracked and prioritized• TFS 2010 provides a number of pre-definedwork item types, which you are able tocustomize to fit your needs
Version Control• Simple and familiar interface• Powerful repository backed by SQL Server• Can be secured and locked down with accesscontrol and customizable check-in rules• Ties in with Project Management by linkingcheck-ins to Work Items• Simple and efficient branching and merging• Visually track changes across branches
Build Automation• Built on Windows Work Flow 4.0, TFS can automateerror-prone and mundane tasks easily• Builds can be initiated manually, scheduled ortriggered by check-in events• Supports continuous integration & gated check-ins toprevent build breaks• Multiple builds can be initiated concurrently/inparallel• Supports managed and unmanaged code
Reporting• TFS 2010 ships with 35 built in reports that canbe customized• Individual and team SharePoint basedDashboards• Easily create custom reports with Excel• Quick reports via Work Item QueriesMicrosoft Confidential22
Project Management• Enables you to adopt or adapt to a process• Create work items & control work flows• Helps plan project development and releases• Helps track progress on the team’s work• Integrates with MS Office (Project and Excel)• Integrates with MS Project Server
Summary• Single integrated solution that delivers versioncontrol, work item/bug tracking and buildautomation out-of-the-box• Cross-functional, in-context collaboration –ProjectManagers, Architects, Developers, Testers, Designers• Powerful automation lets you focus on yourbusiness, by automating repetitive tasks
Deployment of Available WebResourcesTFS 2010 ApplicationTierSharePoint ServerTeam WebAccessProjectDashboardsProjectPortals
What is Team Web Access?• Team Web Access is a web-based interface forreading and manipulating TFS 2010 data• An ideal avenue for mobile users, or for thosewho do not need a standalone client
Using Team Web Access, You Can...• Query and manage work items• View version-controlled files• Initiate automated builds and review theirstatus• View project reports
What is a Project Dashboard?• A dashboard is a central location for presentingimportant and/or interesting projectinformation• Dashboards may contain an aggregated view ofdata and/or Key Performance Indicators (KPIs)relating to some aspect of the project• TFS 2010 dashboards may be customized toshow the exact information that is of interestto you
Contents of a Project Dashboard• Team Web Access parts• Reports• Shared project documents• Process template guidance• Any other SharePoint Web Part
What is a Project Portal?• A project portal is a Microsoft SharePoint sitethat is created for each Team Project• From the portal you can access:– The project’s work items– Version-controlled files– Shared documents• Using a project portal, all members of a teamcan take advantage of the collaborationfeatures offered by the SharePoint portal
In Conclusion, Using a Web Browserwith TFS 2010 Enables You To…• Manage important project artifacts throughTeam Web Access• Stay informed about the project state withdashboards and reports• Collaborate with members of your teamthrough SharePoint integration
What is SharePoint DocumentManagement?• Microsoft SharePoint 2010 is a businesscollaboration platform ideally suited formanaging content in companies• A key component of SharePoint is the ability tomanage and share common documents• TFS 2010 and SharePoint are integrated, soyou can use SharePoint document capabilitiesdirectly from TFS 2010 Team Projects
Using SharePoint DocumentManagement, You Can…• Store and organize version-controlleddocuments• Manage metadata on documents• Control access to sensitive files• Apply business processes and workflows tostored documents
Why a Separate Document Store?• TFS 2010 integration with SharePoint creates asingle web site for the entire Team Project• Many people (especially non-technical) are notcomfortable with Visual Studio• Using SharePoint, a user only requires a webbrowser
TFS 2010 Documents• TFS 2010 creates a set of predefineddocuments and libraries in the team project’sSharePoint site• These documents include, among others:– Excel-based reports on TFS 2010 data– Reference documentation on the currently-activeprocess template– Templates for important project documents
Linking Work Items to SharePointDocuments• SharePoint documents are accessible througha web address (URL)• Work Items contain a Hyperlink link type, thataccepts a URL• Of course, the URL can point to any other webresource, not just a SharePoint document
Linking Work Items to SharePointDocuments (cont.)
Conclusion• SharePoint document management is avaluable complement to a TFS 2010 teamproject• Using the TFS 2010 – SharePointintegration, both technical and non-technicalteam members can use their favorite tools foraccessing common documents
The 3 Tiers of TFS 2010Application Tier (AT)Data Tier (DT)ConfigurationDatabaseRelationalWarehouseOLAP CubeDatabaseCollectionDatabasesClient Tier• Visual Studio 2010• Microsoft Test Manager• Command Line• PowerShell• TFS Web Services• SharePoint Services• SQL Server ReportingServices• SQL Server Analysis Services• Operational Store• Data Warehouse
Client Tools – Visual Studio 2010• Includes the TeamExplorer window• Access individualsource-controlled files• Manage and query workitems• Define and launchautomated builds• View dashboards andreports
Client Tools – Visual Studio 2010Team Explorer• A minimal version of Visual Studio that canonly access TFS• A standalone installation for team memberswho do not need the full capabilities of VisualStudio
Client Tools – Visual Studio TeamExplorer Everywhere 2010• Enables access to TFSfrom the Eclipse IDE• Contains a cross-platform (Mac, Unix /Linux, Windows)command-line client• Support is available forintegrating Ant / Mavenbuilds with TFS
Client Tools – TFS Web Access• Allows access to TFS for users who do not need adedicated client• Installed automatically with TFS 2010 (but requiresconfiguration)
Client Tools – Microsoft TestManager• New in Visual Studio 2010, the Microsoft TestManager (MTM) is a tool which allows testersto create and execute test plans, suites andcases with ease• Each such artifact is a part of the project andcan be tracked and reported on• Using MTM, you can file rich bugs that includediagnostic information, screenshots and videos
Client Tools – Microsoft Office• Installing Visual Studio 2010 or Team Explorer2010 sets up plugins that enable MicrosoftOffice applications to work directly with TFS• You can work with TFS data directly from Excelor Project• There is support for integrating between TFS2010 and Project Server for teams that useProject Server for Portfolio Management
Client Tools – Command Line• Installing Visual Studio 2010 or Team Explorer2010 sets up tf.exe, a command-line client foraccessing all available TFS functionality• The client can be used interactively as well asfor scripting user operations
Client Tools - PowerShell• Users and administrators can use PowerShelland the TFS API for automating routine and/orcomplex tasks• The TFS 2010 Power Tools include a set ofPowerShell cmdlets for accessing TFS services
Conclusion• Team Foundation Server 2010 is a completecollaboration platform that supports accessfrom a variety of client tools, both automatedand end-user• Employing the various services and datastores, you can tailor TFS 2010 to precisely fitthe process, methodology and reporting needsof your project