The truth is now out there, as Microsoft Dynamics CRM 2011 beta was released for the public on Thursday, September 9th. As a result, the NDA for the Early Adopter Program is no longer stopping me from sharing some of my thoughts and experiences on the latest and greatest version of CRM. Instead of trying to cover each and every new feature in a bullet list, I’ll focus on the topics which have caught my attention the most.
Some love it, some hate it, but here it is anyway! In an application like CRM where the actions one can perform on a record tend to keep on growing over time as more and more customizations and integrations are applied to the system, the context sensitive ribbon with it’s graphical icons is much more important than in traditional Office apps. While not everyone is happy that CRM 2011 has lost form its tabs after the entity form was changed into one long page with sections, the tabs have infact found a new home on the ribbon. With this UI shift in mind, it’s easy to see why having two alternative levels of tabs was not really an option from usability perspective. In this new fluid ‘n flat world of CRM 2011 the custom tabs on the ribbon will offer a great customization point to insert shortcuts and custom actions that will help the user navigate inside the application.
There are already many nice shortcuts included in the default UI to reduce the number of clicks, which has previously been a common complaint from Dynamics CRM users. One convenient new feature is the Recently Visited button on the CRM main window, which shows a list of previously opened items and lets you pin down the favourite links that are most frequently accessed.
The ease of customization
Usability is a big factor not just for the system end users but also administrators, developers and any type of consultant that needs to spend a significant share of his working day interacting with the application. Back in the previous versions of CRM the number of clicking you were required to do in modifying customizations and various system settings was infuriating at times. I’m very glad to see that the UI enhancements in CRM 2011 have also been extended to the “engine room”.
For starters, there is now a Customize tab on each entity’s ribbon toolbar. What this means is you can proceed from the live CRM record window directly into the customization settings, significantly reducing the barrier of fixing issues noticed on the form while working with the data. In fact, changing the forms and schema is now so fast that setting up a policy for system configuration change management becomes all the more important, not to let things get out of hand with rogue customizations breaking scripts and integrations.
Once on the form designer, you’ll notice the UI also presents a list of available, unused fields on the left. Most importantly, form designing now takes place in a drag & drop environment! Simpy select a new field from the field explorer list and drop it on the intended location on the entity form:
Beautiful! Another cool time saver is the fact that you can now add new attributes while designing the form, just by clicking “New” on the field explorer. Notice also the new header section on each form (yes, there’s a footer as well).
From Workflows to Processes
The term “workflow” does not have the same role as it used to, since from CRM 2011 onwards well be dealing with processes instead. Don’t worry, under the hood everything is still built on the familiar Windows Workflow Foundation (version 4). Now also XAML or “no-code” workflows will be supported through Visual Studio Workflow Designer as the graphical authoring tool, but these will not be editable through the default CRM Process Designer interface.
There are two categories of processes in the 2011 world: workflows (yes, the term is still there) and dialogs. For the end user these will be visible in the UI under the Processes menu, which replaces the previous Workflows menu. I kind of prefer the new naming policy, since the term “workflow” has often seemed to cause a bit of confusion when training the end users to work with the system. Now we can talk with pure business terms like “new customer product delivery process” instead of making everyone think about workflow diagrams and all the complexity involved in automating business data flow inside information systems. Just run the process.
This particular feature was always something that intrigued me ever since I saw the Metro Program slides for CRM “5”. Previously referred to as “UI Scripts”, they are basically a way to manage complex processes within the CRM user interface.
Dialogs are interactive workflows that run synchronously as a result of the user explicitly executing them. The dialog page pops up, presenting predefined prompts and response fields, which can be used for guiding the CRM user to step through a sequence of data entry tasks. Using query conditions the dialog process can be altered on the fly by evaluating data already entered and presenting different dialog pages as the process moves further.
Based on the demo video available on the CRM 2011 Beta site, the default method of triggering a process for a record seemed unintuitive . A common customization item could therefore be to link the process start action behind more obvious and informative Ribbon toolbar buttons, by calling the dialog URL with DialogID and EntityObjectID dynamically inserted. Another obvious need would be to have the process window pop up automatically when a create form is opened for a new record, thus providing a structured way to guide the user through filling the fields while displaying relevant instructions.
Identifying the suitable use cases for this new feature will require playing around with the system, which is why I’m anxiously waiting to get my hands on a Beta environment right now (well, just one of the reasons).
There’s a great FAQ already posted on the PowerObjects blog about the new auditing feature in CRM 2011. Instead of describing it any further here, I urge you to check out the link.
Auditing combined with the new field level security functionality are definitely the type of core features that any credible CRM platform should not be lacking. From what I’ve seen, their implementation in CRM 2011 looks to address the common use cases quite well, so this release should move a few very imporant feature bullets in the “Can your CRM do this?” comparison table from the previous column of “well, there’s a workaround…” to a firm “yes, it can“.
Even though the business unit hierarchy allows for a robust model of managing CRM user rights, the reality is that strict hierarchies do not represent the modern organizations too well. Knowledge work is all about collaboration and this type of work commonly takes place across organizational silos, not inside them. Therefore it is crucial that the CRM platform is able to facilitate rights management in scenarios where the are multiple dimentions that affect the visibility of information, not just a top-down hierarchy.
We’ve had the concept of teams in Dynamics CRM already since the time when the whole “Microsoft Dynamics” brand didn’t even exist yet. However, in CRM 2011 there are enhancements that can possibly revitalize the feature and give it a new life. First of all, teams can now be assigned ownership of records. Similarly, teams can be assigned security roles to allow privileges to records. As all the access right checks are now additive, this model allows a user to have rights to data outside the default privileges of his or her business unit.
Role based forms
Going deeper in customizing the CRM experience per each users, not just CRM organization, the new role based forms will give a whole new dimension of personalization options. In the previous CRM versions, didn’t you just hate it when the Forms and Views list in the entity customization menu always just displayed the single default application form alongside all the views, giving an indication that “yes, in theory we could allow the creation of new forms” yet never delivering on that promise? Well, now you can create them as much as you like, so the victory is ours!
If all users will no longer see the same entity form, then we’ll of course have more things to manage in the system, by controlling who is presented which form. In CRM 2011 each entity must have a single form defined as the fallback form. Any additional forms you create will need to have the intended target audience specified through security roles. As it is of course possible that a single user will have multiple secruity roles that would allow displaying a number of different forms, the particular form to be displayed by the application is determined through form order variables. Starting from the top, the system will work through the list of available forms in order of priority, and if no matches are found in the roles, the fallback form will be presented.
Remembering that forms can now also contain web resources, such as HTML, images or SilverLight components, the UI can truly be personalized for different user groups in a managed way. You’ll just need to keep in mind who sees what form, when working with your System Admin role that may present the application quite differently than how the end users see it.
This one was a total surprise to me, as I don’t recall seeing references to the feature in any pre-release materials. Or maybe I had simply ignored it while focusing on more exciting areas of the application. Anyway, we will now have goal management in CRM 2011. Sales quotas were never such a popular feature in 3.0 or 4.0, but the new goals feature appears to offer a lot more functionality for defining complex real-life goal scenarios into CRM, so perhaps this will re-ignite the interest towards the concept.
Charts and Dashboards
Data visualization is now a native part of CRM, not something you necessarily need to use SQL Server Reporting Services for anymore. Any grid view can be accompanied by a chart that follows the view criteria definitions. Out-of-the-box charts include column, bar, line, pie and funnel. More can be added through custom development with Microsoft Chart Controls for Microsoft .NET Framework 3.5.
You’re not limited to only showing the charts in grids, as the new Dashboard functionality allows you to combine a multitude of charts on a single page with various layout options. Also keep in mind that a dashboard does not need to consist of charts, as also grids, iFrames and the new Web Resources are supported elements. Dashboards can therefore used also for creating console views of detail data and interfaces to other web based services. Whether there is support for passing parameters from one component to another withing the dashboards is something to be verified.
This will surely become a favourite topic for many of the upcoming blog posts regarding customizing and developing for CRM 2011. Solutions, in short, are packages of schema, UI, code, template and settings definitions that are used for delivering and managing a particular business functionality into a Dynamics CRM organization. Think of them as apps that you can install on your CRM. Even if you are just performing your everyday customization tweaks like updating lists of attribute values, you are working with a solution. The choice is yours on whether these changes are performed on the Default Solution that is available in all CRM instances, or if you want to package them into a custom solution instead and manage them as a separate layer above the default solution.
You have Unmanaged Solutions and Managed Solutions. By default every solution you create is Unmanaged, but upon exporting it you have the option to lock it down, i.e. turn it into Managed. These can be added to or removed from a CRM organization and the platform will take care of updating the components like entities and workflows respectively. However, the order in which the solutions are added does make a difference in cases where customizations are addressing the same attribute, for example. Also, direct modifications to the Default Solution will remain supported like in 4.0.
Despite of the clear benefits in having solution layers available in Dynamics CRM, I’ve got a feeling that there’s going to be a learning curve in adopting them and formulating the best practices for solution management process. In terms of the upcoming Dynamics Marketplace launch, the solutions are a must, so I’m sure everyone will be encourage to work towards seamless installation and co-existence of ISV solution packages.
All in all, Microsoft Dynamics CRM 2011 will contain a very impressive amount of new features and enhancements of the existing ones. I’ve only touched on some of them and feel like I’m already running out of breath when describing them. Combine all this with the big shift that is coming through CRM Online: availability of the on-premises features (well, most of them) as a cloud hosted version sold in 40 different markets. Looks to me like we’ll have some mighty interesting times ahead in the world of CRM during the next few months.
I’ll end this post with a few essential CRM 2011 links:
- CRM 2011 Beta landing page (videos)
- Download the CRM 2011 beta bits for installation
- CRM 2011 Beta forum
Excellent blog. CRM 2011 is a nice blend of small and large changes to please us all. My personal favorite is something that I don’t expect to see in top 10 feature blogs anytime soon. Accessing webservices from formevents. good job Jukka!
Cheers, Lasse. Is there any info about the feature you mention in the 2011 beta SDK documentation? I guess it’s been technically possible to call the CRM web service in form scripts since 3.0 (like this), but it’s been too much of a hack for anyone to get excited about using it.