BCS stands for Business Connectivity Services. This is nothing but an application service of Microsoft SharePoint 2010. Previously in MOSS 2007 it was popularly know as Business Data Catalog.
Through BDC we can only read external data. But through BCS allows accessing external data by using a CRUDQ (Create, Read, Update, Delete and Query) approach. Here external data source can be anything like Line of Business applications (LOB), web services, databases etc.
The service is based on a core engine, named Business Data Connectivity (BDC) that uses a BDC Server Runtime to connect with various data providers.
Data Providers supported are:
This can be any database based on Microsoft SQL Server, Oracle, OLE DB data providers, or ODBC data providers.
Any SOAP web service or any Windows Communication Foundation (WCF) service.
. NET Assemblies You can define a custom Windows .NET assembly that will wrap any back-end data source.
Custom Connectors You can use or build custom connectors for reading and writing data from external data sources.
Internally BDC Server Runtime will store configurations and shapes of data sources in a dedicated repository, which is called BDC Metadata Store and corresponds to a dedicated database file.
Every item that you read or write from an external data source is assigned an External Content Type (ECT) and can be consumed through an External Lists.
Also Microsoft SharePoint provides some out of box web parts for rendering, filtering, and searching data that are available through BCS.
User can also work offline with BCS from different client applications like Microsoft Office 2010, Microsoft Outlook 2010 etc. The offline data will be saved in a local storage of the client PC, within the current user profile folder. For security reasons, the data is also encrypted. If the user changes any of the items while offline, when she goes back on-line, the BDC Client Runtime will be able to synchronize the client-side data cache with the serverside online data.