The Common Data Service (CDS) has been a much discussed concept since the middle of 2016 when Dynamics 365 was first announced. The way this feature is described sometimes seems like CDS is the unicorn of the Dynamics 365 world – it solves any problem.
Sometimes what gets lost in this story is the basics – CDS is a new, simplified database concept. The advantage of the new CDS approach is a faster setup, deployment, and management of the data model, user interfaces, and integrations.
Environments group features together in CDS including:
- A collection of tables and table relationships – aka creating a database
- Publishing Power Apps aka a user interface
- Integration and mapping tools connected to Dynamics 365
Common Data Model
The CDM is the definition of tables and table relationships. The Microsoft published CDM is geared towards the Dynamics 365 entities and used for integrating multiple D365 products.
In many of the CDS demos Microsoft shows Power Apps with CDS, which sometimes conflates the technology. The database components of CDS don’t require a Power App to be used.
Power Apps are most…powerful when they combine requirements from multiple systems into a single experience. For example, there may be multiple systems that do issue or task management, and each system may require its own fields. A Power App can be created with all the fields required across all systems, then the integration features to push issues into each system will work swimmingly.
CDS entities eventually will be used to pass data back and forth between Dynamics 365 databases. There’s a focus by Microsoft to provide some scenario based integrations for things like Order to Cash scenarios between Dynamics 365 Sales and Operations.
There are a couple of mechanisms for passing data back and forth. Microsoft Flow is most commonly used in demos because it supports many products, but there’s also a more “native” integration feature that will pass data more efficiently for Dynamics 365. The integration features also include data transformation logic.
Templates are used to deploy the CDM, PowerApps, and Flows/Integrations as an Environment.
The Admin Center is a portal for designing, publishing, and maintaining the CDS environment.
This portal also manages the security. They key components of security like table level and record level security are in the toolkit.
There is a lot of interesting technology around the CDS. But right now it seems like the CDS is a solution in search of a problem. There needs to be simple examples of the technology solving specific problems for Dynamics 365 for Operations customers to jump in on this new feature set.
Microsoft will probably hate the comparison 😬, but I think of CDS in the same way as people used to use Access databases. Access databases were simple, limited, specific tools; many times they were disposable as technology evolved. Conceptually CDS may be an evolution of that story. If the business use case is longer term, it may be better to build features and UIs directly in a Dynamics 365 product.