Normally, I use this space to discuss the important stuff: me, and the weather in the Pacific Northwest. But not this time. This time it's all about the writers. They are all fine people.

Even though, except for one glorious day last Saturday, it has only been above 55 degrees twice since Febuary 1, and no one seems to understand the effect it has on me.  

And, never play chicken with a Buick when all you got is a bicycle.

Patrick

Quick Links

Installing Team Foundation Components

Tim makes it official.

Customizing Process Templates
TFS and Project Server Integration

Kathryn re-orginizes process template info and updates the TFS / Project Server docs for the functionality released in the Team Foundation Server 2010 and Microsoft Project Server Integration Feature Pack.

Modeling the Application

Alan wants you to test your extensions to VS UML tools. He even shows you how.

Testing the Application

Howie's got it all: blog samples, conceptual topics, and even API references.

Building the Application

Andy provides a custom build template to help you control where your compiled binaries end up.

Technical Articles for Visual Studio Application Lifecycle Management

Elizabeth explains how TFS can help you comply with Sarbanes-Oxley.

Installing Team Foundation Components

Tim says:

TFS 2010 officially supports Win7 SP1 and Windows Server R2 SP1. If you had TFS installed and were waiting to update your OS, you are now free to move about the country (*ding, ding*) er, wait.
I mean, upgrade to the latest bits.

Find out more at Tim's blog: http://elhajj.wordpress.com/2011/04/11/team-foundation-server-2010-supports-windows-7-and-window-server-2008-r2-service-pack-1/

Customizing Process Templates

Customizing Process Templates to Support Your Business Processes (for Dev 10)

We've streamlined and enhanced the content that addresses how to customize process template. Specifically we made the following changes:

New and Updated Topics to Support Customizing Plug-in Tasks and Type Definitions

To streamline the content, we consolidated the syntax structure and attribute definitions for the taskXml child elements within the topic that describes how to customize each plug-in or file you want to upload. The following topics are either new or revised:

Eliminated Topics

You won't find the following topics in the TOC anymore. We eliminated all element definition and schema definition topics whose content had been consolidated. This resulted in the elimination of the following topics and their child topics:

What Do You Do When You Sort a Tree List and Receive Error TF208102?

 

(This update only applies for Dev10 SP1)

Prior to the update of Dev10 SP1, if you sorted a tree list in Excel, you received Error TF208022. You could not publish the changes you made to your worksheet after you had sorted a worksheet that contained a tree list of work items. Now, with Dev10 SP1 installed, you can publish the changes you made to work items, even if you did a sort on the tree list. All the changes you made to the tree hierarchy, however, will revert to the original link definitions. You can learn more from the following updated topic:

Microsoft Team Foundation Server 2010 and Microsoft Project Server Integration Feature Pack

http://msdn.microsoft.com/en-us/library/gg455680.aspx

(These updates only apply for Dev10 SP1 and the installation of the Team Foundation Server 2010 and Microsoft Project Server Integration Feature Pack)

What Do You Do When Hierarchical Links Are Locked, and You Receive Error TF208104?

With the integration of Team Foundation Server and Project Server, it is possible that parent-child links become locked. Locked links are indicated in the Query Results view with the symbol: . The following topic contains an update to help you address TF208104 error when you try to publish an Excel worksheet that contains locked links:

Setup, Configuration, and Updating from the Beta Release to RTM

Several updates were made to the topics that address the setup, update, and configuration of the two server products to identify all the cumulative updates required to support Project Server, as well as recommended update sequence, permission assignments, and required steps to configure SharePoint Products after the cumulative updates have been installed. You can learn about these changes in the following topics:

Synchronization, Mirror Fields, and "Two Sets of Book"

Several corrections and additions have been made to topics to clarify how the synchronization engine manages date-related fields, the updates of mirror fields, and the submission of new, multiply-nested work items and tasks from Team Foundation Server to Project Server. Specifically, you should be aware of the following process notes:

  • You can map Start Date and Finish Date (pjStartDate and pjFinishDate) Project fields to Team Foundation fields, but any value that you set in Team Foundation is not sent to Project Server. This restriction is by design. Date fields are always defined by the value in the enterprise project plan.
  • While the OnConflict field mapping attribute enables you to define how you want the mirror field in Team Foundation to be updated, it does not reflect how conflicts are managed. In fact, no conflicts can occur in the three way synchronization process. The OnConflict attribute simply allows you to determine if you want both the reference field and the mirror field to be updated (OnConflict=PSWins), or only the mirror field to be updated (OnConflict is left undefined). By default, the Title, Assigned To, Original Estimate, Start Date, and End Date fields in Team Foundation are always updated with the latest changes made to the project plan. The expectation is that a query can be run to find those work items where the project manager has made changes to the Remaining Work or Completed Work fields, as these fields are maintained as two sets of books. When this occurs, a conversation should occur to learn how the discrepancies should be handled.
  • When the synchronization engine submits multiple levels of work items to Project Server, the first level must be approved and published to Project Server before the next level can be submitted. For example, you can submit a batch of new work items that includes three levels of child items. In that case, the project manager must publish the project plan four times for all work items to be synchronized with Project Server.

The following topics have been updated to reflect these enhancements:

Modeling the Application

Unit Testing for UML extensions and DSLs

We recommend you write unit tests to help keep your code stable through updates. If you use VMSDK to write domain-specific languages or extensions to the UML tools, then you'll find the essential clues here: How to Run Unit Tests on UML Extensions.

There's also a sample solution with the unit tests all set up, which you can download from UML: Rapid Entry tool.

UML Extensions

There are now several cool source code samples that show you how to write your extensions for the VS Ultimate UML tools. In addition, you can use the samples as they are to add useful features to the tools. The most popular ones include:

UML: Rapid Entry tool
http://code.msdn.microsoft.com/UML-Rapid-Entry-using-Text-0813ad8a

When you want to enter a complete model, drawing every box and line with the toolbox can be slow. This tool lets you write text commands so that you can create a model while you're in a meeting.

UML: Link Elements to diagrams, files, and other elements
http://code.msdn.microsoft.com/Link-UML-elements-to-0adbf5a8

Drag items from Windows, section heads from Word, slides from PowerPoint, or elements from other models, onto any UML element. Later, you can double-click the element to open the linked items. Great for linking your spec or architecture docs to your model.

UML: Align shapes


http://code.msdn.microsoft.com/UML-command-to-Align-4139c0d7

Make your diagram more tidy.

Testing the Application

Blog update:

Howie Hilliker has added a new code sample, Verifying the Links in your Web Application Using a Web Performance Test on his blog: http://blogs.msdn.com/b/howie_hillikers_blog/archive/2011/03/24/verifying-the-links-in-your-web-application-using-a-web-performance-test.aspx

Conceptual testing topic updates:

How to: Create a Visual Studio Add-In for the Web Performance Test Results Viewer
http://msdn.microsoft.com/en-us/library/ff458704.aspx

The code sample in one of the procedures had an error where the wrong namespace was being displayed. This has been corrected and now the resulting Add-in works correctly.

Walkthrough: Run Tests and View Code Coverage
http://msdn.microsoft.com/en-us/library/ms182534.aspx

Added prerequisites specifying that Visual Studio 2010 Premium or Ultimate are required.

How to: Create an Action Recording
http://msdn.microsoft.com/en-us/library/dd286647.aspx

Topic had information about how to load action recordings at bottom of topic; however, it was inserted into an unrelated note by mistake. Removed the content from the note and appended to end of last procedure.

How to: Install the Required Software to Create a Video Recording Using Test Runner
http://msdn.microsoft.com/en-us/library/dd997558.aspx

Added additional clarification regarding when the installation of Windows Installer 3.1 is needed.

Managed reference testing topic updates:

Microsoft.VisualStudio.TestTools.UnitTesting.Assert Class
http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.unittesting.assert.aspx

Added links from all the various assert methods (for example, Assert.IsFalse) to the related conceptual topic Using the Assert Classes (http://msdnstage.redmond.corp.microsoft.com/en-us/library/ms182530.aspx). 

Microsoft.VisualStudio.TestTools.UITesting.UITestControl.SearchProperties Property
http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.uitesting.uitestcontrol.searchproperties.aspx

Added C# code example demonstrating using the property.

Microsoft.VisualStudio.TestTools.UnitTesting.Assert.AreEqual Method (Object, Object)
http://msdn.microsoft.com/en-us/library/ms243413.aspx

Added unit test code sample demonstrating how different numeric types are treated as equal if the logical values are equal. For example, a Long 42 and an Int 42.

Microsoft.VisualStudio.TestTools.WebTesting.WebTestContext.WebTestUserId Property
http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.webtesting.webtestcontext.webtestuserid.aspx

Added cautionary note stating that the unique value assigned to WebTestUserId for a simulated user is valid only when it is used with one load test scenario and one load test agent. The WebTestUserId value is not unique across multiple agents.

Building the Application

Applies to: VS and Team Foundation 2010

Downloadable Build Process Template to Control Drop Folder Structure
http://blogs.msdn.com/b/andy-lewis/archive/2011/04/14/downloadable-build-process-template-to-control-drop-folder-structure.aspx

The MSDN topic Control Where the Build System Places Your Binaries
describes techniques that you can use to control where your Team Foundation Build system drops the compiled binaries. In response to your input, Andy has created a custom build process template that makes this task much easier. You can download the CustomOutputDirImport.xaml build process template from Andy's aptly named Downloadable Build Process Template to Control Drop Folder Structure  blog post.

Technical Articles for Visual Studio Application Lifecycle Management

Applies to: VS and Team Foundation 2010

Sarbanes-Oxley and Team Foundation Server 2010
http://msdn.microsoft.com/en-us/library/gg983694.aspx

Learn how Team Foundation Server features eliminate many of the risks associated with proving SOx 404 compliance for financial systems.