Welcome to the Minnesota SharePoint User Group August 11th, 2010 Composite Application for Knowledge Management SharePoint 2010 Erik Mau http://www.sharepointmn.com Meeting Meeting# 68 Agenda • • • • • Introductions Business Problem Demo Approach / Architecture Q&A http://www.sharepointmn.com Meeting # 68 User Group Goal / Objectives Develop and support a local community focused on Microsoft SharePoint Technologies • • • • Educate user group members about SharePoint Technologies Transfer knowledge within the community Communicate best practices Introduce new products / solutions http://www.sharepointmn.com Meeting # 68 Introductions – MNSPUG Sponsors Inetium (www.inetium.com) • Technology consulting company • Microsoft Gold Certified Partner • Practice area focused on SharePoint Benchmark Learning (www.benchmarklearning.com) • Microsoft Gold Certified Partner • Training on many technologies Microsoft (www.microsoft.com) http://www.sharepointmn.com Meeting # 68 www.sharepointmn.com • • • • • • Website for user group SharePoint resource documents SharePoint resource links RSS Feeds Meeting Schedule Past User Group Presentations • info@sharepointmn.com www.sharepointmn.com http://www.sharepointmn.com Meeting # 68 Social Networking • Linked In group – The most interactive… includes job postings… – http://www.linkedin.com/groups?gid=1878792 • Facebook group – http://www.facebook.com/home.php?#/group.php?gid=27333305456 • Twitter: @MNSPUG and #MNSPUG http://www.sharepointmn.com Meeting # 68 Upcoming Schedule • Next Meeting • September 8th 9:00 AM to 11:30 AM • Microsoft’s Bloomington Office • Topic: [TBD – BI ?] Check www.sharepointmn.com for updates! • Ongoing Schedule • 2nd Wednesday of every month • 9:00 to 11:30 am • Microsoft’s Bloomington Office http://www.sharepointmn.com Meeting # 68 Local Events SharePoint Saturday – October 2, 2010 *FREE* http://www.sharepointsaturdaymn.com http://www.sharepointsaturday.org/twincities/default.aspx University of Minnesota – East Bank, Twin Cities Campus http://www.sharepointmn.com Meeting # 68 Conferences Best Practices Conference – August 24-27, 2010 http://www.bestpracticesconference.com Washington, D.C. SPTechCon – SharePoint Technology Conference – October 20-22, 2010 http://www.sptechcon.com/ Boston, MA No SharePoint Conference this year… October 3-6, 2011 http://www.mssharepointconference.com http://www.sharepointmn.com Meeting # 68 Announcements • SharePoint 2010 Administration Toolkit V1 – User Profile Replication Engine 2010 – The Security Configuration Manifest – The Content Management Interoperability Services Connector – The Load Testing Kit – http://www.microsoft.com/downloads/details.aspx?FamilyId =718447d8-0814-427a-81c3-c9c3d84c456e&displaylang=en • Developing Applications for SharePoint 2010 – From the Microsoft Patterns & Practices group – Guidance for developing applications with 2010 – http://www.microsoft.com/downloads/details.aspx?FamilyID =64b55569-2168-4545-8b7c-f185b2cf967d http://www.sharepointmn.com Meeting # 68 Knowledge Management Application “Elle” http://www.sharepointmn.com Meeting # 68 The Challenge … Multiple systems in use Over 10 years of project history spanning over 500 customers Solutions span multiple technologies, scenarios, industries and skill sets Lost Opportunity … Connecting • Time Wasted the Dots • Duplicate Efforts Have we done a project like XYZ before? Do we have any examples of a project like XYZ? http://www.sharepointmn.com Who has the following skills? Meeting # 68 The Vision Our goal was to make it easy for our users to intuitively interact with our large history of solutions to search, browse, and discover assets, information, relationships and experts to better tell our stories. Project XYZ Sales Executive: “Have we done any projects like Project XYZ?” http://www.sharepointmn.com Consultant ABC Resource Manager: “Who has a similar tech profile to consultant ABC?” Technology 123 Consultant: “Who has background in technology 123?” Meeting # 68 Data, Data, Data Person Skills / Tech Customer Asset Project Industry Asset Type Project Type http://www.sharepointmn.com Meeting # 68 Skills / Technologies Employee Profiles Projects Billing Industries Customers http://www.sharepointmn.com Meeting # 68 Skills / Technologies Employee Profiles Projects Billing Industries Customers http://www.sharepointmn.com Images Audio Videos Documents Workflow Metadata Meeting # 68 Skills / Technologies Employee Profiles Projects Billing Industries Customers http://www.sharepointmn.com Images Audio Videos Documents Search any word Find Experts Multiple points of entry Workflow Metadata View assets Meeting # 68 Technology Usage InfoPath Data capture form for submission of content into system SharePoint Search / aggregation engine and repository for assets Dynamics CRM Source for account and program information Dynamics GP Source for employee-to-project phase information .NET Development platform for custom development Silverlight User experience for interacting with the content Word Document Assembly Add-in for inserting content into Word documents http://www.sharepointmn.com Meeting # 68 “Elle” – Interactive Knowledge Explorer http://www.sharepointmn.com Meeting # 68 Demo http://www.sharepointmn.com Meeting # 68 Approach / Architecture http://www.sharepointmn.com Meeting # 68 Agenda • Integrating CRM using Business Connectivity Services (BCS) • Asset Collection using InfoPath 2010 • Connecting documents and digital assets using Workflow and Content Types in an Asset Library • Extending the Newsfeed to notify Colleagues • Managing Skills using Managed Metadata • Surfacing Information with Search • Bringing it all together with Silverlight http://www.sharepointmn.com Meeting # 68 Approach / Architecture INTEGRATING CRM USING BCS http://www.sharepointmn.com Meeting # 68 Integrating CRM Data using BCS • What is BCS? – – – – BCS = Business Connectivity Services Enables integration of business data in SharePoint Read and Write See the July MNSPUG Presentation that Raymond gave… http://www.sharepointmn.com Meeting # 68 Integrating CRM Data using BCS • How is it used? – Metadata for Assets – Indexed by Search – Integration with InfoPath http://www.sharepointmn.com Meeting # 68 Integrating CRM Data using BCS • How was it setup? – SharePoint Designer – Visual Studio – BCS Model Deployed as Feature to SharePoint New Feature Receiver in 2010 to support Visual Studio Integration! Microsoft.Office.SharePoint.ClientExtensions.Deployment.ImportModelReceiver http://www.sharepointmn.com Meeting # 68 Approach / Architecture WALKTHROUGH – EXTERNAL CONTENT TYPE IN SPD http://www.sharepointmn.com Meeting # 68 External Content Types in SharePoint Designer http://www.sharepointmn.com Meeting # 68 Define the External Content Type http://www.sharepointmn.com Meeting # 68 Setup the Connection http://www.sharepointmn.com Meeting # 68 Create Operations http://www.sharepointmn.com Meeting # 68 Creating a Read Operation http://www.sharepointmn.com Meeting # 68 Define the Filter Parameters http://www.sharepointmn.com Meeting # 68 Define the Return Parameters (The Result) http://www.sharepointmn.com Meeting # 68 Publish to SharePoint (SPD or Feature) http://www.sharepointmn.com Meeting # 68 Approach / Architecture ASSET COLLECTION USING INFOPATH http://www.sharepointmn.com Meeting # 68 Asset Collection using InfoPath • What is InfoPath? – Electronic form design tool – Thick client forms / web-based forms – Allows submission to databases, web services, lists, or xml http://www.sharepointmn.com Meeting # 68 Asset Collection using InfoPath • How is it used? – Capture project assets – Associate CRM project metadata (External Item Picker) – Submission to SharePoint Library http://www.sharepointmn.com Meeting # 68 Approach / Architecture DEMO – INFOPATH FORM DESIGN http://www.sharepointmn.com Meeting # 68 Approach / Architecture ASSET MANAGEMENT IN SHAREPOINT http://www.sharepointmn.com Meeting # 68 Asset Collection Workflow • How do Assets get to the Asset library? – Visual Studio Workflow – Attached to InfoPath form library – Steps: • • • • • Retrieves Assets from form Creates document set (if needed) Imports assets Sets project metadata *Generates activity for newsfeed http://www.sharepointmn.com Meeting # 68 Asset Libraries • What is an Asset Library? – New library type in 2010 – Supports Audio, Video, and Image content types – Preview capabilities / Silverlight Media Player • How is it used? – Storage for all assets – Custom content types for asset metadata (project, description, sensitivity) http://www.sharepointmn.com Meeting # 68 Document Sets • What is a Document Set? – Specialized folder – Bulk operations – Home page • How is it used? – Project summary page – Container for assets in Asset Library http://www.sharepointmn.com Meeting # 68 Approach / Architecture DEMO – DOCUMENT SETS http://www.sharepointmn.com Meeting # 68 Approach / Architecture CUSTOM “NEW ASSET” ACTIVITY FOR NEWSFEED http://www.sharepointmn.com Meeting # 68 Custom “New Asset” Activity for Newsfeed • What is the Newsfeed? – Aggregation of Colleague-generated activities on My Site – Like Farmville… but not as annoying http://www.sharepointmn.com Meeting # 68 Custom “New Asset” Activity for Newsfeed • How is it used? – Notifications generated when users submit assets – User profile setting (turn on / off) • How was it setup? – Notifications generated during workflow – Custom SP timer job collects notifications and broadcasts – Uses Inetium Activity Generation Framework http://www.sharepointmn.com Meeting # 68 Approach / Architecture MANAGING SKILLS WITH MANAGED METADATA AND USER PROFILES http://www.sharepointmn.com Meeting # 68 Managing Skills with Managed Metadata • What is Managed Metadata? – Service application in 2010 – Storage of Tags: • Term sets / Terms • Enterprise Keywords – Supports both Taxonomy and Folksonomy • How is it used? – Skills Term set – Skills in CRM synchronized with term set – Skills User profile property uses Skills term set http://www.sharepointmn.com Meeting # 68 Term Store Management http://www.sharepointmn.com Meeting # 68 Skills User Profile Property http://www.sharepointmn.com Meeting # 68 Skill Synchronization Timer Job http://www.sharepointmn.com Meeting # 68 Approach / Architecture DEMO – MANAGED METADATA AND USER PROFILE http://www.sharepointmn.com Meeting # 68 Approach / Architecture SURFACING INFORMATION WITH SEARCH http://www.sharepointmn.com Meeting # 68 Surfacing Information with Search • Custom search tab for Assets – Image Lightbox – Rating Display – Rating Refinement http://www.sharepointmn.com Meeting # 68 Approach / Architecture DEMO – CUSTOM SEARCH TAB http://www.sharepointmn.com Meeting # 68 Approach / Architecture INTEGRATING SILVERLIGHT WITH SHAREPOINT http://www.sharepointmn.com Meeting # 68 Integrating Silverlight with SharePoint • Projects – CRM data indexed by SharePoint using BCS content source – Accessed through SharePoint search web service http://www.sharepointmn.com Meeting # 68 Integrating Silverlight with SharePoint • Skills – Skills associated to SharePoint User Profiles – Employee skills accessed through SharePoint search web service – Project skills accessed through CRM relationships http://www.sharepointmn.com Meeting # 68 Integrating Silverlight with SharePoint • People – SharePoint User Profiles – Indexed by SharePoint – Accessed through SharePoint search web service http://www.sharepointmn.com Meeting # 68 Integrating Silverlight with SharePoint • Assets – SharePoint Asset Library – Project Metadata on Assets – Accessed through SharePoint list web service http://www.sharepointmn.com Meeting # 68 Business Connectivity Services (BCS) Doc sets Custom activity feed SQL Queries Term store SP Timer job GP Business Portal InfoPath web form Digital Asset Management (DAM) Workflow User profiles Search (BCS, content, web services) InfoPath web form Business Connectivity Services (BCS) Web Services InfoPath web part Integration Setting metadata Integrated workflow programmatically Custom Entities User Experience Web Services VSTO Search RIA Ribbon http://www.sharepointmn.com Meeting # 68 Q&A http://www.sharepointmn.com Meeting # 68 Thanks for coming! http://www.sharepointmn.com Meeting # 68