20 July, 2011

Three points to consider when using the SharePoint BCS

The SharePoint Business Connectivity Services (BCS) is an integration feature of SharePoint 2010 which provides read/write access to line-of-business data in external systems. Once an external system has been modelled in the BCS, a SharePoint user or developer can compose solutions that use external data directly without having to possess expert knowledge about the API of the back-end system.

There are many options when it comes to architecting a SharePoint solution that is integrated with an external system. In some scenarios the BCS will be a valuable constituent of a solution, in other cases it may not be a good fit. If you are looking to connect SharePoint with an ERP system or other line-of-business system, there are some important points to consider when deciding whether the BCS should be part of your solution architecture.

Up to 20 operations need to be supported
The BCS provides a back-end neutral framework for integration by requiring the API of the back-end system to be mapped to 20 stereotyped operations. Many APIs of business applications are not very BCS-friendly and it may require substantial effort to distill the APIs into services that can be mapped to the stereotyped BCS operations. This is not a problem when connecting to simple data sources like SQL Server databases, but more complex business applications often have APIs that are very hard to decipher for outsiders (e.g. SAP has a very granular generic API which presents a significant challenge in this regard).

Data is retrieved on-demand
Business data accessed through the BCS is exposed through what is called external lists in SharePoint. These external lists share many of the characteristics of the traditional SharePoint lists. However, one important difference is that the data is not stored in SharePoint. This is often a positive thing because you generally do not want to replicate business data across multiple storages unless you have to. But there are also common scenarios where data caching is required. For example, the administrator of your ERP system might not be too happy if you are frequently hitting the system live to retrieve data that rarely changes.

Workflows cannot be associated with external lists
SharePoint workflow generally works by reacting to items in a list being added or changed. Items in external lists are fetched on-demand and are not stored in SharePoint and therefore workflows cannot be directly associated with external lists. If you consider a use case where you want to trigger a business process every time a new item is added to a table on the back-end then the BCS is not a good option. You can still query data in an external list as part of a workflow running on a document library or an “internal” list, but items in an external list cannot be the primary object of the workflow.

These are all important things to consider when deciding whether the BCS should be part of your solution architecture. There are solutions where the BCS is a natural fit and there are solutions where you will have to come up with an alternative way of bringing the line-of-business data into SharePoint. As always, if you have any experiences with this please share your thoughts below.

11 July, 2011

Webinar on surfacing SAP through SharePoint

At the European SharePoint Conference in Berlin in October, I will be speaking about accelerating business processes with an SAP/SharePoint integrated approach to solution development. In particular, the session will focus on leveraging business user-oriented tools such as InfoPath and the Winshuttle usability suite to automate business processes that involve interaction with SAP.

Leading up to the conference there is a pretty solid schedule of regular webinars, free for all, providing brief introductions into the topics covered at the conference. Wednesday this week, I will be delivering a session on surfacing SAP through SharePoint. It won’t be a deep technical dive but rather an introduction into why SharePoint should be considered in the context of SAP and what the main challenges are. This is the outline:

Surfacing SAP through SharePoint
40% of ERP implementations have user adoption issues resulting in limited ROI from initial investments in ERP. Complex generic interfaces that are not intuitive for casual users of line-of-business systems such as SAP continue to slow down business processes. The popularity and rapid adoption of SharePoint provide a tremendous opportunity for bringing core SAP functionality out to more users while meeting usability expectations.
This session outlines why surfacing SAP through SharePoint is beneficial to the business and provides an overview of the key challenges in implementing SAP/SharePoint integrated solutions.

You can sign up for the webinar here and also check out all the other upcoming webinars. These are 20-30 min sessions on some very relevant topics where you will also have the opportunity to ask questions.