I described what the term “XRM” means in my last blog post. In this post we will see why should anyone use MS Dynamics XRM as a platform for developing their business application.
Extending Dynamics CRM functionalities and using it as XRM the biggest benefit that the Microsoft Dynamics CRM platform comes with a number of in-the-box entities and applications that are immediately usable. For example, Microsoft Dynamics CRM includes helpdesk (or case management), service scheduling, activity tracking, e-commerce, marketing campaigns, and sales-force-automation. These applications may or may not be a part of your XRM application design. Even if you don’t use these applications or Microsoft Dynamics CRM entities, there are a number of other features that the Microsoft Dynamics CRM can deliver for your custom XRM application.
Developing applications in Microsoft Dynamics xRM stands apart because it requires very little programming, enabling new applications to be developed fast and be provided at low cost. This is facilitated through the consistent use of standard tools and technologies that are already in use in most companies: Microsoft Office, products from the Microsoft server family, the .NET framework and many others.
Microsoft Dynamics CRM includes the following features for any XRM application:
- Security Model. Microsoft Dynamics CRM has a strong security model backed into the platform. This includes a concept of ownership and sharing of records (record-level security), roles, business units, and a permission model that includes the concept of scope (that is, editing records owned by me, within my business unit, or throughout the entire organization).
- Processes. Microsoft Dynamics CRM has a process flow model including an end-user interface that allows business users to manage workflows on any entity in Microsoft Dynamics CRM. This workflow model includes conditions, branching, and custom actions, including sending e-mails or creating additional Microsoft Dynamics CRM records. These workflows can be implemented by individual users to enable them to automate some of their own personal workflows or can be set to run across the entire organization to implement particular business logic or behaviors. The workflow engine can also be extended by developers, exposing custom workflow actions in the workflow designer.
- Reporting. Microsoft Dynamics CRM uses both Microsoft Office Excel and Reporting Services for reporting. It includes a reporting wizard that walks the user through creating useful reports on data stored in Microsoft Dynamics CRM. These reports can be relatively static, or even dynamic with drill-down capabilities. These reports are then available to be shared with other users in Microsoft Dynamics CRM.
- User Interface. When you customize Microsoft Dynamics CRM with your own custom entities for your XRM application, the Microsoft Dynamics CRM system will automatically generate a GUI for your users to interact with the data. Microsoft Dynamics CRM includes a primary console interface that can be customized for your XRM application. The user interfaces include lists with customizable views, find and advanced find, editors for all entities, lookup dialogs, multi-tabbed user interfaces, and more. Microsoft Dynamics CRM delivers these user interfaces with no programming required. User interfaces for related records are automatically generated simply by adding relationships between different entities. The user interfaces include all standard mechanisms for manipulating the data including full create/edit/delete operations, ownership assignment, and running of workflows. The user interfaces even allow for batch editing of records.
- MS Office Integration. Microsoft Dynamics CRM has a strong integration story for Microsoft Office. It includes an online and offline client that can be installed on a workstation. This brings the Microsoft Dynamics CRM user interface into Microsoft Office Outlook where users can interact with the Microsoft Dynamics CRM system directly within Outlook. The offline client allows for users to disconnect with the office network and still interact with Microsoft Dynamics CRM data while on the road, synching back up with Microsoft Dynamics CRM when they return to the office. The Microsoft Dynamics CRM client also enables data to be pulled directly into Microsoft Office Word and Microsoft Office Excel using active data binding. All data in Microsoft Dynamics CRM can easily be imported and exported with Excel.
- Data modeling. Microsoft Dynamics CRM allows for the creation of custom entities, which can have attributes, forms and views, and relationships with other entities. In addition to standard relationships, all custom entities can have activities and notes if desired. Activities allow for collaboration using standard Microsoft Dynamics CRM activity records such as tasks, e-mail, phone calls, appointments, and service scheduling. Notes allow for file uploads and other comments to be associated to custom entities.
- Web Services. Microsoft Dynamics CRM includes a number of Web services that can be used to interact with the Microsoft Dynamics CRM platform. These services are SOAP Web services and allow for open extensibility and use across any platform using any language that supports Web standards. It is also possible to use third-party tools such as ADXSTUDIO XRM SDK to implement modern data services such as RESTful services based on ADO.NET Data Services and .NET RIA Services with very little coding. This allows Microsoft Dynamics CRM data to be easily consumed in XRM Web applications using AJAX or Silverlight development.
When you are building an application on Dynamics XRM platform you dont have to start from scratch or worry about laying out the fundamental architecture. The platform is in place for you; with basic knowledge of the platform you can achieve 80% of the target without any programming and the remaining 20% involving some basic codes using the tools and techniques available.
Share your thoughts and experiences on XRM.