Web Abstract:
- Microsoft Office Groove 2007 is a workgroup collaboration tool that is fully integrated with the Microsoft Office 2007 system.
- Microsoft Office Groove 2007 lets you create a workspace for shared documents, calendars, and other items that will automatically synchronize with other members of the workgroup.
- The Microsoft Office Groove 2007 client can synchronize with Microsoft SharePoint sites.
|
Microsoft, like many technology companies, sometimes grows by acquiring other
companies. These acquisitions happen for a variety of reasons, and sometimes
the rationale behind a particular purchase doesn't become clear until some time
has passed. In March 2005, Microsoft bought Groove Networks, the company that
created the Groove collaboration environment—but we're just now starting
to see the strategy behind this acquisition with the release of the Microsoft
Office 2007 system. Microsoft Office Groove 2007 fully integrates with Office
2007. Groove is a workgroup collaboration tool that lets you create a virtual
office. Your team can use Groove to share files, manage meetings and projects,
and track data and processes—all as if you were in one location.
Groove's History and Architecture
Groove was developed by a team led by Ray Ozzie, the architect who designed
IBM Lotus Notes and who is now the chief software architect at Microsoft. You
probably won't be surprised to see, therefore, that the Lotus Notes client and
the Groove client share some architectural and behavioral similarities. For
example, when you create a new Groove user account, the account automatically
gets a digital certificate that is used to authenticate the account and to encrypt
data sent to it. However, Groove is different, too, because it uses a peer-to-peer
(P2P) architecture. Every client that connects to a particular Groove workspace
maintains its own local copy of the workspace's information. Clients send updates
directly to each other with the help of a Groove server, which you can think
of as more of a coordinator than anything else. Microsoft maintains a centralized
set of Groove servers, the addresses of which are hard-coded into the Groove
application. However, you can deploy your own servers to take over this coordinating
role by licensing Microsoft Office Groove Server 2007.
When a client reconnects after being offline, it finds its peers through queries
to a Groove server, then establishes connections directly to those peers to
catch up on the changes it missed while offline. The change-tracking algorithm
that Groove uses is quite sophisticated; updates are tracked in small increments
known as deltas. Therefore, changing one slide in a 10MB Microsoft Office
PowerPoint presentation doesn't require a resynchronization of the entire file
among all workspace members. The workspace where the change was created keeps
a log of the deltas it "owns," purging a delta from the log only when all other
workspaces confirm that they've introduced that delta into their own local spaces.
The process by which an individual client determines which updates it needs
from its peers is too complicated to cover here.
After its acquisition of Groove, Microsoft released an updated version of Groove
Virtual Office that provided a few new features. However, the Office 2007 release
of Groove is the first release to be completely integrated with the rest of
Office, which smoothes the overall user experience and makes Groove capabilities
more directly accessible from within Office applications and Windows Explorer.
Getting Into the Groove
Setting up a new shared workspace is simple; Groove lets you choose the type
of workspace you want, from simple workspaces for sharing document files or
calendar information to workspaces that automatically download and cache local
copies of SharePoint sites. Figure 1 shows
a sample Groove workspace. After you've created a workspace, you put content
into it by dragging files and folders into the workspace view. As an alternative,
when you create a workspace you can specify that it be synchronized automatically
with a folder on your computer, although you can't use a Universal Naming Convention
(UNC) path or a folder mapped to a remote share.
After the workspace is established, you invite other people to join it. You
can send invitations via email, which lets you take advantage of the contents
of your organizational Active Directory (AD) as well as your personal Microsoft
Outlook contacts. You can also search for users on the Groove user directory
maintained by Microsoft, which is useful for establishing workspaces that include
people from different organizations. Of course, most users probably won't have
existing Groove accounts, which leads to the biggest roadblock to getting started
with Groove: Every workspace participant has to install Groove, then create
a Groove account so that you can invite them to the workspace. This process
isn't difficult, but my experience has been that many users are reluctant to
install applications just for a particular project. That's part of what makes
Groove's integration with Office 2007 so valuable: Many users will now already
have Groove 2007 installed.
Groove Workspaces
At the most basic level, you can think of a Groove workspace as a shared folder
that can contain files. When you drop a file into your local copy of a workspace,
the file is copied to every other instance of the workspace without any action
by the other members. This capability predates most of the file-syncing and
file-sharing services now available on the Internet, and it helped fuel early
adoption of Groove. Groove workspaces include many useful tools, such as IM,
a calendar, an outliner, a notepad, and so on. The data items produced by these
tools are automatically synchronized between copies of a workspace; if you create
a new calendar entry in your copy of a workspace, it will propagate to other
copies of the workspace without any action on your part. This is a surprisingly
useful way to provide workgroup collaboration: As each team member adds, creates,
and modifies the contents of the workspace, the changes show up in each copy.
The Groove client is smart enough to detect conflicting changes and to notify
you that a conflict exists; you can see the changes associated with each workspace
copy and choose the one you want to keep.
Groove's synchronization infrastructure
is quite robust. By default, the only function that the centralized server is responsible for is helping clients find one another;
a client will choose to establish a direct
connection to another client whenever
possible. Groove clients talk to each other
using Simple Symmetric Transmission
Protocol (SSTP) over TCP port 2492. If a
client attempts to reach another client and
finds that the recipient isn't answering on
the selected port, the sending client can
use SSTP over TCP port 443 to connect
to a relay server instead; the relay server
collects the sender's deltas and passes
them on to the receiving workspaces
when they next appear on the network.
This method means that security concerns
for deploying Groove are minimal for most
organizations; you don't need to open
additional ports to allow Groove to synchronize with users outside the company
firewall.
What's New and Groovy
Groove 2007 includes significant changes from previous versions. First, it integrates
with the rest of Office and with Windows Explorer. For example, you can now
see presence information and open IM sessions with workspace members by using
the Office Communicator client, and you can send files to a Groove workspace
from within Windows Explorer.
Second, the Groove 2007 client can capture the contents of SharePoint team
sites or document libraries, synchronizing only the files or folders you want.
This ability makes your workflow simple and straightforward: You can work directly
with the items you need while you're connected to your network, then synchronize
the contents to a Groove workspace to get full offline access to those same
items while you're traveling. You can make changes to the items, then check
them back into their original SharePoint locations automatically the next time
you connect to the network. Because SharePoint also offers team calendars, contacts,
and lists, you can intermix Outlook's and Groove's offline functionality to
coordinate your work with others. However, this synchronization is limited in
scope: Only the workspace that originally establishes the sync relationship
with a SharePoint site can put changed data back into that same SharePoint site.
Suppose that Alice synchronizes her team SharePoint site with a Groove workspace.
If Bob and Charlie are workspace members, they can make changes to the workspace
data, but those changes won't propagate back to SharePoint until Alice initiates
synchronization. In fact, if Alice has a copy of her workspace on a computer
at home, that workspace can't push changes back to SharePoint either; only Alice's
original workspace can do so.
Groove 2007 also integrates with Microsoft Office InfoPath forms, which makes
Groove a natural platform for data-gathering applications. You can fill out
instances of a form in Groove, then sync them back to a central server to aggregate
the data you've collected with the work done by others.
Although Groove's decentralized nature remains, Microsoft has made an important
concession to organizations that want to maintain total control of their Groove
environments by creating the Groove Server 2007 applications. If you want to
deploy Groove without depending on Microsoft's servers for coordination, you
can deploy your own servers from which you can control which users get access
to workspaces, what they can do with the workspaces, and what information you
see and share with others. Groove Server 2007 integrates with AD for provisioning,
so you can easily grant access using the same set of directory information you
use for other types of provisioning. The Groove Server product line includes
the ability to back up and restore workspaces from the server (a nice disaster-recovery
feature), and the Groove Server Data Bridge lets you integrate other line-of-business
applications with Groove workspaces and their tools.
Using Groove
Groove workspaces are a good example of cellular design: You can create workspaces
for different projects, and each workspace can be thought of as a unique cell
whose contents are completely separate from other workspaces. For example, I
used Groove extensively during the creation of my two security books for Microsoft
Press. I created one workspace for sharing documents with my editors and another
for passing out drafts of chapters to technical reviewers. As I completed new
versions of each chapter, I dropped them into the appropriate folders and let
Groove take care of transmitting the updates to each team member. I didn't have
to log on to a VPN, remember credentials, or do anything else beyond dropping
the file into the correct workspace folder. Synchronization was automatic and
worked well even over the dial-up lines I often had to use while traveling at
the time. As editors or reviewers marked up chapters and artwork, their revisions
automatically appeared in my workspace whenever I went online, greatly simplifying
the process of exchanging and coordinating updates.
Another major benefit of Groove's approach is that workspace members don't
have to be part of the same directory namespace. You can have a workspace
whose members are all from the same AD forest or domain, but you can just as
easily have a Groove workspace whose members are all from different organizations.
This capability means that collaborating with people outside your organization
is just as easy as collaborating with those inside: Invite the members you want,
and after they sign up for Groove accounts, they'll be able to start sharing.
Groove's collaboration capabilities lend themselves to remarkable uses. For
example, John Morello, the deputy chief information security officer at Louisiana
State University, and a team of Microsoft engineers quickly built a Groove-based
system for operating LSU's Emergency Operations Center (EOC). The LSU EOC program
takes advantage of Groove's synchronization infrastructure to allow disparate
agencies (e.g., parish sheriffs, local ambulance companies) to federate with
the EOC's systems without the overhead or maintenance of a VPN. By using SharePoint
as the basis of the EOC's system and Groove to provide synchronization of SharePoint
and InfoPath data, the EOC team can keep up to date.
From an IT perspective, Groove offers some interesting possibilities. Many
users use Groove instead of the built-in Windows Client Side Caching (CSC) functionality;
to do so, you set up a Groove workspace on your work computer, then use the
built-in Export command to export your Groove account to a file. When you use
the exported Groove account to log on to a different computer that has the client
software installed, you'll be able to synchronize to your workspace and work
with it locally. Of course, you can also invite others to the workspace—a
key advantage over CSC. This simple method provides work-at-home capabilities
for users who might not want to, or be able to, use VPNs to connect to your
internal network. The decentralized nature of Groove workspaces is also a boon
for geographically distributed teams; if you frequently find that you or some
of your colleagues have to travel for implementation work, a Groove workspace
might be a useful addition to your travel toolkit.
For end users, consider how you can use the synchronization and sharing features
built in to Groove to improve the business processes you already have. Any process
that depends on mobile or intermittently connected users should be evaluated
to see whether adding a synchronized, P2P shared workspace might improve its
timeliness or accuracy.