What we will be talking about… Business Data Challenges SharePoint’s Important Interoperability What is the BCS?
External Content Types
4. Demonstration 5. Limitations of BCS Bonus!
Business Data Challenges
Business Data in an Enterprise IT High Integration Costs (Custom) High Overhead (Maintenance, Security) Quality Financial Customers Operations Suppliers Quality Financial Customers Operations Suppliers Redundant Data and Processes! Users High Training Costs High Dissatisfaction
Challengeswith Business Data Direct Impact Indirect Impact
The Outcome There are challenges that disparate and disconnected business data systems cause.
What to watch out for… No system, product or application can completely solve business data challenges.
SharePoint’s Important Interoperability
What the heck is Interoperability? (IHN-tuhr-AHP-uhr-uh-BIHL-ih-tee) “Interoperability is the ability of a system.. to work with other systems.. without special effort on the part of the customer.” How?
How do we achieve Interoperability? 1. By adhering to published interface standards. Does SharePoint do this? SPOILER ALERT! 2. By making use of a "broker" of services that can convert one system’s interface into another system’s interface "on the fly". What about this one?
SharePoint Interoperability UI Platform Identity Platform Search Platform Data Access Platform Storage External Data
Is it a UI Platform? UI Platform Identity Platform Search Platform Data Access Platform Storage External Data
Why would we use SharePoint as a User Interface Platform?
Consistent User Experience Across Browsers Well.. Almost. Improved in SP1!
1. By adhering to published interface standards. It’s a UI Platform HTML Standards UI Platform Identity Platform Search Platform Data Access Platform Storage External Data
A UI Platform Bonus? Bonus! HTML Standards UI Platform Identity Platform Works in Office Search Platform Data Access Platform Storage External Data
Leverage Office and SharePoint Interface Familiarity
Is it an Identity Platform? HTML Standards UI Platform Identity Platform Works in Office Search Platform Data Access Platform Storage External Data
Why would we use SharePoint as an Identity Platform?
Because Claims is Awesome Connect with 3rd Party Authentication Providers Connecting with a Non Windows Integrated Authentication driven web site. Delegation with Back-End Systems Showing data from another server on a SharePoint web page.
1. By adhering to published interface standards. Claims UsesConsistent Standards
Provides the architecture for a clean separation between trust mechanisms, security tokens formats, and the protocols for obtaining tokens.
Provides a method for assessing, requesting and receiving security tokens.
SAML Token 1.1
XML vocabulary used to represent claims in an interoperable way.*
WS-Security… (various aspects)
*Doesn’t actually support SAML Protocol (SAMLP)
It’s an Identity Platform HTML Standards UI Platform Identity Platform Claims Works in Office Search Platform Data Access Platform Storage External Data
Is it aSearch Platform? HTML Standards UI Platform Identity Platform Claims Works in Office Search Platform Data Access Platform Storage External Data
Why would we use SharePoint as a Search Platform?
Query a 3rd Party Search Engine Using SharePoint UI Federate Queries to Multiple Search Systems…
Index Content from a Range of Content Repositories What does all of these? _ _ _ B C S B Indexes Databases, Web Services or Custom Repositories Provides Consistent Access to External Content C Has SharePoint Designer and Visual Studio Plug-ins S
A Search Platform Bonus! Bonus! HTML Standards UI Platform Identity Platform Claims Works in Office Search Platform Open Search Data Access Platform Storage External Data
1. By adhering to published interface standards. Have you heard of OpenSearch?
Standard (Creative Commons) for syndication and aggregation of search results
It is a Search Platform HTML Standards UI Platform Identity Platform Claims Works in Office Search Platform Open Search Data Access Platform Storage External Data
Is it a Data Access Platform? HTML Standards UI Platform Identity Platform Claims Works in Office Search Platform Open Search Data Access Platform Storage External Data
SharePoint Does a Great Job of Accessing SharePoint Content!
What about External Systems and Content? _ _ _ B C S
A Data Access Platform Bonus! Bonus! x 2 HTML Standards UI Platform Identity Platform Claims Works in Office Search Platform Open Search CMIS Data Access Platform REST Storage External Data
Content Management Interoperability Services
CMIS specification provides a Web services interface that:
Is designed to work over existing repositories enabling customers to build and leverage applications against multiple repositories—unlocking content they already have
Decouples Web services and content from the content management repository, enabling customers to manage content independently
Provides common Web services and Web 2.0 interfaces to dramatically simplify application development
Is development platform and language agnostic
Supports composite application development and mash-up by the business or IT analyst
A platform that allows you to build against multiple technologies without knowing anything about how all the API’s work. (If you know CMIS.) Microsoft has been implementing this from both a client and provider perspective. Not available “in the box”. Available via SharePoint Admin Toolkit http://technet.microsoft.com/en-us/library/ff934619.aspx
And then there’s REST Access to SharePoint Lists and Document Libraries…
RESTful interface over HTTP
Uses the ADO.NET Data Services interface conventions
Feature rich: retrieve, update, browse data using just URLs and XML/JSON
Low barrier of entry. If you have an HTTP stack you can use it.
Visual Studio Integration…
Entirely built on top of the open RESTful interface
No client is required
Visual Studio creates proxies, visualizes schemas, provides LINQ support etc.
2. By making use of a "broker" of services that can convert one system’s interface into another system’s interface "on the fly". SharePoint has Interoperability HTML Standards UI Platform Identity Platform Claims Works in Office Search Platform Open Search CMIS Data Access Platform OData REST Some might even say it has storage interoperability or that OData is a standard… Storage External Data But the coolest part of interoperability? RBS BCS
The Outcome SharePoint is a growing Interoperable UI, Identity, Search, and Data Access Platform.
What to watch out for… Remember this? “Interoperability is the ability of a system to work with other systems without special effort on the part of the customer.” without special effort
What is the BCS?
BCS External Data Benefits? External Data
You could look at this diagram… SharePoint Client BCS in Office Client Identity Federation service BCS in SharePoint BCS Meta Data Store BDC Client Data Cache BDC ASCustom Connector DB Connector WCF /WS Connector .NET Assembly Connector Client to Backend Direct Connection External data Persistence Store Data Cubes Custom .NET assembly SAP ORACLE Siebel SQL
Or this simplified one…
External Content Types Describes:
Structure of the external system (Fields, Methods, Connection)
How this data behaves within SharePoint and Office
Added to the BCS Service Through:
Visual Studio 2010
Via an Import into the Business Data Connectivity Service as part of a model
Manage and Re-Use from a Central Location
External Lists The external content type is leveraged in a variety of ways… Such as for Exposing External Data as an External SharePoint List Full CRUD capability Familiar UI and Navigation Sort, Filter, Group Programmatic Access via SPList OM Profile Page for Each Item Form Auto-generated OOB Upsize to InfoPath Can be Taken “Offline”
Offline Lists External Lists also be leveraged as Offline “Lists” They can be Downloaded to a SharePoint Workspace as Lists or Word Document Libraries with External Data Columns Or Connected to Outlook as Contacts, Tasks, Calendars and Posts
Office Applications and Search External Content Types can also be leveraged in… Or Leveraged to allow for External Data Searching or Filtering Many other Office Applications (or Custom Applications) w/ Code
Bonus! Integration Webparts Bonus! Integration Webparts Web Parts External Data List External Data Item External Data Item Builder External Data Related List External Data Connectivity Filter Chart Web Part (New) w/ Code
Didn’t those webparts work with the BDC?
So what’s different? (Besides the Chart Control?) Read/Write Capability Claims Aware Connect via ADO/SQL, WCF/WS, .Net Assembly and Custom Connectors Batch and Bulk Operation Support BDC is still used for search indexing connectors in 2010 they added blob, incremental crawl and item level security. They added symmetrical server and client runtimes. Allowing them to connect from client or server directly to external data. SQL CE database is used to cache external data which allows for “cached mode” behavior on external data basically creating a rich client cache.
How do I actually build it out?
Where things fit. Custom
Custom connectivity for data aggregation, transformation, security, etc.
Use Custom Code to Integrate Data into any Office Application
The Outcome You now know more about the limitations of BCS and will make fewer assumptions.
What to watch out for… Some of the many limitations mentioned make sense. Think carefully before you build a ‘workaround’.
What we talked about… Business Data Challenges SharePoint’s Important Interoperability What is the BCS? External Content Types External Columns External Lists Extensibility and Tooling Limitations of BCS The Challenges Aren’t All Technology Challenges Interface, Identity, Search and Data Access Platform A Set of Powerful Connection Capabilities Structured Types of External Content Leveraging External Content with Internal Content Interact Like SharePoint Lists Extensibility/Tool Range from UI to SPD to VS 2010 Good Enough and Better than Most Options
Thank You – Fill Out Your Eval! Organizers, Sponsors andYoufor Making this Possible.