Executive Summary:
Dan Holme teamed up with NBC television as the Microsoft Technologies Consultant to help bring the 2008 Beijing Olympic Games to television and the Internet. Microsoft SharePoint was a major part of the platform used to manage the operations that bring the events to the public. He discusses four real-life tasks that he solved by using Microsoft Office SharePoint Server (MOSS) 2007: a custom document management application, a Help desk application, a forms-based content delivery solution, and a transportation management system. |
I’m honored to work with some of the greatest IT teams on the
planet, including the awe-inspiring folks at NBC Olympics, who
play a pivotal role in bringing the Olympic Games to the air
and to the Internet every two years or so. This summer, in
Beijing, we’re making more use of SharePoint than ever
before, and I want to share with you four of the tasks we’ve
conquered by using SharePoint. I’ll explain how to tie existing
applications into SharePoint; replicate documents between document
libraries; create intelligent, form-based applications; and
develop multiuser applications that provide rich client and Webbased
interfaces. I hope to give you insight into real-world uses of
SharePoint, teach you what we’ve learned along the way, and inspire
you to use SharePoint to provide new types of business solutions.
Custom Document Management
I’m often asked, “How can I hook my existing applications into SharePoint
to leverage SharePoint’s collaboration features?” One of our applications is a
custom Microsoft .NET application that—put simply—generates specifications
about venues so that engineering and production staff know what types of situations
they’ll be dealing with. One of the outputs of the application is a PDF file about the venue. In
this Games, the application was modified so that instead of storing the PDFs in a traditional file share,
the PDFs are saved to a SharePoint document library.
You have several options for saving PDFs to a document library. The most complex and rich method
is to use code (or a third-party tool) to generate the PDF on the SharePoint server, then develop custom
code using the SharePoint object model to manage document metadata (columns) and manipulate the
document library. But there are easier methods. You can email-enable a document library so that email
messages with an attached document can be sent to the library, and the library will receive that message
and automatically store the document—and, optionally, the message as well. This is one of the easiest
ways to extend existing applications: just have the applications email the document to the address of the
library. Note that this method effectively populates the document library, but you would need a workflow
or other programmatic or manual method to configure document metadata.
You can also use Web Distributed Authoring and Versioning (WebDAV) to interact with SharePoint
document libraries. Our custom application saves its PDFs to the document library using the URL of the
library. WebDAV lets you use standard Windows methods to retrieve documents from a library—you can
even map a drive to a document library. Therefore, we also used WebDAV to implement simple document
library replication. The PDFs generated by the custom application need to be available on servers in both Beijing and New York. We needed a lowoverhead
way to get documents from Beijing,
where the documents are generated, to New
York, where they are available in a read-only
library. We opted to use a scheduled task to
launch Robocopy to mirror the contents of the
document library in Beijing to the document
library in New York.
When you use WebDAV to interact with
a document library, you lose metadata
richness. So, for example, we can’t mirror
metadata about a document in Beijing to
New York. But metadata replication wasn’t
a requirement, so by focusing on the core
requirement, we found a solution that the
team liked and that took less than an hour
to implement. If our requirements were any
deeper, we would have needed a third-party
content replication application.
Help Desk Application
The site templates available out of the box
with SharePoint are generic at best. If you
need a SharePoint application that supports
a specific business task, function, or
department, you’re out of luck. Out of luck,
that is, unless you turn to the Fabulous Forty
application templates that Microsoft has
developed. Application templates provide
a lot of cool, out-of-the-box functionality
through custom lists, libraries, workflows,
content types, and Web parts. The Fabulous
Forty includes templates for dozens of scenarios,
including a Help Desk template that
we’ll be customizing to support the Help
desk for NBC during the Games. You can
download the templates at www.microsoft.com/downloads/info.aspx?na=22&p=1
&SrcDisplayLang=en&SrcCategoryId=&
SrcFamilyId=&u=%2fdownloads%2fdetails
.aspx%3fFamilyID%3d5807b5ef-57a1-47cb-
8666-78c1363f127d%26DisplayLang%3den.
In Beijing, we need an application to
support the Help desk, which exists for about
four weeks and is crucial to operations. But
the limited lifetime of the application means
that we need an inexpensive, easy-to-useand-
maintain solution. We used the Windows
SharePoint Services (WSS) 2.0 Help Desk
application template in Torino, and we’ll be
making even more use of the WSS 3.0 version
in Beijing.
The template provides a ticketing system
that lets our Help desk staff enter tickets,
update and track issues, and assign tickets
and tasks, which is important because a ticket might cross from one shift to another.
The template also lets our Help desk manager
monitor progress on tickets and pull
reports. I’ll be monitoring the template to
look for common concerns that we can
address with training or through configuration
changes to clients and applications.
Because you can extend these templates,
we’ll add a Calendar list to incorporate our
Help desk staff scheduling so that we always
know who is on duty and which escalation
points are on call. We’ll use a Contacts list to
store the contact information, and we’ll have a
mobile access page for that list so that we can
get to contact information using a PDA from
anywhere on our network.
Content Delivery
If you’ve paid any attention to the preparations
for the broadcast of this Olympics,
you’ll know that a huge amount of content
will be made available over the Web and to
your mobile devices. For the first time, you’ll
be able to watch events from any device and
be able to see events and competitors you’ve
never had the chance to see before. In Salt
Lake City and then Torino, where NBC
expanded its coverage to a broad range of
broadcast and cable channels, the sport of
curling caught fire. I’m excited to see which
sports, countries, and athletes capture our
imagination this summer!
To get all that content to the right media
outlets, a dedicated video distribution application
takes video packages and delivers or
streams them. A large amount of metadata
accompanies each package—metadata that
varies per outlet. For example, the “Title”
field can be long on Amazon.com, but must
be short for mobile Multimedia Messaging
Service (MMS) delivery.
Additionally, editors must be assigned to
create the packages. To make it possible for
mere mortals to enter all this data, preferably
before the Games begin, we need a userfriendly
interface that exposes just the right
data, performs data validation, ensures that
required fields are completed, then transforms
all this information into the XML file
required by the video distribution application.
Once again, SharePoint came to the rescue.
Continue on Page 2