Wise Choices: User Profiles and People Findability

I had two very interesting experiences in my consulting world last week. In one experience, I gained further insight into what continues to drive many organizations, even large companies, toward SharePoint. The other experience taught me an important lesson about how organizations come to make technical choices that increase cost and decrease productivity—how politics can trump business requirements. The two stories demonstrate the two ends of the spectrum when it comes to SharePoint perspectives. This week I'm going to share the first part of the first story with you.

My recent conversation with a major financial services organization began with a short and simple discussion of "current state" and "needs analysis." The firm has a number of SharePoint implementations supporting collaboration. The company also has an employee directory on the intranet that pulls information from a variety of sources, including Active Directory (AD). This is not unlike most large organizations.

Some folks in the organization had proposed using the user-profile and people-search functionality of SharePoint to replace the intranet directory. In addition, some of the leaders are requesting increased use of Web 2.0 and social networking functionality—blogs and wikis in particular—to increase the capture of corporate knowledge. So their fundamental question to me was, "Should we roll out My Sites and, if so, what functionality can/should it deliver?"

The thing that I so appreciated about this company was that the person who contacted me intuitively understood several key points about SharePoint. First, SharePoint is not a silver bullet. While Microsoft and some others might position SharePoint as the cure for almost every business productivity ill, it's not. SharePoint can do a lot, and it can do a lot very well, but a silver bullet it ain't. And some of what it can do requires customization at one level or another that might or might not make it the right fit for one particular organization's scenario, where it might fit perfectly for another.

In the case of the intranet directory, the existing application has been in place long enough that it's quite feature rich. The business requirements are well known and are already being met. That means that the company can use one of several approaches to integrate or migrate the existing directory:

  • Place a link to the existing intranet directory on appropriate SharePoint pages or My Sites.
  • Present the existing intranet directory within SharePoint, such as with a page viewer web part on appropriate SharePoint pages.
  • Develop custom web parts to create the desired interaction with back-end data sources and/or the existing intranet directory.
  • Replace the intranet directory with SharePoint user profiles, people search, and possibly My Sites, using the Business Data Catalog (BDC) to pull information from sources other than AD.

Each of these options presents costs and benefits. A link or an iframe-like approach (like the page viewer web part) requires the least effort, but achieves the least integration. The second two options require various amounts of configuration and custom code, depending on the functionality and two-way interaction with the back-end data that's provided by the current intranet directory. (You can do just about anything with a custom web part.) With user profiles, you get the ability to pull information from AD. And by using the BDC, data from other sources is pulled in, indexed, and leveraged by various SharePoint features.

Not many organizations leverage user profiles, even though they're a pretty powerful way to improve people findability. In a nutshell, here's what you can do with user profiles. For each user, SharePoint pulls information from AD or another LDAP database, such as Active Directory Application Mode (ADAM) or Active Directory Lightweight Domain Services (AD LDS). You can extend the default information it pulls from AD, so you can pull standard or custom attributes into SharePoint user profiles. You can also pull information from ADAM (or another LDAP database), use a process (e.g., Identity Lifecycle Manager or a script) to synchronize that information with AD data, then import the combined information into the user profiles. You can also use the BDC to pull information from another type of database, such as an HR database. The BDC can't provide the primary source of user information—it can only supplement (i.e., add attributes to) the users imported from an AD or LDAP database. Keep in mind that the BDC is a read-only connection in Microsoft Office SharePoint Server 2007 (MOSS 2007). So, if this organization's intranet directory includes the ability to edit attributes, a BDC connection to the database won't be enough. Once the information is in the user profiles, it's indexed and can be used to help target content.

You can learn more about user profiles by starting with these resources:

  • TechNet's Manage user profiles web page provides a task-focused introduction to user profiles for IT pros. The table of contents pane will guide you to additional related articles.
  • The MSDN articles "What's New for Developers in Office SharePoint Server 2007" and "Personalizing Your Portal" are great resources for developers. I also recommend that IT pros read these two articles and the related articles in the table of contents. MSDN documentation is often useful because it gives an IT pro a glimpse "under the covers", making the "above the covers" more understandable. It also helps both IT pros and business decision makers aware of what can be done by extending SharePoint with custom code.
  • Todd Baginski blog post "HOW TO: Enhance SharePoint User Profiles With The Business Data Catalog" is phenomenal. This is the best single resource I found because it discusses not only the business value of user profiles but also steps through an example of extending profiles with the BDC.
  • Office Online offers information about user profiles in "Managing User Profiles from Active Directory". However, although this discussion is under the heading of "Microsoft Office SharePoint Server (MOSS)", it deals with Microsoft SharePoint Portal Server 2003. I'm not convinced that this content is 100% on target for MOSS 2007, so I'd use it only as a last resort.

Of course, you can find lots of other great resources by searching for SharePoint "user profiles" (include the quotes) using your favorite search engine.

Finally, Ian Morrish has a really superb point to make—one that the enterprise in this scenario might consider: Use user profiles and My Site functionality without actually deploying personal My Sites. Check out Ian's blog post "SharePoint User Profiles, My Links and My SharePoint Sites without a personal My Site". Why would you want to do this? Because, as the customer pointed out to me, My Sites opens up a small (or large) "can of worms" from a governance perspective. Why not leverage all the findability benefits of user profiles without those worms?

This company was smartly aware of the fact that SharePoint can do a lot. Some of the functionality is out of the box, while some requires customization. It's wise to take a step back and evaluate the full spectrum of solutions, including skipping SharePoint, before blazing forward. In this case, I think SharePoint will be a part of the solution, if not the entire solution, over time. Over the next few weeks, I'll continue my stories, trying to integrate both technical and business guidance for you. I'll look at issues of social networking, governance, and business culture, and I'll get to the "costly choices" story. Stay tuned.