How to give the human touch to SharePoint

Ivan Wilson show how to make SharePoint a centrepiece of your KM strategy by making it easy for staff to record their experiences.


There is a wealth of knowledge within the organisation that is never written down. It’s in the heads of staff members and when they leave the organisation that knowledge goes with them.It's not realistic to try converting all this knowledge into written documentation. Who would have time to read it all for starters? But what you can do is ensure that you factor in people to your knowledge strategy.There are a number of ways that Microsoft Office SharePoint Server 2007 provides to make this easier. Let me take you on a tour of them and we can discuss how you can bring these together.


The starting point for the people-focused functionality in SharePoint is - not surprisingly - an up-to-date list of people. The easiest way to get this is to configure SharePoint to retrieve user details from Active Directory. For a lot of organisations Active Directory is already a central location for all staff details. As SharePoint is just taking a read-only copy of this information, you can avoid the situation of creating another staff list that needs to be kept up to date.


For many organisations Active Directory does not have a lot of useful details about people. Generally you will get the bare essentials such as First Name, Last Name and e-mail address. If you are lucky you will also have an up-to-date phone number, department and job title. If you are really lucky you might also get the name of the person's manager. Active Directory can store many more details about an individual, but the problem is that keeping this information up to date is hard. Normally the only people who can make changes to Active Directory are the IT staff. Most people in the organisation will not be aware of what details are in Active Directory about them. This is going to change once SharePoint starts making this information more visible. Be prepared to deal with more staff requesting updates to their Active Directory details. You could also consider deploying third-party software to allow non-IT staff to update personal details in Active Directory.


When you configure the User Profile import into SharePoint you can specify which entries to transfer. In Active Directory terms this equates to a particular Organisation Unit where you maintain your staff members as opposed to things like printers, computers and service accounts. You can also include filter terms to exclude particular accounts. It is worth getting these settings right, otherwise you will end up with a lot of useless entries.


SharePoint is not limited to importing details from just Active Directory. You can just as easily import from any LDAP-compliant repository. There is even a mini version of Active Directory that you can install on any computer and use that to store user details that you want to import into SharePoint. This version is called ADAM (Active Directory Application Mode). The nice thing about it is you can make any changes you want to the schema without impacting on the corporate Active Directory domain. This can come in handy if you need to consolidate user profile information from a number of different systems.


Let me just make one thing clear - the user profile details are not being used to authenticate people accessing the SharePoint site, they are purely a source of information that can be searched and displayed to staff.While you cannot allow people to update their Active Directory details from SharePoint, you can configure other user profile properties that users can modify. For example, you may allow staff to add a link to a photo, or to provide a list of skills that they have. Since this information is not being pulled from Active Directory, it won't get over-written by the daily update. Staff can also be granted the option of controlling who can see a particular property. For example, they may only want their manager or work colleagues to see their mobile number.


Let’s get back to the one of the properties that you may or may not have filled out in Active Directory - "Manager". This allows you to specify the Manager for a particular person. The nice thing about having this information is that SharePoint will display a mini organisation structure when you are looking at a person's profile page. It shows the people that report directly to the person and the chain of command from the top down to this person. Each name in the org chart is a hyperlink to that person's profile page. It’s a nice way to browse through the company hierarchy. However, it does imply a simple structure, where each person has a single manager.


I would recommend making use of this Manager property if you can. You might decide to get your Active Directory information up to date, or you could configure this property so that staff can update their own Manager. Another alternative is to grant HR staff permissions (and training) to perform these updates to anybody's profile via the Shared Service Provider web site.


Once you get your User Profiles configured properly, you can start exposing new functionality to staff. One of the obvious features is a staff phone directory. There is even an out-of-the-box component called Employee Search. This will search all of the User Profile details, including name, department, job title and any other information that has been included. Here is the really neat thing - your results will be sorted by social distance! That means that if you search for a designer, you will see designers in your team before designers in a completely separate team. How does it do that? Well, primarily it is based on the "Managed By" relationship.


If two people report to the same manager, then the social distance is lower than people that report to different managers. SharePoint also allows you to tag other people as a colleague. That information is also factored into the people search.


But wait, there's more! SharePoint looks through all the results in your search to find common attributes. It then presents you a list of these attributes so that you can filter your search results further. Say for example you used the term "Manager" as your search criteria. In the 50 results that you get back there are managers from different departments and cities. SharePoint will show each of the different departments and cities that appear in the results so that you can just look at a list of managers in Sales, for example.


You can also take advantage of the People Search functionality to dynamically create a Department Directory page. This takes a little bit of know-how, but basically you build a search query that looks for everyone with a specific department name. You then wrap this query up in a component (called the Data View web part) that displays the results on the page. Voila - as Active Directory is updated with new staff, the "Who's Who" page for the department is automatically updated, leaving you more time to discover other SharePoint features.


Lets have a look at SharePoint Audiences. This is a way of targeting information to a specific group of people. This information might be a component on the home page, or references to particular news items. You define an Audience by specifying the criteria for membership of the Audience. For example, we could create an Audience for anyone that has a Country of New Zealand in their User Profile. Then you can put a component on the home page that displays Company News relevant to their region. This allows you to make the user experience more relevant to each person based on their User Profile. Staff can even opt-in or out of particular Audiences based on changes they are allowed to make to their User Profile. Interested in the Book Club announcements? Just add it to your profile's list of interests. While this ability to tailor the user interface does sound great, you do have to be careful how much you use this feature. It can become tricky trying to figure out what each person will see on a page that uses Audience Targeting heavily. You'll also have to deal with the "How come Bob sees that on his page and I don't" questions.


Microsoft’s Office Communications Server lets an organisation to have it's own Instant Messaging functionality, similar to the consumer products like Yahoo and Windows Live. The SharePoint user interface is already wired up to take advantage of this technology. It can display your availability status to others using "the orb". This is an icon that appears beside someone's name, such as in the Modified By column of a document list. The colour indicates the person's availability - green for available, yellow for away and red for offline. Clicking on the orb displays a list of actions that you can take with this person. You might want to send them an instant message, call them via VOIP or just find out when the next free time is in their Outlook calendar. Providing these capabilities on your intranet will allow your staff to combine the explicit knowledge within documents and the implicit knowledge in the people that author them.


If you don't have Office Communications Server right now, you can still try out this user presence functionality with Windows Live Messenger. In SharePoint 2007 you need to fill out your User Profile SIP Address property with the e-mail address that you use for Windows Live Messenger. Now sign-in to your Windows Messenger client. You should now find that the SharePoint user interface displays your status wherever it displays your username. If you change your status to busy, the change is reflected in SharePoint practically immediately. For anyone else to see your availability, you must be already on their instant messenger contact list.


Companies often say that people are their number one asset. By taking advantage of the SharePoint User Profiles, companies can put this asset to better use.


Ivan is an experienced solutions architect and founder of consultancy SharePoint Gurus. Originally from Ireland, he has been in Australia since 1999 and in 2008 was recognised by Microsoft as a Most Valued Professional (MVP) for a third year running.