Tag: PowerApps

  • Exploring CDS for Apps Platform Licensing (PowerApps)

    Exploring CDS for Apps Platform Licensing (PowerApps)

    When Microsoft originally made the Spring 2018 release announcement for Business Applications products and essentially promoted XRM to be the Common Data Service for Apps, they didn’t yet disclose the finer details about how the CDS for Apps license model would work outside the Dynamics 365 Apps and Plans that we’re familiar with. On May 1st the details were revealed alongside the blog post “Which PowerApps plan do I need for model-driven apps and CDS for Apps”.

    In his earlier blog post, Frank Weigel announced that PowerApps Plan 2 officially became the platform SKU for CDS for Apps. In the updated PowerApps pricing page we can see that actually the license types and prices have effectively remained the same as they were before Spring 2018 release:

    The changes are mostly on the new Model-driven App side (formerly XRM), but since there’s now also a wealth of server-side functionality made available for PowerApps via the new CDS for Apps concept, it also affects the Canvas Apps designers. Let’s dive into the details and explore the license model from a few different angles.

    PowerApps for the Productivity Folks

    A customer who’s got Office 365 will already have the specific PowerApps license type included in that subscription. As stated by the Licensing overview page over on docs.microsoft.com, this allows them to create and run applications within the context of this service (O365), as well as connect to “common cloud services including Box.com, Facebook, and many more”. Not D365 and not CDS, but that still covers a lot of interesting scenarios for building an app to replace a manual process that used to run on email or Excel.

    Since it never was a “pure business app” like Dynamics 365 CRM and ERP products, PowerApps has grown into a highly versatile tool that connects with the more mainstream Microsoft services. You can embed them into a wide variety of places within your MS Cloud environment, like on Power BI dashboards or modern SharePoint pages. For your data collection forms, they are InfoPath on steroids. An Office 365 customer might therefore get pretty far with just mashing up the UI’s of different apps and storing data into less structured places like SharePoint lists or OneDrive files.

    If they’d like to introduce more solid capabilities for relational data modeling, process automation and granular security management, the PowerApps Plan 1 would unlock this scenario for €5.90 per user. With this the data could be managed in CDS for Apps database, a much more robust back end for a business application than simple lists in the Office tools. The users still couldn’t access any Dynamics 365 style UI, since Plan 1 doesn’t grant the access to Model-driven Apps. You would need to construct the required lists, forms, navigation and client side logic with the traditional PowerApps “maker” experience and publish it through the same channels as what the Office 365 users already have access to.

    This Plan 1 approach could be viewed as the first step up from the starting point where a knowledgeable power user or “citizen developer” had built a PowerApp with the license they already had via Office 365 and now the app needs to be adopted more widely within the organization. The new admins and designers of the app would need a Plan 2 license for €33.70 but the users could be assigned the cheaper Plan 1 license for €5.90 a piece. It shouldn’t be too difficult a business case to build if there’s real demand for the app and it either saves time or money in some business process that used to be a painful manual operation before Microsoft Cloud came along. If things work out well, these same P1 licensed users can then go and use any number of apps that the P2 power users design for them, since each P2 gets 2 databases with it and no limits on how many PowerApps you have on top of those.

    PowerApps for the Dynamics Crowd

    Dynamics 365 has a powerful, growing set of first party Apps from Microsoft, but sometimes there isn’t an app for that particular business process you’re looking to digitally transform with the help of MS Cloud. This is where the power of the platform comes to rescue and saves you from custom software development and maintenance efforts. Earlier this platform was called “eXtended Relationship Management” (XRM) but now we refer to it as the Common Data Service for Apps. We don’t even need to buy a Dynamics 365 license for it anymore, since we could just use PowerApps Plan 2 instead.

    What sets Plan 2 apart from Plan 1 is that you can work with the application data via the Model-driven App UI that is automatically generated for you when you design your data model. Sure, you’ll need to configure the details of it to deliver a pleasant UX, but you’re not forced into pixel-perfect design work of the Canvas App. Navigation is provided for you, there’s the full search capability, you can quickly configure dashboards, Business Rules can make your entity forms adapt to field data values, and so on. With the new Unified Interface your Model-driven App will adapt to any screen size, and the solution framework ensures you can easily transport your customizations across environments. The Model-driven sample apps will give you a quick idea of what a non-Dynamics 365 app on CDS might look like.

    There are limitations, though, and you’ll find them listed on the “license requirements for entities” page on CDS for Apps documentation. As mentioned, P1 users can’t access the Model-driven App UI, but they also aren’t authorized to access a Canvas App that runs on a CDS for Apps instance and uses entities that have real-time workflows or plug-ins associated with them. These require a P2 license, which unlocks the full XRM style functionality of the platform.

    Now, just because the Dynamics 365 first party Apps from Microsoft are built on the same platform as your custom Model-driven Apps, that doesn’t mean a PowerApps P2 license would fully cover their usage. There’s a list of restricted entities that are used in MS apps like Sales, Customer Service, Field Service, that you aren’t allowed to touch without the proper Dynamics 365 license. For example, you’re free to work with leads and opportunities, but you can’t use cases or knowledge articles in your custom PowerApps – because Microsoft said so.

    For an overview of the different license types and privileges, be sure to check out the great blog posts and ever so slick videos that MVP Scott Durow has created for explaning the topic of PowerApps to those of us who’ve got a Dynamics background.

    PowerApps vs. Dynamics 365 License Model

    Just because we now have something declared as Platform SKU on a Microsoft blog post doesn’t mean we get to skip the finer details laid out in the Dynamics 365 Licensing Guide. Anyone working on the partner side must have experienced the amount of documentation that goes into performing changes to the licensing practices of Dynamics products. (Remember that deck about transition from Dynamics CRM to Dynamics 365? Of course you do, how could you ever forget…) I’ve got a feeling that we’re going to see more licensing related information emerge about the new PowerApps Model-driven Apps offering in the near future, as this initial announcement raises many questions that need to be answered before customers and partners can fully embrace the new platform opportunities. (more…)

  • Yes, XRM Is The New Common Data Service

    Yes, XRM Is The New Common Data Service

    In November 2016 I wrote an article on LinkedIn with the title “No, Common Data Service is not the new XRM”. This was my response to the speculation that had emerged from Microsoft’s announcement of a new cloud-native platform to store, model and integrate business data with other (cloud) applications. This platform called CDS was seen as a potential replacement to XRM that had been born into the good ol’ on-premises server world already back in 2003. Given the transformative power of SaaS and PaaS, it wasn’t such an outlandish thought to imagine the days of XRM bits being numbered, with a new Azure based alternative being prepared behind the scenes to take over.

    Well, today we had the public launch of the Dynamics 365 Spring Wave in the Microsoft Business Forward event, which I summarized in my previous blog post. The most significant piece of news from this announcement wasn’t perhaps articulated so clearly in official Microsoft materials, so I’ll try and clarify it here and give some perspective on the what/why/how behind this change.

    XRM = CDS v2

    The platform known as XRM, which has served as the foundation for Dynamics CRM and later Dynamics 365 Customer Engagement, is now reimagined as Common Data Service, CDS. Or more specifically, “CDS for Apps”, but more on that later. The key things to understand here are that A) nothing from the current XRM is being removed while B) existing CDS v1 environments are migrated onto CDS v2 that effectively is XRM.

    The adoption of CDS as a component of solution architecture for live customer environments has likely not reached a very high level up until this point. Originally introduced as a concept back at the time when the whole Dynamics 365 concept was launched in 2016, the purpose of CDS has remained too fuzzy for many customers to explore it further. At the same time, the feature set offered by CDS v1 hasn’t yet covered many of the scenarios that Microsoft partners would have likely used it in. You could say that in their noble attempt to connect many of the existing boxes in the business application architecture, Microsoft ended up inventing yet another box. Which is pretty much the fear I had in my first blog post covering CDS, which back in those days was still called Common Data Model (CDM):

    Being the giant corporation that Microsoft is, there’s bound to be both plenty of overlap between different products developed by different groups within the organization, as well as the occasional lack of alignment between the roadmaps to where each of their countless products is heading to. I’m sure there was a clear need for introducing a foundation for managing all that business data which the Power Suite tools (PowerApps, Flow, Power BI) had to intimately work with, instead of just relying on distant services via APIs. Viewed from this perspective, the idea of CDS must have seemed pretty awesome. When looking at the feedback coming from outside the MSFT firewall, though, it’s obvious that the V1 product didn’t quite manage to meet the mark:

    This Ain’t The XRM of 2011 Anymore

    A lot of work remained ahead if CDS was to be built into what the real world requirements from enterprise customers were. At the same time, the XRM cloud platform was being transitioned to run on Azure services and the new target architecture was to allow the separation of the built-in applications (Sales, Service etc.) from the core platform. The CRM “legacy” of XRM was about to become an optional component you could remove and not break things, with previously hard-coded features being re-engineered as either core platform capabilities or implemented as reusable pieces within the in-house apps’ solution packages, built with Custom Control Framework (CCF) and presented via the Unified Interface.

    The people at Microsoft who actually design and build the functioning technical product were sure doing all they possibly could to prepare XRM to take a bigger role than just that boring old sales pipeline management engine with Outlook integration we’ve seen since forever. The community that had worked with Dynamics CRM and seen its potential to deliver custom business apps time & time again in actual customer projects were always asking for MS to deliver a “Pure XRM” SKU, to make it a true platform. Whether it would ever happen, though, was not for either of those groups to decide.

    At the end, as we now can see with the announcement of PowerApps Spring Update, the leadership team at Microsoft ultimately came to the right conclusion. XRM was chosen as the platform that would power the further expansion of PowerApps becoming more enterprise ready with the support for building model-driven apps alongside the familiar canvas apps. From a licensing perspective, “PowerApps P2 officially becomes the new platform SKU, moving away from being a admin and maker focused plan to becoming THE plan for users of stand-alone model driven apps.” So, there we have it then: Pure XRM at last.

    So Long, XRM!

    A legitimate question that some of you might as at this point is:

    “If the CDS v1 platform is replaced with XRM, then why is everyone talking about Common Data Service still?”

    Are we seeing yet another marketing spin that tries to blur our vision from what the underlying technologies really are, like with the Dynamics 365 “it might be CRM or ERP and you’ll never figure out which one we’re  talking about” rebranding pains? Well, that was my initial though when I first learned about the plans for this platform merge, but I’ve later come to the conclusion that it is actually a fairly sensible decision to replace XRM with CDS.

    For those of you who have been in the Dynamics game for long enough time to recall the first moments when Microsoft started throwing around the term XRM, you might still remember the excitement that was collectively felt around that letter “X” for describing the bold journey of going beyond the standard CRM feature set. The thrill of creating your very first custom entity via the customization GUI – man, what a rush! This truly felt like the future of business application development at the time.

    Fast forward to where we are today and the excitement of data model and UI customization has been replaced by the anxiety to get as many different apps and services to talk with one another with as little effort as possible. It’s not that focused on the Relationship Management part anymore, and instead of “X” we have X^N different things we need to manage and connect with (some are even IoT enabled things). To describe what we’re actually trying to use XRM for today, the Common Data Service is a pretty fitting name in the end. We’re trying to bring some common sense into the sea of data that everyone is swimming in, and we’d of course prefer to consume it as a service like we already do with movies or transportation, for example. And as for the visible UI part of the application that user interact with – well, there just happens to be this concept called PowerApps out there already. So, “XRM Part 2” = CDS + PowerApps.

    I think we’re at a point where we really should look at the road we’ve traveled with our trust ol’ XRM Swiss knife, appreciate all those countless times that we were able to find a tool from it that got the job done, but accept the fact that from this point onward we’re going to need a bigger knife. Which we might as well call CDS for the server side & PowerApps for the client side.

    One More Thing…

    Just so things wouldn’t be uncharacteristically clear for Microsoft’s product naming tradition, what we’re seeing here is actually a bit of a “SkyDrive moment”. By this I’m referring to the episode where after renaming SkyDrive to OneDrive due to a lawsuit from BSkyB, Microsoft then proceeded with launching another product called OneDrive for Business. So, “One Drive, many meanings”…

    With CDS the scenario is that while the XRM platform has now been rebranded as Common Data Service for Apps, there’s already another product on the way, called Common Data Service for Analytics. Regardless of the word “common” in the name, these two platforms are unlikely to share many characteristics when it comes to the technology under the hood. Here’s how the MSFT Technical Fellow behind Power BI describes it:

    So, we’ll soon have two awesome products from Microsoft named according to the pattern “Common Data Service for X”, which we can easily distinguish from one another by using the terms CDS-A and CDS-… Oh. Right. Well, there’s always the next round of rebranding we can look forward to!

  • Microsoft Business Forward 2018 Event and Spring Wave for Dynamics 365

    Microsoft Business Forward 2018 Event and Spring Wave for Dynamics 365

    The public launch of the Dynamics 365 Spring Wave was at the Microsoft Business Forward event in Amsterdam on March 21st, 2018. Here are some highlights from the event, shared over on Twitter with the #MSBusinessFwd and #MSDyn365 hashtags. (If you’re viewing this post on Dynamics Community page then you might want to visit the original post on Surviving CRM site to see the embedded content.)

    There’s A LOT to chew on in this release and there’s literally 10+ blog posts released today by Microsoft, spanning from traditional Dynamics 365 Customer Engagement team blog to PowerApps to even Power BI. You can start drilling down into this wealth of new information from the announcement by James Phillips: Accelerating digital transformation with the spring 2018 release for Dynamics 365 and Business Application Platform.

  • What’s An “App” in Dynamics 365 Anyway?

    What’s An “App” in Dynamics 365 Anyway?

    Everywhere you look you see apps these days. Or more truthfully, you’ve been seeing them for ages already. Even in this blog I used the term “applification” over 2 years ago already, so it’s fair to say we’ve been living on the planet of apps for a long time by now. As catchy as those three letters are, the overuse of the term has some side effects that may lead to confusion when people refer to something as an “app”. With Dynamics 365 Customer Engagement (a.k.a. XRM), this danger is very real, since the term has been used in quite a carefree way when naming the different components found in the platform.

    In this blog post I’ll try to provide some clarity for those that are less familiar with the various dimensions that a Dynamics 365 app can have. I will go through the places in which apps can be found and explain their intended usage scenarios. Then in a follow-up post I’ll dig deeper into the architecture of how apps relate to solutions and the XRM customization capabilities in the latest V9 version.

    Mobile Apps

    Since smartphones are to blame for the app craze, we might as well begin by doing a search in the iOS App Store. With the term “Dynamics 365” on my iPad I get a list of various different apps I could install on the device. The top there results present a row of apps from Microsoft, but they are all built on completely different architecture.

    The first result named “Microsoft Dynamics 365” is the actual “CRM” app, meaning the one that’ll give you roughly the same features as you’ll find on Dynamics 365 Customer Engagement when accessed via a browser. Once the Unified Interface is fully developed, the mobile & the web will be almost identical, but currently it’s likely that you’ll see a somewhat different experience on mobile than what the browser UI looks like. You’ll find the app’s setup guide here.

    The seconds result is “Dynamics 365 Unified Ops”. Yes, it’s also by Microsoft, even though the name doesn’t include the corporate brand this time. Now, if you’re looking for the CRM capabilities then don’t get mislead by the app’s description talking about mobilizing your business processes. This is the mobile ERP application and you’ll need the “cloud AX” environment to use it for anything. No, Dynamics 365 isn’t “unified” on the level yet that you’d have just one client for CRM & ERP, but most people probably wouldn’t need a phone app that huge anyway. If you’re into ERP, read more about the Unified Ops mobile app here.

    The third result is “Field Service- Dynamics 365”. Although the app developer info on iOS says “Microsoft Corporation” this is actually the mobile app developed by Resco & licensed by Microsoft to be offered as a part of the Dynamics 365 for Field Service app license. It operates by connecting to the “CRM” instance and using its customer data, but the configuration is separate from the customizations you might have done to your Dynamics 365 Customer Engagement environment. The user guide for this app can be found here, while the customizers will find information about installing the Woodford solution for changing the app configuration here.

    App for Outlook

    For as long as Dynamics CRM has been around, the integration to Outlook has been one of its main selling points against alternative CRM products. The CRM Client for Outlook has served us well over the years but the time has come to lay it to rest and replace the Client with the App. The change is far more significant than what Microsoft’s product naming here would suggest, with “Dynamics 365 for Outlook” being the legacy client for your PC and “Dynamics 365 App for Outlook” referring to the lightweight app that will work on pretty much any device.

    Unlike the mobile apps, the App for Outlook isn’t something that a normal end user can (typically) download and configure for themselves. A system administrator or system customizer must take care of the deployment steps, which may include switching over to server-side synchronization, approving user mailboxes (with O365 Global Admin rights) and finally pushing the app to either selected or all eligible users under the menu Settings – Dynamics 365 App for Outlook.

    As of the first week of 2018, the Dynamics 365 App for Outlook in V9 is still in Preview mode, so a sysadmin needs to enable it from the System Settings – Previews tab. This is because the earlier app has been replaced with a completely new app in this release, built on UCI (Unified Client Infrastructure) that is used in the new Unified Interface. This will actually turn the previously feature limited Outlook sidebar app into a full Dynamic 365 Customer Engagement app that has similar capabilities as the mobile app mentioned above.

    Dynamics 365 App Modules

    When you’re logged in to Office 365 and you click on the Dynamics logo in the app launcher, you’ll be taken to the Dynamics 365 home page at home.dynamics.com. Depending on your environment’s configuration, you’ll see a few or a whole number of rectangular icons on this page. Those are all “apps”, but not like the previously described mobile or Outlook apps. More importantly, not all of them are necessarily Dynamics 365 Apps either. Huh?

    The explanation is that the Dynamics 365 home page lists also your Office 365 tenant’s PowerApps apps (which probably should be just called “PowerApps” to make my head hurt less while reading that). Aside from those, the list will include apps from all across your Dynamics 365 Customer Engagement instances, so if you have sandboxes for development and testing purposes, the very same app name & description may appear here multiple times. Furthermore, if you’re also using the ERP side of Dynamics 365, the home pages covers them as well.

    In the Customer Engagement world an app module is basically a subset of the components you can find within a single instance. It can include navigation, dashboards processes, entity views, forms and charts. Aside from a few app specific configuration items, it doesn’t really add anything that you wouldn’t have in the “full” XRM instance already. They are a way of controlling what contents of that particular instance is visible to the end user.

    Each XRM instance has by default at least one app, which will be called “Dynamics 365 – custom” unless you rename it in the System Settings menu. In addition to this, there can be N apps built and configured via the App Designer, or provided as readymade apps from Microsoft, like Field Service in the screenshot. Both the old web apps and the new Unified Interface apps will be present here if your instance is V9+. With so much going on here, I personally try to avoid ever navigating to the Dynamics 365 Home page and just store the direct URLs in my browser’s bookmarks bar where I’m in total control of how the apps are named and organized neatly into folders.

    Microsoft AppSource

    If you feel like you don’t have enough apps on your Dynamics 365 Home page, you can click the “+” icon that says “Find more apps that work with Dynamics 365”. This will open a modal window of AppSource, filtered down to the apps that are designed for, integrated with and some even built on top of the Dynamics 365 platform. Many of these will be built by partners (ISVs) but some of the content is authored by Microsoft themselves, either as officially supported solutions like the Social Selling Assistant, or as “accelerator” style solutions from Microsoft Labs with no warranty or promise of future support like Attachment Management.

    The AppSource apps are closest to the concept that the word “app” was associated with when the iPhone’s App Store was launched ten years ago. These may be small extensions to the common CRM feature set, like a Marketing Calendar component for visualizing campaign records, or integrations between Dynamics 365 and a standalone service like Adobe Sign. Just like in a smartphone app store, some items are completely free of charge while others will cost you dearly. Since we’re dealing with enterprise systems here instead of individual mobile devices, some services allow you to do a test drive in a sandbox completely isolated from your organization’s Dynamics 365 instances, like the CPQ solutions from Experlogix and PROS.

    What can be confusing about AppSource in the Dynamics 365 context is that probably the majority of the apps available in AppSource will not actually result in a new app icon being added to your Dynamics 365 home page. This is because up until V9 and the Unified Interface there wasn’t really a proper presence for the App Module in the XRM platform, so the world is only slowly adjusting to this new reality. I’ll delve into this very topic in my next blog post.

    Dynamics 365 App Licenses

    The concept of an app exists not only in the visible UI and logical platform component containers but also in the contractual world of software licensing. If you go to the Dynamics 365 Pricing page and download the Licensing Guide PDF, you’ll see the detailed way in which the rights of a licensed App user are defined in relation to the features provided by the XRM platform. There are in total 176 occurrences of the word “application” in this document, so don’t expect a quick answer. However, since XRM still largely follows an “honor system” where it’s up to the system administrator to limit the security roles of a user to match those to the rights given to him or her via the assigned Dynamics 365 license type, you’re going to have to understand the concepts.

    Even though you can purchase and assign a user a license for Dynamics 365 for Sales, i.e. an app license, this doesn’t mean that the only thing this user would see or would be legally allowed to access would be the Sales app icon on the Dynamics 365 home page. They can be allowed to view the entire contents of any XRM instance in that particular Office 365 tenant, thanks to the first row in the above table (“all Dynamics 365 Enterprise Edition data”). They could access the “Dynamics 365 – custom” app to look around the whole suite of features in Customer Engagement. They could leverage the Dynamics 365 App for Outlook to track emails to records. But if you misconfigure their security roles and allow them to track emails against case records (a Customer Service app feature), you are in breach of the licensing contract.

    Alright, that’s about as many “app” mentions as I can reasonably fit within one blog post. Next time I will take a look at Apps from a system customizer perspective.

  • Top 3 Themes for Dynamics 365 in 2017

    Top 3 Themes for Dynamics 365 in 2017

    The first day of the new year is a good moment to reflect on what 2017 gave us (or didn’t give) in the Dynamics 365 business. Here are the top 3 themes that came to my mind when I looked backed at the last 12 months of news, releases and overall directions coming from Microsoft.

    Business Applications

    A major theme that emerged this year and found its way into most of the communication coming from Redmond was Business Applications. Those two words on their own of course don’t mean anything very revolutionary, but it’s rather the way in which they were used to broaden the context of Microsoft’s business software beyond just Dynamics that’s of greater significance. If 2016 was the year when CRM and ERP were commercially bundled into Dynamics 365, then in 2017 the scope began to reach further beyond that. At the start of the year the XRM platform was given the Customer Engagement name, with the absolute minimum fanfare allotted for the occasion, so the true focus for product marketing was obviously somewhere else.

    Looking around at what specific software products sit alongside Dynamics 365 in the high level MS technology stack illustrations, it’s quite logical that we’re now seeing the “Power Suite” tied into pretty much every commercial narrative around Microsoft’s business cloud. More precisely, the technology grouped under this suite with no official name is very central to the story being told to both business and technical decision makers for one reason: its purpose is to connect the big three MS clouds. Office 365, Dynamics 365 and Azure are all equal beneficiaries from the toolkit that is provided by PowerApps, Flow, Power BI, CDS and their numerous connectors.

    On an everyday level it may still not be all that common for the real life CRM solutions to heavily rely on the Power Suite technology, like using MS Flow instead of D365 workflows. Because it was first rolled out as a power user focused set of tools for an individual information worker rather than something you’d deploy across a large organization, the practical as well as perceived maturity of this technology has formed a barrier of sort for full-on adoption. The long term outlook for it does look bright in my opinion, however. There’s only so much that Dynamics 365 as a platform can do on its own (be it the XRM, AX or NAV flavor), but if you can connect it with the outside world of MS and non-MS services without the traditional integration development effort, that opens up the door to a world of possibilities. I’m pretty sure customers will be interested in taking a step through that doorway and having a look around during 2018.

    App/Plat Separation

    Taking a few steps down from the higher level clouds and diving into the platform formerly known as XRM, 2017 was a busy year. This didn’t really come as a surprise to me, since I had a wonderful opportunity to get a peak at what the product team had planned for this calendar year already in the last MVP Summit in November 2016. My initial reaction to it was “are you guys SERIOUSLY going to push all of this out in the next release?” Well, a clear majority of the planned features and changes was indeed shipped during 2017 eventually, although the naming of V9 as the “July 2017 Update” didn’t turn out to be such a great idea.

    There were massive changes introduced to XRM (which I’ll continue to call for what it is), both above and beneath the surface. Rolling out Unified Interface initially to the mobile devices and eventually to every UI is going to change the client side of XRM in ways that are even greater than the previous user experience overhaul in CRM 2013. Opening up the client UI to custom extensions with the Custom Control Framework (CCF) sometime later (hopefully in 2018) is a major step in enabling and encouraging the reuse of configurable UI controls for data visualization. Finally, the App/Plat Separation that has moved the previously built-in application features of Sales, Service etc. into optional solution packages is now turning XRM into the type of generic application platform that it has earlier often been depicted as – in the technical decision maker slide decks from MS, at least.

    The combined effect of this transformation which materialized largely in V9 is that XRM should now be a lot more future proof. Having the individual applications as their own packages is a bit like how at one point in the late Windows Phone operating system’s lifecycle the Office apps needed to be separated from the OS, so that they could be serviced and updated without having to ship a new WP build. (Naturally I hope that the fate of D365 will be considerably more glorious than that of WP.) The new UI controls in CCF that now aren’t tied to a single app feature but can rather consume any data coming from XRM database or from external sources via Virtual Entities are bound (pardon the pub) to be more useful in delivering solutions to varying customer needs. Sharing the same client framework across different devices and embedded apps is going to reduce the amount of effort needed to get these solution features in the hands of different user groups.

    Licensing Model

    Sometimes the planned features take a little longer to ship than was originally estimated, which certainly is no surprise to anyone working in the business of software. Other times it turns our that what you initially promised to deliver isn’t actually going to meet the needs of the outside world after all. The delays experienced in getting V9 out to the customers represent the former scenario, while what happened to the Business Edition is an example of the latter.

    There’s no denying that with the growth of the platform and all the new cloud services attached to it, Dynamics CRM had grown from humble beginnings to enterprise scale in the recent years. Therefore the idea of labeling the suite as a true enterprise product and building a different lightweight offering for the needs of smaller CRM environments probably made a lot of commercial sense when MS announced the Dynamics 365 branding with the Enterprise and Business licensing plans to the world in WPC 2016. Only the practical problem remained of how to actually mold a new offering out of the big suite – at least without taking several shots at one’s own foot while setting up constraints for customization and expansion for those customers who’d initially start their exercise from the lower end of the license pool.

    Those 14 months from announcement to eventual cancellation of a separate Business Edition were filled with confusion on all sides – from partners to customers, and probably within Microsoft, too. Although this did leave an unfortunate stain on the year 2017 for Dynamics 365, the long term outcome from the decision to NOT roll out an artificially separated lower tier may turn out to be a better choice after all. It’s all still wide open on how the promised “lower price point” licenses and apps will be packaged, but at least it sounds to me like MS has acknowledged they need to build bridges instead of walls around the growing set of applications in Dynamics 365. For instance: just take a look at the documentation of the upcoming Dynamics 365 for Marketing application and tell me if it looks like an SMB only -product that no existing (Enterprise) customers would have any use for? Exactly. Sanity must prevail and customers be given a chance to license the technology that best fits their needs.

    Hello 2018

    What can we expect to see from Dynamics 365 in this new year then? There are no definite product roadmaps from Microsoft that would publicly disclose what’s planned for be released in which year, since the software business no longer operates on the type of schedule that we saw when products were shipped in shrink wrap every 2-3 years. It now looks more like a mesh of forever updating cloud applications and web services that move along according to their own backlogs and team velocity. Given that the real business applications that customer organizations deploy are a combination of several products that in turn use a variety of back end services, who can actually tell when a certain feature will be “ready”? For example, Dynamics 365 for Marketing utilizes Customer Insights, which in turn relies on the following Azure services:

    • Azure Data Lake Store
    • Azure Data Lake Analytics
    • Azure HDInsight (Spark, Phoenix, HBase)
    • Azure SQL Database
    • Azure Key Vault
    • Azure Secret Store
    • Azure Event Hub
    • Azure Stream Analytics
    • Azure Redis Cache
    • Azure Service Fabric
    • Azure Active Directory
    • Azure Monitoring
    • Azure Metrics
    • Azure Websites
    • Azure Service Bus
    • Azure Storage

    That’s what the future is made of, and that’s why it is so unevenly distributed. We may well see MS announce the next Dynamics 365 Customer Engagement capabilities before existing customers are even able to update their instances to V9. The specific points in time where a particular capability is 1) announced, 2) in private preview, 3) in public preview, 4) available for new environments and 5) deployed for live customer environments may therefore be spread out over a time period that makes even assigning a proper year to it challenging at times – let alone a calendar month like “July 2017”. In this light, I’m personally mainly expecting to see how the above three themes from 2017 will play out as they get closer to impacting the real life scenarios of customer organizations all over the globe that get to put it all into action in their digital business processes.

  • Postcards from Microsoft Ignite 2017, part 2

    Postcards from Microsoft Ignite 2017, part 2

    Back to Florida again – at least on a mental level. In part 1 of my Microsoft Ignite conference diary I described the overall setting of Dynamics 365 in the context of the Business Applications story. This time let’s have a look at some of the details on what the XRM platform can do now and in the near future. The live tweet content can be found from my #MSIgnite Storified collection part 2, but here’s the story behind those social posts.

    The GA (general availability) target of Dynamics 365 Customer Engagement V9 was set to the week after Ignite. This was indeed the case, as I didn’t even have a chance to arrive back home from Ignite before I had my first V9 trial instance running the in the cloud. People who had participated in the Dynamics 365 Insider program were already granted access to the preview instances of this major release but now each and every new trial is provisioned with the V9 bits. A few days later there also was an official blog post that announced the availability of “Dynamics 365 October service update”. The naming of course is a bit confusing, since up until this point Microsoft had stuck to the “July 2017 Update” name – and that’s what still shows up in the D365 Admin Center UI. Don’t you agree that life would be much simpler if we’d all just use the version numbers instead of marketing names? Oh, and if we had the KB article already available for the 9.0.0.1103 GA build, that would be even sweeter.

    After the initial Preview Executive Briefing sessions for V9 that were conducted before the summer holiday season, Ignite was the place where the next big presentation on Unified Interface took place (at least to my knowledge). Oren Ryngler and Linda Simovic took us through a detailed demo of all the UX goodies that V9 has to offer. Unfortunately the slide deck is not available for download even for Ignite attendees, but you can view the full recording of the presentation on YouTube. I bet that even if you participated in the preview program, you’d be hard pressed to recall all the wonderful details packed into the Unified Interface. Principles like “Gradual exposure to complexity”, AI capabilities like Grid Recommendations or the new chart types are something you can expect to discover in the video.

    There was another excellent session where Linda discussed what the underlying motivations behind the Unified Interface initiative (or “Unified Client Infrastructure” / UCI) were. Even more interesting was the quick peak at the Custom Control Framework (CCF) that is a significant benefit unlocked by UCI. Described as “extensibility framework for building UI components that visualize data”, we’ve already heard that Microsoft has been busy rebuilding everything in the default app UI as Custom Controls (“but if it’s default then how can it be custom?” Ah, never mind the semantics…). What we don’t yet have is a definitive date for when the APIs for building true Custom Controls will be opened up to customers and partners. What’s REALLY interesting is that the product team’s roadmap includes a “Control Gallery” marketplace for viewing and purchasing these as solutions. If it all works out, then the Unified Interface in V9 is just the start of the true transformation of XRM UI into something more than fields and grids on an entity form.

    While the UI story is always going to get far more social media coverage due to fancy screenshots from the visible application, there’s a lot more bubbling under in V9 than just the promise of a Custom Control Framework. Matt Barbour presented the Microsoft Dynamics 365 CE Platform Update for Developers, delivering a concise “what you need to know” package for people working with XRM solutions or API based extensions. Now that everything in the OoB apps has been separated from “system” into actual solutions, managing the dependencies via solution segmentation is actually a big deal. Why it’s even a bigger thing from application maintenance perspective is that the next V10 major version will ONLY accept V9+ solutions – so start getting used to them right away. In addition to the earlier announced V9 platform enhancements of Virtual Entities and Multi-Select Option Sets, we also received a “one more thing” with Auto Number fields! Thousands of custom numbering solutions can finally be put to rest, at least after you install the Auto Number Manager for XrmToolBox to access the configuration options for this new native field type.

    There were several shorter sessions in the Expo area of Ignite that offered practical tips for how to do more with less when it comes to Dynamics 365 Customer Engagement. While I remain firmly in the no-code territory myself, the PowerShell scripting capabilities available in the new Online Management API or the more familiar Microsoft.Xrm.Data.PowerShell module demonstrated by Shwan Dieken and Sean McNellis from the PFE team open up automation capabilities even I can easily relate to. Don’t forget to check out this huge link list put together by Shawn & Sean for the latest admin tips & tricks you need to be aware of. Over on the MVP powered sessions of Ignite, George Doubinski also showed a wealth of automation tips to reduce manual labor for Dynamics pros. What I bet you didn’t know how easy the integration of Dynamics 365 Customer Engagement with a WordPress website can be, thanks to the plugin developed by George & Co at AlexaCRM.

    Like I wrote on the back of my first Ignite postcard, the Business Applications story that Microsoft wants to tell us consists of a lot more than just Dynamics 365 these days. While it’s been all too easy to disregard the earlier sales pitch for PowerApps and Flow as just a citizen developer fable that doesn’t apply when working on Real Projects, they are gradually gaining the types of ALM capabilities that put them higher up on the list of tools to consider for solving customers’ business problems. While there were some disappointments, like the continuing non-story of Adobe Marketing Cloud + Dynamics 365, you could easily find yourself thinking “hmm, that’s actually pretty cool” while watching the demos for this “Power platform” of non-XRM business tools. Even though CDS still largely is “a box to connect other boxes on a PowerPoint”, the added features like embedded PowerQuery and the accompanying new data sources give us a sign that progress is being made.

    As always, the big questions is about when’s the right time to jump in to the new technology if you want to deliver successful customer projects with it. Events like Microsoft Ignite are great for calibrating your own perceptions and expectations, not just via the official product demos but also the community response to them. I know I walked away from the conference with a far better understanding of what Microsoft is pursuing with their latest product development investments – even though I’ll need to review a bunch of the session recordings to actually grasp the finer details of each individual technology.

  • Postcards from Microsoft Ignite 2017, part 1

    Postcards from Microsoft Ignite 2017, part 1

    Greetings from the Sunshine State! This Fall I was fortunate enough to have chance to attend my first ever Microsoft Ignite conference in Orlando, Florida. Staying true to my habits, I did tweet out quite a lot of content from the live event with #MSIgnite hashtag. If you missed that stream, feel free to revisit the collection over at Storify, where I curated a story called “#MSIgnite 2017: Business Applications”. (Unlike with the V9 preview, I’ve decided to refrain from embedding the infinite scroll version of the story into this blog post. You’re welcome!) Here’s a little written summary on my thoughts about the event’s contents.

    If you’ve been to or kept an eye on Microsoft Ignite before, you’ll know that it’s an event that has traditionally catered the more mainstream product lines like Office 365 and Windows. I did not expect any major announcements from the Dynamics 365 team at Ignite, so my intention was to explore the broader story around MS Business Applications. Most of us who are working in cloud environments with Dynamics products must be well aware of how much there is going on around the core XRM platform (still the best name for it), but rarely do we have a chance to focus on something that isn’t directly linked with the sales/service/marketing processes of CRM system development projects.

    That’s a bit of a shame, since at the end of the day that’s precisely where Microsoft’s big competitive advantage lies. The whole really is greater than the sum of its parts in this occasion, and if the size of the Ignite conference would be used as the yardstick, I’d say the whole is actually HUGE. Sure, it wasn’t anywhere near Dreamforce in terms of the attendee count, but if you’re not looking for a rock festival to hang out with your business partners but rather want to deepen your understanding of the current and future capabilities of a cloud technology platform, it doesn’t need to get any larger than this. I reached my 10k step target each day just walking between the sessions, which tells you the Orange County Conference Center floor space was truly put into full use in trying to fit in the complete MS business technology stack. You sometimes literally had to take a shuttle bus from one side of the conference to the other to make it to the sessions in time!

    The biggest piece of news for D365 was already from the earlier week’s Directions North America 2017 event, where Microsoft admitted that after 1 year of waiting, there was not going to be a Business Edition release of the XRM based apps at all. Or even for the ERP side of the house – at least from a product naming perspective. While none of the technology investments made in preparation of Business Edition was actually cancelled, it’s understandable that this caused a lot of stir among the Dynamics ecosystem. Without going deeper into the topic, I believe MS made the right choice and it’s only a shame it took them so long after the initial Dynamics 365 rebranding announcement to find the right path forward. While we wait for the new licensing model details, we still remain in a product naming limbo that was also very much present in any Dynamics related session at Ignite. You must remember that what we’re experiencing in the XRM space ain’t nowhere near the amount of confusion that our ERP colleagues must go through. Godspeed, Dynamics X!

    Of course the story is no longer just centered around what to call your CRM & ERP platforms. In practically all the Ignite sessions that touched my field of work, the solutions being demonstrated were always mashups of several MS technologies. Clearly the intention was to underline the possibilities of seamless integration between the latest cloud apps from almost any two product teams. Yeah, I hate the word buzzword “seamless” as much as any experienced IT consultant does, but my point is that it seems like the phase of inventing new MS cloud products has reached an end and now the focus is truly on ensuring they can connect with one another. This also means challenging the assumptions of what the role of each product is in the customer’s solution architecture. Instead of using XRM as the UI for business data presentation, could a better result be reached via a Power BI dashboard that has embedded Visio process visualization and PowerApps screens with record level drill-down? Possibly yes, and these alternatives are what MS wants us to actively explore.

    The floor space given to PowerApps at Ignite 2017 made it the clear headline product in the Business Applications track. Maybe it was just my session schedule planning, but it felt like all roads eventually lead to PowerApps. It’s of course a very neat way to demonstrate the benefits of having your business data in systems that are easily accessible by these low-code/no-code apps. What was somewhat confusing to hear, though, was that the current “UI first” approach of designing PowerApps on a free canvas was promised to get a new model-driven app design option alongside it. You know, with entity based forms, server-side business logic and even Business Process Flows. “But wait, weren’t those the defining characteristics of an XRM app?” Bingo. It literally was a set of Dynamics CRM customization UI screenshots snatched into a PowerApps roadmap presentation. These two paths are converging quickly now and you’re going to want to keep an eye on what the next chapter in the Business Applications has in store for us.

    I’ll need to go lie down in a brief coma now to recover from the jetlag caused by a Miami-Helsinki flight (cheers to Finnair for offering the direct connection, though!). I promise make a return with part 2 in a few days time, as there is a lot more souvenir sweets to digest from Microsoft Ignite 2017.

  • CDM: New Data Model For The Common Good?

    CDM: New Data Model For The Common Good?

    The first new component of the upcoming Dynamics 365 platform that has reached a stage of public preview is the Microsoft Common Data Model (CDM). Available via PowerApps, CDM can be provisioned in your Office 365 tenant with only a few clicks, so there’s little reason for not having a look an early look at it. In fact, you only need to sit back and relax while watching CRM MVP Scott Durow walk you through a first look at the Common Data Model:

    So, there you have it! That’s what CDM looks like when accessed via the PowerApps web management UI. Any questions?

    Yeah, I actually do have a couple.

    How will this work with CRM and AX?

    What we have available in the preview is pretty much the most straightforward part of the very big puzzle to put together, meaning a database on Azure with some preconfigured tables and data model management tools. We do not yet know much about how the Dynamics CRM and Dynamics AX functionality will be linked to CDM as part of the Dynamics 365 cloud platform, so there’s plenty room for speculation, which honestly is mostly what I’m about to do here. In a way I’m just continuing on the theme of my previous post about Dynamics 365 and its potential implications for XRM, to pass the time as we wait for Microsoft’s plans to be revealed in more detail.

    Right now the only way to push data into CDM is a Flow. If you’ve ever played with automation tools like IFTTT or Zapier, then you’ll quickly grasp the idea of Microsoft Flow. The application itself shouldn’t be underestimated just because of its current simplistic demo scenarios that usually are along the lines of “when a new row is added to a SharePoint list, send an email to this address”. Built on top of Azure Logic Apps, there’s actually a next generation BizTalk type of cloud integration platform under the hood, which should provide plenty of future potential for advanced messaging solutions to orchestrate business processes across a number of different systems.

    Flow_copy_CRM_account_to_CDM

    Once Dynamics 365 Enterprise arrives and gives us the features of CRM and AX in one seamless cloud environment, there’s naturally going to be a need for something a lot more than a “build your own” type of Flow integration. Keeping the Sales and Operations apps of D365 in sync with the customer and transaction data managed in the process of making an delivering a sale involves a fair amount of business logic. If you’ve ever designed and developed a custom integration for this type of a scenario, you’ll know the requirements can quickly grow a bit hairy. Assuming Microsoft can come along and say “we’ll take care of that hairy part, don’t you worry about it” then who could resist it?

    The reason CDM exists is that there will be more than one physical database in the Dynamics 365 suite. It’s not all XRM, which means you can’t find the Operations app entities inside your CRM solution files. For the business processes to work seamlessly, someone needs to keep those database closely in sync with one another. From reading through the Common Data Model tutorials, we can see that at least as of now, Flow is not the system that can handle it:

    “Today, when you use Microsoft Flow to import data or export data, it is not a full synchronization service. Whenever an object is added to one service, it will be imported into the other system. However, that means if an object is deleted from one system it will not be deleted in the other system.”

    So, the sync part is still in the “To Be Implemented” bucket. So is security, since the passing of a record from CRM to CDM via Flow will not carry over any details about who should have the rights to do some CRUD work on it. Again, it may not sound like such a mission impossible to build. However, if you’ve ever faced the requirement in a Dynamics CRM project to implement SharePoint document library integration with account records that includes not just linking the folders but also enforcing the account access rights on the documents, you’ll know the struggle is real. Sure, a collaboration solution like SharePoint has very different security concepts than a system designed for structured business records management like CRM or ERP. But if Microsoft hasn’t been able to offer OoB synchronization of access rights across Dynamics CRM and SharePoint despite of the clear business demand for it, maybe we’d be foolish to expect that it will all be seamless inside the Dynamics 365 world either.

    The thing here is that unless the solution provided by Microsoft is going to be fairly advanced, it might not be an actual solution. It’s like the old saying from the dawn of the internet:

    Some people, when confronted with a problem, think “I know, I’ll use regular expressions.” Now they have two problems.

    When confronted with the need to integrate processes across two different cloud business applications, there’s always the danger of someone rushing into thinking “I know, I’ll build a database in the middle to unify the process data”. So we end up with three cloud business applications… Now, I’m not saying that Microsoft wouldn’t have the type of application architecture masterminds working on the Dynamics 365 platform that can solve these complex problems when developing a new product. I’m just afraid that things may still turn out a bit more complex in reality than the marketing pitch for the new product launch might lead people to believe.

    What limitations will this impose on customization?

    The one reason why many of us love the capabilities of the Dynamics XRM platform is the awesome flexibility it offers us to customize the application to meet the specific needs of customers. And by “customize” I actually mean “configure”, since these days you can build such amazing features for business users without writing a single line of Javascript or C#. With Dynamics 365 now promising to deliver so many preconfigured apps for different departments’ needs, as well as making them all work together, I bet some of us are thinking about whether there’s a potential threat to the platform’s flexibility buried in the new approach Microsoft is taking. (more…)

  • Dynamics 365: The Next Chapter of MS Cloud Business Apps

    Dynamics 365: The Next Chapter of MS Cloud Business Apps

    Have you heard about this brand new thing called “Dynamics 365” yet? If you attended or followed the WPC 2016 conference, I bet you have, since it was the big headline news for Microsoft’s partners and corporate customers that kicked off their FY17. Satya Nadella spent a significant part of the WPC keynote explaining how Dynamics 365 is the service through which his vision of reinventing business processes comes to life. So, obviously there’s got to be some big things packaged into this new offering. But putting the visions aside for a moment, what exactly does this service contain in practice?

    WPC16_keynote_Dynamics_365

    In short, Microsoft Dynamics 365 is both the same old and brand new when it comes to the underlying components. As presented by many of the tech news sites, essentially Dynamics 365 is about taking the previous Dynamics CRM & ERP products and bundling them into a single cloud service. Comparing it to “the other 365”, meaning Office, it’s not an entirely different approach than taking established server applications like SharePoint & Exchange and making them easier to purchase via a single Office 365 plan. While the name is different and the tools to administer the applications are specific to the subscription service, beneath the portal there are many of the same bits as you could have on your own servers, too. In the case of Dynamics 365, you’ll be mostly getting the latest versions of CRM and AX/NAV from the Microsoft cloud.

    “Ok, so we’ll have a new SKU to purchase Dynamics products from the cloud. A bit like the earlier bundles for Sales Productivity then, where you bought CRM, Office 365 and Power BI for a discounted price. Got it, can I now go back to chasing nearby Pokémons with my phone ’cause I’d really want to catch them all?” Well, if you ask me, I think you should look a bit deeper into the Dynamics 365 story to understand how it really will impact CRM as a product as well as the ecosystem around it. I too was initially a bit skeptical about this whole thing when reading the first press release from Microsoft, but the more I’ve investigated the pieces of information available at this early stage, the more I’ve started to believe that what we have here isn’t a mere product marketing stunt but rather the next major chapter in the story of Microsoft Dynamics applications.

    Satya’s Masterplan

    One year ago when Microsoft announced that they were going to tear down the silo of MBS (Microsoft Business Solutions) and merge Dynamics product teams into C+E (Cloud and Enterprise), Nadella said he wanted to “enable the company to accelerate ERP and CRM work and bring it into the mainstream C+E engineering and innovation efforts.” It took a while before saw what this “mainstreaming” really means, but I believe Dynamics 365 is the major output from this process that started with the restructuring. It is elevating the Dynamics product offering from being just an app you can order via the Office 365 portal and turning it into a proper destination of its own.

    Back when I was starting my first gig as a Dynamics CRM consultant in 2010, I distinctly remember the day after I had returned home from the Convergence conference in Prague. I was about to sign the contract with my new employer and was riding in a cab with my boss to be, catching up on the latest tweets (with my Windows Mobile 6.0 device and whatever apps we had back then). I came across Microsoft’s announcement of Office 365 and said to him “have you heard about this already, might be kind of a big deal for the business”. Well, the business of my upcoming employer was largely about hosted MS business applications and it turned out to a big deal indeed, as the rationale for offering local CRM or Exchange instances eroded much faster than most service providers were willing to understand – let alone for them to adapt to this new reality.

    Connecting_your_solutions_small

    How I see this relate to the recent Dynamics 365 announcement is that when you stop to think about the tools we work with these days, it’s not just about the cloud as a delivery channel. If it were enough for the customer organizations to just use their business applications via a browser, from a server environment managed by someone other than your own IT department, then we’d still probably be happily working in the BPOS era of application servers hosted by “someone out there”. In reality, it rarely is about the servers or even the server application bits. It’s about services: how they can be consumed and how information flows between them. Sure, someone of course needs to set up the services, but once that problem has been solved (e.g. Dynamics CRM Online removing the need for manually installing customer specific CRM instances) it’s time to start solving problems higher up in the value chain. This, I believe, is what Microsoft is aiming to achieve with Dynamics 365. Making it more than just the sum of its parts, by lowering the barriers between the apps and encouraging customers to build solutions that consist of a network of apps – from MS and ISVs. The new AppSource portal is therefore a very important part of the Dynamics 365 story (even though at launch time it’s not yet that much better than the infamous Dynamics Marketplace).

    Front to the Back with Dynamics 365

    Once launched later this year, Dynamics 365 will be available as two editions. The Enterprise Edition will be made up of Dynamics CRM modules and Dynamics AX, whereas the Business Edition is being built on top of Project Madeira (brand new cloud version of Dynamics NAV, from what I know). Details about the pricing haven’t yet been disclosed, but at WPC there were slides shown that outline the different plans that the Enterprise Edition will offer. Since the Business Edition is clearly a lot more “work in progress” at this stage, and because it might not even contain any of the Dynamics CRM functionality (if I read the WPC materials correctly), it’s best for us to focus on analyzing the Enterprise Edition.

    Dynamics_365_vs_current_SKUs

    Looking at it from a CRM perspective, the platform formerly known as Dynamics CRM is being broken down into smaller modules that can be purchased separately. We’ve already seen how the recent CRM Online enhancements like Project Service and Field Service have been introduced as separately licensed modules (and their trials are now distributed via AppSource), but with Dynamics 365 this will be taken even further. A sales user can be assigned only a license to the “Sales app”, rather than needing a “CRM Online Professional” license to manage their opportunity pipeline. Even without knowing the price points for per app licenses in Dynamics 365, it’s easy to see that the barrier for consuming application features from the cloud will be lower when you can only select what you want. In the on-premises world the traditional “all you can eat” model of Dynamics CRM licensing probably made sense, but if Microsoft now has the option to make their cloud service available in various different shapes and sizes, why wouldn’t they?

    Even though there will be more individual apps to choose from, the main value proposition of Dynamics 365 is in the possibility of making the whole end to end business process visible to the users. Traditional licensing silos between the front office CRM system and the back office ERP system have often led to scenarios where employees need to ask another employee to check information from a system they can’t access – or needing to work with limited snapshots or static reports rather than the real-time dynamic data from the business application. Microsoft surely recognizes this as a great opportunity to move customers gradually away from using legacy ERP systems by offering a cloud platform where the licensing model is no longer determined by the server application barriers but rather the workloads of the users. The Enterprise Edition contains a “Dynamics 365 for Team Members” plan that covers read rights to each and every application, from marketing to operations (the ERP part), which specifically addresses the information silo issue.

    How Can It Actually Work?

    Knowing that all the CRM and ERP applications under the Microsoft Dynamics umbrella have been completely separate products with little in common when it comes to architecture, how is Microsoft going to turn these into a single business application platform all of a sudden? Well, that is the billion $ question to which we don’t yet have an exact answer, but let’s speculate a bit while we await for it.

    Microsoft has announced that underneath the Dynamics 365 apps there will be a platform layer called Common Data Model. On the official Microsoft Dynamics blog this CDM is described with the following words:

    The common data model is a cloud-resident business database, built on years of experience with our enterprise customers. It will come with hundreds of standard business entities spanning both business process (Dynamics 365) and productivity (Office 365). The standardization and consistency of schema enables partners to build innovative applications and to automate business processes spanning the entire business process spectrum with confidence their solutions can be easily deployed and used across Microsoft’s entire customer base.

    Hmm, okay, so there’s at least going to be a new database in addition to the application specific databases of CRM and AX, as we can see from the Dynamics 365 architecture image below. The promise of a “standardized, consistent schema”  also implies that at least the OoB entities will be connected across CRM and AX without any additional configuration effort required. Now, how exactly the integration of custom entities can be configured, or how the platform will handle the business logic involved in each connected app is something that isn’t very clear at this point.

    Dynamics_365_architecture

    Surprisingly enough, the most detailed information about CDM was first released not via the Dynamics product blogs but on the Power Apps blog. The post PowerApps and the Microsoft Common Data Model gives us the first practical view into what functionality the CDM part of the platform is expected to deliver. Some examples:

    • CDM will encompass not only CRM and AX but also the data model of productivity apps like Outlook.
    • CDM will include complex data types like address and auto-numbering.
    • CDM will contain features familiar to CRM admins, like field level security and auditing.

    Dynamics_365_Common_Data_Model

    Once the CDM Preview arrives in August we’ll hopefully get to explore the contents and functionality of this data model via the PowerApps Studio at least, even though Dynamics 365 itself will probably arrive a bit later. On another PowerApps blog post, it was announced that there will be a Dynamics 365 specific SDK, which should be launched in preview mode before the year ends.

    Why does the PowerApps team work so actively in bringing this information available? There’s a simple explanation: PowerApps, Power BI and Flow are a fundamental part of the Dynamics 365 product offering. They are included in the Enterprise Edition plans and they form the new business application platform that supports the 365 apps on top of them – to the extent that there is now even a dedicated site to describe the capabilities of these three products.

    Business_process_orchestration_small

    Since business process orchestration is fundamentally a cross-application domain, it makes a lot of sense that you don’t only rely on the workflow process engines found inside applications like CRM. Also, if you’ve tried to leverage these three tools with current Dynamics CRM Online application, it soon becomes obvious that working with the relational data and specific data types of CRM is not where Power BI, PowerApps or Flow currently excel. Therefore what CDM as part of Dynamics 365 can offer for the business process orchestration tools to make the interaction easier is surely very welcome.

    Farewell to On-prem

    All of this you see coming available for Dynamics 365 is exclusive to the Microsoft cloud. Period. While you could of course take many of the individual technologies like Dynamics CRM and build custom integrations to your own servers, a single commercial offering licensed and managed by Microsoft will not become available for that environment.

    In the past Microsoft has been using the “power of choice” as an argument on why investing in Dynamics CRM technology is a safer choice than going with a cloud-only platform like Salesforce. Six years ago when CRM Online was launched that certainly was an important benefit of the MS stack. Even though the business world is a lot more “cloud ready” today, there still are many scenarios where a service hosted outside the borders of the customer’s country is not a valid option. Nevertheless, the power of choice isn’t such a clear differentiator anymore if pretty much everyone is making the same choice. For those organizations who are able to move ahead at the speed of cloud, there just has to be a fast track available. Sure, CRM Online has already been developing at a faster release cadence than CRM on-prem, but with Dynamics 365 the ties are officially cut now.

    AX_cloud_firstIt isn’t a completely new situation, even within the Dynamics product family. From what I know about Dynamics AX, the latest “AX 7” version has been designed not only as a “cloud first” but pretty much “cloud only” approach. The application architecture has been heavily redesigned and now relies on services from Azure, so it’s not something you could ever install on a Windows Server. The strategy for on-premises support is based on the Azure Stack product, which will allow customers to run a version of the same services on their very own servers. (In related news, the Azure Stack release plans have recently been revised: it won’t arrive for another year yet and it will require specific hardware when it finally does.)

    Does the announcement of Dynamics 365 mean that no investment will be made to on-premises Dynamics products anymore? No, at least according to the official statement from Microsoft. CRM, AX and NAV, meaning the in-house application layer of Dynamics 365, will continue to be developed, sold and supported. For example, AX 2012 will be supported until 2021 which gives some indication about the expectations Microsoft has on when existing on-prem ERP customers would really be able to adopt the new cloud offering of Dynamics 365. I bet that the hybrid scenarios will be taken into consideration as well when driving the adoption of the 365 cloud service.

    Still, if you’re looking for the latest Microsoft product innovations and integrating your business applications with the coolest new services, it’s hard for me to see how remaining in the on-prem land would be a viable option anymore. While new server versions will still keep on coming, having a new product feature that doesn’t require you to be running Dynamics 365 is probably going to become an exception rather than a rule. Already many of the latest CRM Online features have been built on Azure based services (offline sync for mobile, Relevance Search, machine learning in product recommendations) and the 365 cloud platform is going to make it even easier for MS to hook these things up to their business apps. The gap is just going to grow wider and wider.

    What Will Happen to XRM?

    Looking at the Dynamics CRM application specifically, there’s been a reasonably good parity between the Online and on-premises editions when it comes to the core XRM platform features. With all of these new integration points and platform layers now being developed for weaving together the complete Dynamics 365 service, it raises the question of whether the “core” really is inside XRM anymore or is it being actively replaced by something completely different?

    While I don’t think Dynamics 365 signals the death of XRM, it certainly does give a clear indication about how it is positioned in Microsoft’s new business application platform architecture. It’s what the individual apps are still built on (sales, project service, field service, portals, Voice of the Customer and so on) but it may not deliver the full user experience anymore. The users may interact with data through a purpose built PowerApp rather than the standard CRM client apps. The business process automation may jump across different apps via Flow, with CRM workflows handling only a part of it. The process metrics will frequently be monitored and analyzed with Power BI charts and not the CRM dashboards. I don’t think the 365 platform will overnight replace too many of the traditional XRM features, but it will undoubtedly set a boundary for feature development at Microsoft’s end if the new capabilities could be leveraged also outside the XRM apps.

    The arrival of a Dynamics 365 SDK means that the wider ecosystem of partners and service providers who wish to connect with customer organizations using Dynamics 365 may well choose to integrate their apps via this new API and not the XRM specific Web API, as modern and RESTful as it might be. Without knowing the exact services available in 365 it’s of course impossible to say yet what functionality would move to the CDM part of the platform, but since the whole point of CDM is to make it easier to connect cloud apps together, that’s where much of the development effort will naturally gravitate towards. Extending a specific 365 app like Sales with new UI level functionality will surely still require XRM developer skills, similarly as modifying the Operations app’s logic requires knowledge of X++ (the programming language for AX). Now, if you’re an XRM developer with no experience of AX, imagine being tasked with building a custom feature that needs to talk with both the Sales and Operations apps. Would you rather dive right in to learning X++ or start by exploring the common 365 platform SDK instead? Exactly. That’s how our solution design practices get disrupted: first gradually, then suddenly.

    XRM_cow_managementHonestly, the direction that Microsoft appears to be taking with Dynamics 365 makes perfect sense to me, and I see it as a brighter future for Dynamics CRM to be a part of this cross-application business platform – rather than a self-sustained “any relationship management” toolkit. No matter how awesome it is, XRM can’t do it all. It could certainly use a lil’ help in certain areas where Microsoft has more advanced tools available. If the new platform gives a wider set of options for me when designing solutions for customers then sign me up for it! Even if the administration experience or depth of functionality may not be on quite the same level when working with a set of connected applications sitting on top of CDM rather than a single XRM solution, it’s probably a price worth paying in the long run.

    Dynamics 365 explains a lot of the shortcomings with the current pieces of the MS cloud puzzle. Like: why must Power BI try and consume the CRM Online data via the slow OData endpoint when Microsoft could surely open up a shortcut between their two clouds? Well, here you go! The answer is that instead of taking the easy way out, a brand new Azure based architecture has been designed to support the current and future needs of CRM and other cloud business apps. It’s impossible for us outsiders to know all the different dependencies that the Dynamics 365 product strategy has had on the CRM feature roadmap, but it’s easy to imagine quite a few of them. I’m not expecting the floodgates to open with the initial release of Dynamics 365 this fall (more likely it’s a preview than a fully baked V2 platform), but I do expect the pace to pick up as the new strategy is executed on the commercial delivery side.

    How we’ll be able to transition an existing organization from Dynamics CRM Online to Dynamics 365 and connect to the Common Data Model is going to be a big question. I’m not worried about the application functionality really, as it might well be just a simple CDU experience of upgrading to the latest version. On the data model side, If there are some “best practices” implemented in CDM that don’t align with the customer specific entity model and attributes, then some refactoring of the existing CRM solutions may well be needed. While there may not be an immediate need to switch over, in the long run I expect there to be a number of services that target CDM specifically which cannot be used with a “legacy” CRM Online environment. As funny as it sounds, we may have indeed reached a point in the Dynamics CRM lifecycle where even the cloud based environments need a bit of a “reboot” to reach the next generation business application platform compatibility.

    It’s Always a Journey

    If we look at the history of Microsoft’s CRM software starting from 13 years back and analyze how the platform has evolved over time, we can see that up until the past couple of years, the progress made has been fairly product focused. Setting aside the app vs. platform debate on what the product is really about, the core package of what a Dynamics CRM server does has remained the same on a high level since the start, and I’d assume the story on the ERP side isn’t radically different either. It’s the world around it that has transformed into something quite different, and it’s this interface with the outside world of other apps and services where the most exciting stuff is happening.

    On the product code base level, Microsoft tried to merge their in-house CRM with the four acquired ERP products already over a decade ago with Project Green. As we now know, this never resulted in any “One Microsoft Dynamics” type of a platform nor new products being brought to market. When Satya Nadella (CVP of MBS at that time) was asked about why the ambitious initiative appeared to have stalled in 2007, his response was “we don’t have the goal of just convergence for convergence’s sake”. I can believe that while technically not an impossible task, there just wasn’t a clear enough business benefit for the customers to make them want to move into a single code base product merged from five existing applications, knowing how disruptive the migration could have been for their day to day operations. Fast forward ten years to the Dynamics 365 announcement and the business case now looks a lot more solid in this cloud era. Although the initial release of Dynamics 365 this fall is likely to be more of a preview than a fully functioning business application platform, it will already be a lot further in terms of visible platform harmonization than what Project Green achieved.

    While it’s easy to label almost anything in the IT business these days as “digital transformation”, there are quite a few signs that Microsoft is serious about aligning their set of different cloud products into a comprehensive toolkit for companies wanting to build and operate those digital business processes. How transformative will the end results be is something that we’ll see in time as the Dynamics 365 platform materializes. Whatever happens, Surviving CRM will be there to report on the progress of this journey!

    For a summary of what other community members have shared around the Dynamics 365 announcement and sessions from WPC, please have a look at this Sway presentation I’ve compiled from the #Dynamics365 tweets: