Enabling SharePoint Co-Authoring on TFS Sites

Out of the box, SharePoint co-authoring isn’t enabled on Team Foundation Server (TFS) sites. Since this is one of the coolest collaboration features to be included in the integration between SharePoint 2010 and Office 2010, it is a shame not to use it. Unfortunately, those who are running SharePoint 2007 or the default WSS 3.0 sites will not be able to make use of this feature, but this should give you something to look forward to in your next upgrade.

In the more traditional models, documents that are stored out on the TFS SharePoint site are either just dumped into libraries or will have checkout enabled. In the former case, there is no document control and different versions of the same document will just overwrite each other. In the latter case, checkouts will let one person check the document out and make edits exclusively until they return it to the library. This is great, but in very dynamic teams, it is helpful to let more than one person edit the document at once – especially when you are able to do this in real time, over a conference call perhaps. With co-authoring enabled, several people can work on the same document and will see the changes that are being made every time they save and synch changes. Even better is the chat and presence information that can be provided if you are using Lync Server or Office Communication Server, you can interact and see the other people who are modifying and updating the document.

Enabling SharePoint Co-Authoring

These settings are done at the Document library-level and can be done one at a time with no impact to other TFS projects or Collections on your server. Changing a bunch of existing sites would require some scripting or mass changes. Likewise, if you would like this to be the default in your environment, you will need to modify the site template and save it for new sites that will be derived from that template.

  1. Ensure that you are an Administrator of the Team Site that you will be editing
  2. Navigate to the SharePoint sire for your project
    1. Enter the URL for your site http://<SharePoint URL/Site/<Collection Name>/<Project name>
      – or –
    2. In the Team Explorer, right-click on the project name and select Show Project Portal
  3. In the left column, select Shared Documents
  4. At the top of the screen in the ribbon, navigate to Library Tools | Library
  5. In the Settings Section, click Library Settings
  6. Select Versioning Settings
  7. Ensure that Require Content Approval for Submitted items is set to No (Default)
  8. Enable versioning

    By default, versioning is not enabled on TFS libraries.
    1. You can choose to keep major and minor versions at your desire, but I prefer to keep both.
    2. If you are at all worried about disk space (and who isn’t?) you’ll find it a good idea to limit the number of document versions it keeps for both major and minor versions.
  9. Draft Item Security
    1. I prefer to restrict this to Only users who can edit items
  10. Require Check out
    Requiring checkout will disable the co-authoring features you it is imperative that you disable this. Of course, team members will be able to check the document out for exclusive edits if they would like, but forcing it will not allow others to share the document. This is a small training piece for team members who are used to doing it the other way, but this should be a huge barrier.
    1. Ensure that this is set to No.
  11. Click OK

Now when you are editing a document from either the Documents folder in the Visual Studio/ Team Explorer window or from the SharePoint site, your save button will be changed to Synch and Save. You’ll also get notifications when others open a document you have open and new email and chat options will show up in the footer bar as well as on the file menu.

How Cool!

For a cool demo of what the feature looks like, have a look at the screencast: http://sndshreeman.wordpress.com/2010/05/17/sharepoint-2010-multiuser-co-authoring-and-tfs-screen-cast/


Spell Check in TFS

One of the most-requested features in TFS is to add the ability to do spell check in the work items to avoid dumb typos being stored forever in the database. I am sincerely hoping that fully-integrated spell check is in the next version of Visual Studio, but in the meantime, there is another option.

Most of the fields on the Work Item screens don’t really need spell check, but it would be really great to have on the larger text fields that are used to story WI descriptions, acceptance criteria and things like that. If you are using the CMMI template you probably already have these as HTML fields and usually one of the first customizations that you had probably considered was swapping out these on the Agile and SCRUM template. Once you do this, many of the IE plug-ins that you’re using will become available to you.

I have ieSpell installed on my computer and it provides a full-featured spellcheck simply by right-clicking on the paragraph in the field. The days of misspellings in requirements and User Story Work Items are over.

IeSpell can be downloaded here: http://www.iespell.com/ It is free for personal use, but can be used in a corporate setting for a very reasonable cost.