Back from a long time of inactivity, I decided to resurrect this blog with some content taken from the recent PDC09 sessions. Just like last year, presenting the feature set of the upcoming CRM version wasn’t really the main point in PDC (that’s what Convergence is for), but when someone gives a developer demo using the new platform, there’s always going to be interesting snippets of information also for us non-developers. So, last night I watched the three CRM/xRM related session recordings and took some notes and screenshots from them (which explains the low image quality, sorry about that).
On the technical side, CRM 5 will be running natively on .NET Framework 4.0, which means it will be riding on the wave of the latest .NET version released, unlike CRM 3.0 or 4.0. In the presentations there were talks about WCF (Windows Communication Foundation), .NET RIA Services, system types and all kinds of developer lingo that goes way above my head. There’s a great summary article here by Marco Amoedo.
Now, let’s move on to the CRM application itself.
We’ve all seen the upcoming ribbon UI in CRM5 already, so that wasn’t big news. Looking at the start page ribbon content, there’s a button called “Add connection”, which hopefully is about the creation of ad-hoc relationships between any entities, but none of that was shown in the session. Another interesting thing was the “Get started with accounts” instructions pane. That might be just a feature of CRM Online, which was used for the demo, but I sure would welcome a better way to provide customized instruction links to users right within the CRM UI.
More of the same here under the Service menu. The out-of-the-box views don’t seem to have evolved, but it would be interesting to see what’s behind that Views tab on the top. The order of the Quick Find box and the views dropdown menu was somehow messed in this early version of CRM5.
On the entity form, things look kind of familiar, even though form tabs have now been converted into sections and we only have one looooong form instead. I still have mixed feelings about this approach, but perhaps removing one navigation area requiring end user focus and consolidating that into the left hand side menu turns out to be a good compromise, now that we have a busy ribbon on top of every form. As promised earlier, there’s now a native way to present related entity grids on the form without any iFrame magic, but I still didn’t see an option for configuring or filtering the related entity view. I hope there are customization points for it.
Dashboards will finally be a native feature of all CRM editions, so there’s a dedicated menu for them, in addition to the reports list. The Silverlight controls in the charts allow dynamic filtering and other nice user interaction with the data, but we didn’t get to see how you actually modify or build a dashboard. The message seemed to be that these are more intended for getting the CRM users started on looking at their data, but any complex analysis should be done elsewhere. They could therefore be just another way to present the charting feature that appears on all of the entity ribbons in CRM5.
The charting tab displays a set of buttons that we didn’t see in action in the PDC sessions. Only couple of views with the Bing Maps integration were flicked through, so I assume the charts are still very much work in progress.
There was one cool demo with service requests and Bing Maps, which allowed you to merge the open cases from within a certain geographical area into one case record. Since case merging in general is a useful feature that we’ve previously had to do with custom code, I hope there would be some out-of-the-box tools in CRM5 for this (not asking for whole the map integration, you can keep that for the demos, thanks).
Customization and settings
Moving to the sysadmin side of the UI, the customizations menu now presents us with some interesting options:
- Find Customizations. Probably some link to an MS marketplace, aimed at bringing the ISV solution ecosystem closer to the CRM users. Didn’t see this one.
- Customize the System. The traditional customize menu, with a new UI (see below for more)
- Publishers. Didn’t quite catch the full concept behind this one, probably used for subscribing to cloud based services from within your on-premises CRM5.
- Solutions. The big new concept in CRM5.
- Download Web Service Description Files. Why the WSDL download is a separate menu option, remains to be seen.
If we first look at the traditional Customize The System menu, there’s a very welcome change of presenting all the entities and their related components in a tree hierarchy, instead of the popup hell that used to be found under the customization menu. Looks like an immediate productivity booster to me, but just make sure we can expand that tree frame to see the full entity names, please.
When editing an entity attribute, we see a few new things. First, there’s an option to enable the auditing feature. Apparently you first specify it on an entity level, then select which attributes to audit, so looks like it might offer some useful data for the end users (who changed the account name etc.). The second thing is the introduction of the Options Set concept. This will effectively be a way to define global picklists, which share the list of values across entities.
The concept of solution management was introduced in the session “Managing the Solution Lifecycle for xRM Applications”, so I recommend you watch the 45 minute video here if you’re interested in the topic. In short, the ability to package the customizations, plugins, workflows and other items related to a custom solution into a single zip file and then just import that into your CRM instance should first of all lower the barrier for installing new pieces into your CRM puzzle. More importantly, the system will try to manage the coexistence of multiple solutions from multiple vendors in the customer’s customized CRM environment, which is by no means a minor little task. How well the system handles the clashes in real life remains to be seen, but at least there will now be common procedures and tools that you can rightfully expect the vendors to use.
As a result of the solution management concept, the actual “final” customizations of a CRM instance will now be a calculated Default Solution. When you click “Export”, this is produced in real time from all the various custom and default components found from the system. Makes sense to me, but how the order and priority of conflicting customizations is managed when individual solution versions are upgraded is something that’s going to take a while to get my head around at.
Building a solution is done right from the customization UI, where you select which components belong to your solution. In this example screenshot, after adding the account entity into the solution, the system is notifying that there are a number of other required components that are missing from the solution. CRM5 looks to introduce a more complete layer of dependency management into sytem customizations. In a relationship management system where everything can be related to almost anything, this kind of a control point does sound sensible, so let’s hope that the result will be something useful for the day-to-day application mangement tasks.
While there isn’t a “screenshot” you can take of the cloud, I thought I’d include this one slide from the “Developing xRM Solutions using Windows Azure” session (view the recording here), just to wrap things up.
Microsoft’s vision of how the Azure cloud can serve the CRM/xRM market is not limited to just subscribing to 3rd party applications from the cloud and integrating them with your on-premise CRM server. They also showed a concept where the Azure layer would act as a kind of load balancing unit between the customer facing services and the back-end CRM. The Azure Web Role would collect all the incoming transactions, hand them over to the Worker Role, which then delivers them to CRM at a rate which the server can tolerate. The whole AppFabric Service Bus (whatever the name will end up to be) is also marketed as a convenient way to talk to applications behind the corporate firewall.
All of this fits nicely with Microsoft’s idea of Software plus Service, which really has to be a viable concept for businesses, if CRM5 is to be able to compete head to head with the full SaaS CRM vendors. Most of the actual new business features for MS CRM will increasingly come from ISV’s delivering their solutions through the cloud, not in the CRM software version upgrades themselves, so Microsoft needs to make sure that CRM5 acts as a pathway to these new services, not as an obstacle.