This presentation contains information about the different social features in SharePoint 2010. From the value they provide, to how they can be extended from a development perspective.
15. SharePoint 2010 Wiki Capabilities
SharePoint Server: Enterprise Wiki Site Template – built on
SharePoint Publishing infrastructure
Page Templates
(Content Types & Page
Layouts)
Ratings
(Web Analytics)
Scalable
(Output Caching)
Customizable
(Master Pages & CSS)
Categories
(Managed Metadata)
Social Tags & Notes
(Social Store)
16. Wiki Architecture
• Wiki’s are publishing sites!
• Can be branded using Master pages and CSS
• Can use content types and page layouts
• Scalable: Uses publishing feature output cache
• Wiki’s use managed metadata
• Site provisioning causes group creation
• Metadata column automatically added
17. Scale?
• Enterprise Wiki pages (like all pages in Publishing)
support output caching
• Feature leveraged from publishing infrastructure
18. Development?
• Add new wiki page types
• Build on the wiki page content type
• Example: Lesson Learned -> Functional Area -> Taxonomy Field
Control on Page etc.
• Add page layouts
• Change the default page layout
• Enterprise Wiki fully extensible through SPD
• You don’t have to use Visual Studio
19. Blogs…
• Ever tried searching for SharePoint 2010 Blog
features, changes or anything else?
• Hard to find new information unless you actually test it…
• The gist of it:
• Blog posts auto listed in activity feed.
• Consistent and improved rich text editor.
• Live preview and ability to launch blog program from
ribbon.
• Team blogs as well as individual blogs.
• Personal blog can be linked to mysite.
• Improved navigation OOTB for blog sites.
• “About this blog” content area.
• No HTML or silverlight/media
22. SharePoint Foundation vs
SharePoint Server
• You need SharePoint Server for almost
everything discussed in this presentation
today.
• You do not need Enterprise Client Access
license for almost everything discussed in
this presentation today.
24. Activity Feed
• Extensible Enterprise Activity Feed
• It has a Web part
• It uses a Atom 2.0 feed
• Two types
• Consolidated – Activities from everything I track
http://<mysitehost>/_layouts/activityfeed.aspx?consolidated=true
• Published – My activities
http://<mysitehost>/_layouts/activityfeed.aspx?publisher=<accountname>
25. Activity Feed Architecture
User Profile DB:
Activity Feed
User Profile DB:
Change Log
Social DB
Gatherer
(Timer Job)
Injection
OM
Multi-cast
Uni-cast
Your
Gatherers
WebPart,
Object Model
& Atom
Consolidated
or
Published
Example:
CRM Gatherer
26. Activity Feed Extensibility
• Activity Application
• “CRM”
• Activity Type
• “New Meeting”
• Activity Template
• “<person> has scheduled a meeting with
<customer> on <details>”
• Activity Event
• “Richard has scheduled a meeting with TSPUG
on Wednesday, March 17th
, 2010”
Expect a lot of ‘connectors’ from vendors {imo}.
27. Feed Readers
• Easy to consume Atom2.0 feed!
• Request #s are generally very large!
• MS Goal – 2000 Requests Per Second
• At SPC09 – 500-700 with activity, 2100 without
activity
• {Aim is for 600,000,000 rows of data to be
supported… another way of looking at this…
100,000 users worth of stuff over 10 years if
they do 3000 ‘entries’ per year.}
28. Profile Pictures
• Architecture
• Central picture library
• http://<mysitehost>/UserPhotos/
• Resized three ways
• 32x32 (for use in SharePoint)
• 48x48 (for AD and client apps)
• 96x96 (for Profile page)
• Picture picker
• Customizable and replaceable
• To support your policy and picture store
29. Profile Pictures
• Upgrade from O12
• Update-SPProfilePhotoStore
• Sync up to AD
• Bootstrap the pictures if already in AD
• Write back to AD, if configured
• Outlook and OCS use Pictures in AD
• OAB size
• Work with your AD/IdM counterparts
30. Top Issues for My Site
Deployment
• Picture Usage – Consent and Corporate
Policies
• Activity feed
• Who follows me? (custom)
• Two-way consent (custom)
32. Social Feedback
• Feedback = Social Tags, Notes and Ratings
• Helps categorize, annotate, promote and help
retrieval of relevant links
• Applies to any URL, inside or outside of
SharePoint with bookmarklet
• Independent of write-permissions (go readers!)
• Primary mechanism for promoting documents and
web pages to the newsfeed
• At the very basic level it has 3 parts to it
• Person, URI, Feedback
• SECURITY TRIMMING STILL IN EFFECT
33. Social Feedback
• Tags:
• Social Bookmarks (Such as I Like It)
• Basically just Keywords tied to data…
• Tag Cloud
• Depicts the most popular tags.
• Tag Profiles:
• Tag Profiles show sites, docs, items, people that
have been tagged with a term.
• Tag Profiles also show a list of community
members and any discussions or postings that
appear on the communities note board.
34. Tags, Notes and Ratings
Tags Notes Ratings
Description Keyword bookmarking Short comments (<3000
characters)
5-Star Ratings
Web part/control No Yes Yes
Discover content by
colleague or keyword
Both Colleagues Colleagues
Web pages, List Items,
Documents
Yes Yes Yes
Doc Library/List Sort and
Filter
Yes (Doc authors only,
requires enterprise keywords
field)
No Yes
Indexed by Search Yes No Yes
Bookmark-let for
external or non-
SharePoint pages
Yes Yes No
Enterprise taxonomy
management
Yes No No
In Office 2010 Client Yes (Doc authors only,
requires enterprise keywords
field)
Yes No?
In Office Web Apps Yes Yes No
36. Planning for Scale
• Can be very large datasets
• Enterprise metadata generates tags -> Internet Scale
• Estimating the amount is not trivial
• Microsoft uses a model {How many items are tagged? How often? etc}
• Make estimate/assumptions
• Track usage and reapply
• Need to scale UP
• Microsoft is testing up to 600M rows at RTM
• Co-locate managed metadata, profile and search
when possible
37. Permission Controlled from
Central Admin
• You can specify which users can use social
features.
• You can specify which users can have mysites.
• This allows you to roll it out slowly and to
targeted groups who receive training/support.
38. Planning for Privacy
• Social tagging will be culturally disruptive
• Need to plan and decide
• Who can social tag/bookmark?
• Define an acceptable use policy
• What happens when the employee leaves?
• Security trimming of tags ON or OFF
• Pluggable architecture allows definition of rules and back ends
• Define how to handle non-SharePoint and external sites
• Only Indexed sites can be trimmed out-of-the-box
• Activity feed repercussions
39. Remember you can Manage Tags
• In Central Admin you can search and manage
all tags of a user, or those that specific words.
• This means you can create and actively
perform governance and control/resolutions.
40. Planning for Adoption
• Best Practices
• Start with a diverse employee advisory committee prior to
deployment
• Seed the social network and Tag corpus
• Connect with HR, Legal, and Executive sponsors to ensure a
smooth deployment
• Agree and Develop the workflow for handling concerns and
escalations
41. Property Tags and Knowledge Mining
• Where are the tags?
• Outlook 2010 {Sent Items}
• Sharepoint Server 2010
• Control and Consent
1. Auto find and publish to MySite to use {Least Conservative}
2. Don’t Analyze Email {Most Conservative}
Office Resource Kit {http://blogs.technet.com/office_resource_kit/}
1. Analyze and upload (user consent at client)
Outlook ->Options ->Advanced
1. Consent on suggestions (user consent at server)
43. Planning for Privacy
• User education about company policy
• How did “it” know?
• Email notifications {Shared Understanding}
• “Suggestions” only visible to owner
• Only indexing “Everyone” Profile Properties
46. Organizational Browser
• A simple way of ‘searching’ we can’t forget.
• Key Point: Uses Manager field from AD.
47. Better User Profiles = Better Search
• Encourage users to have photos and update
profile information
• Turn on ‘knowledge mining’ and encourage
users to publish suggested keywords
• Setup connection to Managed Metadata
Service Application
• Add custom profile properties
49. Leveraging the Managed Metadata
Service for better People Search
• Out of box:
• Responsibilities, Interest, Skills,
Schools, are all taxonomy
properties
• Automatic refinement on relevant
pivots
• Extensibility Opportunity
• Adding a new taxonomy property to
the profile store
50. My Favorite Social Search Slide?
Phonetic and nickname
matching
Phonetic and nickname
matching
Improved result
layout and hit-
highlighting
Improved result
layout and hit-
highlighting
Recently authored
content
Recently authored
content
Refine by query
type, and many
other pivots
Refine by query
type, and many
other pivots
Sort by relevance,
name or social
distance
Sort by relevance,
name or social
distance
Vanity
search
Vanity
search
51. Search click through behavior improves relevance ranking
Query suggestions mined from search logs help users execute
better queries
Social definitions expose acronyms
Social tagging improves search
Go Beyond the Search Box
Social Behavior Drives Search Quality
59. User Profile Store: Person Centric
UX
My Site
Profile
Newsfeed
Profile
Synchronization
Organizational
Role and Policies
Web Service
Profile Store
Social Network
UX
My Site
Profile
Newsfeed
Profile
Synchronization
Organizational
Role and Policies
Web Service
Profile Store
Social Network
UX
My Site
Profile
Newsfeed
Profile
Synchronization
Organizational
Role and Policies
Web Service
Profile Store
Social Network
UX
My Site
Profile
Newsfeed
Profile
Synchronization
Organizational
Role and Policies
Web Service
Profile Store
Social Network
60.
61. Sub Types basically allow us to create
seperate ‘user’ types, each with their own
properties.
(As well as all the above properties.)
Examples:
•Employee
•Intern
•Consultant {Example field: End of Term}
•Customer
•Partner
62. Organizations are another way of organizing
user profiles. It can be used in a variety of
powerful ways…
It is not working quite right in the Beta… and
Technet has no (easy to find) information on
it…
http://
technet.microsoft.com/en-us/library/ee662520%28office.14%29.a
Not to worry though…
63. Organizations can represent…
•Divisions
•Departments (or Functional Areas)
•Legal Entities (if it’s a multi company group)
Organizations use a parent relationship to
build a hierarchy. This is important because
aside from this, all you have is ‘Manager’ in
AD to determine org hierarchy.
65. The down side…
•There is no UI or End User Functionality tied
to this… yet.
The up side…
•Development Opportunity!
{I would expect significant impact on this by the time of RTM.
Not sure how much will be usable and Beta isn’t stable when
it comes to this functionality from what I can find.}
66. Remember me? Again?
Social
Feedback
Social
Feedback ProfilesProfiles
Profile Service
Synchronization
Instance
Profile Service
Synchronization
Instance
Profile Service
Instance
Profile Service
Instance
SyncSync
New in 14New in 14
WFE talks to
the service and
SQL, maintains
Front-end
cache
Mid-tier cache,
optimized for most-
used profiles, 256
Mb default (good
for 500k users on
average)
67.
68. Profile Store Architecture
User Profile DB
•Profile and Activity Feed
Social Data DB
•Tags, Keywords, Comments, Bookmark, Ratings
•Mainly stores GUID (to the taxonomy term) or the note or rating,
URI, Profile ID, Timestamp, URI disambiguation info
•Term values for use on the Newsfeed and Tags & Notes Page
Sync DB
•Staging sync data for AD, LDAP, BCS
69. What’s in 2010 for User Profiles?
• New: User Profile Synchronization service
• Major changes: Connection creation
• Major changes: Connection Filters
• Major changes: Property Mapping
73. • User Profile Synchronization is a service, like any other and
needs to be explicitly started.
• Write down the Connection Plan (Requirement for Upgrade)
• Connections, filters, property mappings (import/export, pictures)
• 2007 connection, filter, property mappings will not migrate
• 2010 has strongly-typed property mapping (e.g. no string to int cast!)
• Fewer connections the better, recommend single connection for a
forest - Now possible, where it really wasn’t before
• Directory Permissions (New Requirement for 2010)
• Need “directory get changes” (dir-sync) rights for the AD credentials
to read the changelog and perform incremental sync
(have bonus material on this later)
• Need write permissions for export to Directory (if you want that)
74. Profile Synchronization Tips
• Get started with the Users-only option for the first full
sync, run incremental with users and groups
• After first full sync, run incremental not full
• LDAP and BCS only synch users only (no groups)
• BCS
• No export, no new records (rows) can be created from synch
• Check your BCS models using the new external lists
(Old BDC Models may not be functioning correctly –
Don’t use Synch to test this, use external lists instead.)
75. • Disk Configuration, RAID array with multiple
spindles - OS, Database & DB log files on
separate volumes
• 1 Gig network between services and SQL box
• Enable named piper if services running on same
box as SQL
• Mark CPUs for I/O affinity
• Boost SQL Priority
76. Scale
• Database Scale
• 2 million user profiles with social features
• 600 million tags/notes
• del.icio.us active users create 4.5 tags and
1.8 comments per month
• 2 million users: 10% Active users: 200,000
• In 2 years, total number of tags and notes:
200,000 x 2 x 12 x (4.5 + 1.8) = 30.24 million
78. Performance
• Latency Targets
• Over LAN: 2 sec for first time, 1 sec for later visits
• Over WAN: 5 sec for first time, 2.5 sec for later visits
• Throughput Targets
• 2007 My Site deployment in Microsoft (~100,000
users, 3-1 farm): Avg RPS = 143, Max (peak) RPS =
350
• Avg RPS for a typical mix on healthy 4-1-1 My Sites
farm = 350-400
80. • Don’t federate User Profile service globally, replicate
them instead.
• Federate the taxonomy service
• Run local instances of user profile synchronization for
AD/LDAP forests
• Use Audiences for redirecting users to the right profile
and my site hosts
(since you have multiple if replicating)
• Use the Audiences for replication scope
82. Other Stuff…
• Manage User Permissions in User Profile
Service Application’s Central Admin -> Demo
• Enable Activity Feed Job and Activity Feed
Cleanup Job (if no data in newsfeed)
• Migrating SharePoint 2007 My Links
• From Connect to Office button, each user can
copy My Links into social tags
83. More Stuff…
• Tags and Notes are Security Trimmed and relies
on search. If inconsistent ensure search has
crawled.
• My Network page? Only the my site host owner
can really modify.
• update-spprofilephotostore can fix lots of
wonky images in people’s profiles.
• Colleagues, DL, and SP Site Membership is
indexed
84. Development NameSpaces
to Check Out
• What’s New: User Profiles and Social Data
• Microsoft.Office.Server.ActivityFeed
• Microsoft.Office.Server.SocialData
• Microsoft.Office.Server.UserProfiles
• Don’t forget Activity Feed as an example uses RSS!
85. Development WebServices
to Check Out
• What’s New: Web Services You Can Use
• UserProfileService
• UserProfileChangeService
• SocialDataService
• PublishLinksService
• Organization Profiles… aren’t working in Beta?
• Not that much documentation yet. Soon!
86. Presentation Sources
Quite a few people!
Jessica Alspaugh (Search)
Venky Veeraraghavan (Activities, Feeds, Pictures, etc)
Alina Fu (Conversation/Insight)
Gail Giacobbe and Ted Pattison (Wiki)
Tanuj Bansal (User Profile Service/Data)
And many more…
87. Thank You
Let’s talk, and/or tweet!
Twitter: @rharbridge
Blog: sharepointkb.wordpress.com
LinkedIn: www.linkedin.com/in/rharbridge
Send me your emails, and let me know your feedback!
Email me at: harbrich@hotmail.com
Hinweis der Redaktion
How many times have you found a useful link somewhere on the internet, but had no way to usefull record that and get feedback from your colleagues?
Well, SharePoint 2010 social feedback can help with this, you can now &quot;tag&quot; any source on the internet (or intranet) which has a URL. This is stored in your &quot;tags&quot; section on your My Site, and also appears in your &quot;Activity Feed&quot; (which is one of the new areas in the SharePoint 2010 My Site).
Other users can also post &quot;notes&quot; relating to your tag, which effectively creates a discussion board around the &quot;tagging&quot; activity, allowing conversations around something that has been tagged.
Now, one of the key points is Security Trimming. Lets take this example: what happens if you Tag a document that someone else doesn&apos;t have access to?
The good news is that social tagging uses the Search Index to provide security trimming on content that is stored in SharePoint.
This provides the capability for senior managers to tag confidential documents (and hold conversations about that using notes) but those tags (and notes) are not visible to anyone who doesn&apos;t have read-access to the document!
On top of this is included a Ratings feature, where you can rate content within SharePoint lists (finally, the death of third party &quot;rate my content&quot; web parts).
This means that SharePoint 2010 now has similar social feedback functionality as other products like Digg or Delicious, in that you can tag and rate content, and other people can interact with that &quot;tag&quot; creating a discussion.
Architecture
All of the Social Feedback information in SharePoint 2010 is stored in a separate &quot;Social Database&quot;. This sits alongside the Profile Database.
There are then &quot;Gatherers&quot; (Timer Jobs) which will collect all of the changes to both the Social Database and the Profile Database and this is stored in another database for Activity Feeds (the Activity Feed Database) with foreign key pointers back to the Profile Database (so you know who&apos;s activity it is).
The performance is impressive, aiming for 2000 requests per second, and in terms of storage they are looking to support over 600,000,000 rows of data! They claim that this is sufficient for activity (including social feedback) for 400,000 users over 5 years!
Extensibility
You can also hook into this process yourself. You can build your own &quot;Gatherer&quot; jobs to collect information from any data source that you like.
A good example is a CRM database, so that you can show activity in CRM in the My Site Activity Feed, showing when people schedule meetings or achieve sales activites.
How many times have you found a useful link somewhere on the internet, but had no way to usefull record that and get feedback from your colleagues?
Well, SharePoint 2010 social feedback can help with this, you can now &quot;tag&quot; any source on the internet (or intranet) which has a URL. This is stored in your &quot;tags&quot; section on your My Site, and also appears in your &quot;Activity Feed&quot; (which is one of the new areas in the SharePoint 2010 My Site).
Other users can also post &quot;notes&quot; relating to your tag, which effectively creates a discussion board around the &quot;tagging&quot; activity, allowing conversations around something that has been tagged.
Now, one of the key points is Security Trimming. Lets take this example: what happens if you Tag a document that someone else doesn&apos;t have access to?
The good news is that social tagging uses the Search Index to provide security trimming on content that is stored in SharePoint.
This provides the capability for senior managers to tag confidential documents (and hold conversations about that using notes) but those tags (and notes) are not visible to anyone who doesn&apos;t have read-access to the document!
On top of this is included a Ratings feature, where you can rate content within SharePoint lists (finally, the death of third party &quot;rate my content&quot; web parts).
This means that SharePoint 2010 now has similar social feedback functionality as other products like Digg or Delicious, in that you can tag and rate content, and other people can interact with that &quot;tag&quot; creating a discussion.
Architecture
All of the Social Feedback information in SharePoint 2010 is stored in a separate &quot;Social Database&quot;. This sits alongside the Profile Database.
There are then &quot;Gatherers&quot; (Timer Jobs) which will collect all of the changes to both the Social Database and the Profile Database and this is stored in another database for Activity Feeds (the Activity Feed Database) with foreign key pointers back to the Profile Database (so you know who&apos;s activity it is).
The performance is impressive, aiming for 2000 requests per second, and in terms of storage they are looking to support over 600,000,000 rows of data! They claim that this is sufficient for activity (including social feedback) for 400,000 users over 5 years!
Extensibility
You can also hook into this process yourself. You can build your own &quot;Gatherer&quot; jobs to collect information from any data source that you like.
A good example is a CRM database, so that you can show activity in CRM in the My Site Activity Feed, showing when people schedule meetings or achieve sales activites.