Every time Microsoft releases a new version of Exchange Server, we wonder whether it will still support public folders. Over the years, companies have experienced wild growth in public-folder usage. Users are often creative with public folders (which are intended for data archive), using them to make backups of their desktops and even to run business-critical applications. However, with its recent announcement of Exchange Server 2007—the next major version of Exchange—Microsoft has set the grounds for "de-emphasizing" public folders.
Terry Myerson, the general manager of the Microsoft Exchange Server Group, explains Microsoft's public-folder strategy for Exchange 2007 in his blog (http://blogs.technet.com/exchange/archive/2006/ 02/20/419994.aspx). To answer questions about the future of public folders, he makes several key points. In new Exchange deployments, public folders will be optional with the use of Microsoft Office Outlook 2007 and won't be installed by default. For companies migrating existing deployments, public folders will operate with little change from Exchange Server 2003. (Upgrades to Exchange 2007 won't depend on migrating or decommissioning public folders.)
These points have left companies wondering, "If we don't use public folders, what will replace them, and how do we get there?" Terry suggests in his blog that companies looking to replace Exchange public folders should consider Windows SharePoint Services (SharePoint). SharePoint, which is included with Windows Server 2003, is a Web-based service that lets users perform team collaboration and document sharing. What kind of process are you looking at if you decide to move from public-folder functionality to SharePoint? Let's take a look at SharePoint and public folders from a strategic standpoint, then discuss the process of embarking on a data migration.
SharePoint vs. Public Folders
In his blog, Terry notes that Microsoft will fully support Exchange 2007 for 10 years. With that in mind, what are the advantages of using SharePoint? SharePoint is a robust collaboration solution that offers some enticing advantages over public folders. Public folders are great for archiving data, but they lack features such as document management, automatic notification of content changes, integration with Microsoft Office Live Communications Server and InfoPath, and integrated content search.
SharePoint is essentially a .NET Web application that uses Microsoft SQL Server as its data store. SharePoint boasts the concepts of lists and libraries, each of which offers unique properties and capabilities. Examples of lists include discussions, contacts, tasks, and events. Lists aren't document-based. There are three library types: documents, forms, and picture libraries. In document libraries, you can keep a collection of documents or other files that you want to share. Document libraries support features such as subfolders, file versioning, and check-in and check-out. With this basic understanding of how SharePoint stores items, you'll see how having separate list and library types can pose a problem for data migration.
In contrast with SharePoint, public folders combine the functionality of SharePoint's discussion lists and document libraries as a single storage type. Before you begin your migration, you'll have to make a choice about where to move your public folders, and this choice will have an impact on the available feature set. For example, in one public folder, you might have a mixture of Office documents (called SmartDocs) and threaded discussions. If you move all the contents to a document library in SharePoint, you'll lose the conversation association (or threads). If you move all the items to a discussion list, you'll lose the document-management capabilities. It's probably better to make a choice and keep the folder in a particular list type. Splitting the list might cause confusion, and users won't know where to find the old information they once found in a familiar place.
Another major difference between the two products is security models. Exchange provides many granular roles, so users can tune permissions on a folder to delete only their own content. SharePoint doesn't provide item-level security; it provides security only at the list and library levels. So, you can either create one-off libraries with custom permissions or live with the new security model in which anyone can possibly delete anybody else's documents. If a public folder has many access controls applied to it, migration of that folder will result in either multiple SharePoint libraries or a relaxing of that folder's security. These kinds of differences between the products show how a migration will be more complicated than you think.
The Migration Process
For the migration project in this article, I'll use a couple tools from Microsoft's GotDotNet.com site. At this site, you'll find extractor programs that essentially take data from a certain source, such as Exchange's public folders or the Windows file system, and convert that data to an intermediary format that a SharePoint importer program can use.
You'll find the installation packages and source code for the Exchange Public Folder Extractor and the SharePoint Products and Technologies Import Wizard at http://www.gotdotnet.com/workspaces/ workspace.aspx?id=6996fb17-2a54-4607-983b-35c7697baa53. The source code is freely available, so the tools are constantly evolving and getting better thanks to community support and interaction. (You can also consider a few commercial products, such as Tzunami Deployer and CASAHL's migration solution, both of which offer benefits such as full customer support.)
The migration process consists of three steps—cleaning up your public folder environment, extracting content from Exchange public folders, and importing that content into SharePoint—and the use of three separate tools: a cleanup tool called PFDAVAdmin (available for download from Microsoft at http://www.microsoft.com/downloads/details.aspx?familyid=635be792-d8ad-49e3-ada4-e2422c0ab424&displaylang=en) and the aforementioned extractor and importer tools. After the cleanup process, you'll extract the Exchange public folder content to a shared file path in a common export format. Then, from that shared file path, you'll import the information into SharePoint. I'll take a look at each step in depth. Figure 1 shows a public folder tree that I'll use to illustrate a sample migration.