PDC 2008 Day 3: Rapid Business Application Development with Dynamics CRM

29. October 2008

Presented by Andrew Bybee (Principal Program Manager, Microsoft) and Nirav Shah (Senior Development Lead, Microsoft)

This presentation is all about code.  Objectives in the session include:

  1. Demonstration of the rapid development of business applications with Dynamics CRM.
  2. Introduce new capabilities for extending business logic in Dynamics CRM "v.Next"
  3. Think "XRM" instead of CRM -- building on CRM as an application platform instead of just customer relationship management.


What's the value of CRM?  Well, it's really about simplifying the buy vs. build decision-making process.  Specifically, CRM's value is that it can:

  1. Quickly build prototype solutions to help approve the project
  2. Meet customer requirements with foundation for future releases
  3. Build credibility and trust with predictable delivery


Today, writing enterprise line of business applications requires interaction with many different components, including considerations for:

  • Workflow
  • Security
  • Reporting
  • Outlook /; Office
  • Communications
  • Configuration
  1. Configuration
  2. Deployment
  3. Scalability
  4. Manageability
  5. Extensibility
  6. Upgrade

If you're building your applications in .NET, all the aspects mentioned above will take away from the budget you may have to deliver a solution to your customer.

So, what's new in CRM 5?
Before PDC, Microsoft has been really tight-lipped on what's new in CRM 5 (or v.Next).  Nirav Shah previously worked on the CRM Online team, and now he's a Lead Developer on the CRM 5 product team.  Here's the short list of future items for CRM 5.

  1. Partial-trust code in hosted environments (a.k.a. "The Sandbox") - Basically, this functionality offers developers the capability to have a fully baked business layer in their CRM solutions.
  2. Transaction support
  3. Integration with Internet Service Bus and Cloud services (Azure)
  4. Single-sign-on support, impersonation and delegation via Geneva STS


The Sandbox
How does this work anyway?  Well, basically, the CRM SDK will keep the Pipeline Processing model from CRM 4, but will have a special partial-trust calling mode on the Sandbox server (a new server role in CRM).  The Sandbox host service (reached through a WCF channel) receives information from the CRM SDK about what code needs to be executed, what it needs to be executed for and what inputs are required.  Next, the Sandbox server will check the assembly cache for the code to be executed.  If a new execution is run, it's done in a separate application domain, locked down to only allow code execution by the hosted code from the Sandbox server.  The result?  A highly scalable, flexible extensibility model which allows for richer and richer application support inside CRM.

Solutions
Solutions allow a way to package a number of customizations in CRM together to provide a single solution (e.g. "Product Management Solution").  Solutions can be combinations of customizations from ISV.config changes, entity definitions, custom CRM configuration options and more.

Ribbon Support
CRM 5.0 will feature a new Ribbon-based UI in many places. 

Customizable Roles and Levels
An enhanced security subsystem now allows for new types of role definitions (not just permission definitions for user accounts).

Isolated Execution
New hosted plug-ins are managed through a new IIsolatedPlugin interface, which is identical to the CRM 4.0 plug-in interface.  In addition, plug-ins can now be registered for execution inside or outside a transaction context.  In the event that a medium-trust plug-in fails,

Transactions
Initiated by the server, managed by the server but completely administratable by the Plug-in through it's execution context.

Diagnostics
New tracing service lets developers track what's going on in a plug-in's execution and report on it later.  In addition, CRM itself monitors for plug-in and code health when hosing code in the CRM environment.

Want to find out more about CRM 5?  I'm sure more will be released over the next few weeks, but for now, I'd check out this great page on Channel 9.

Technorati Tags:

Development

Comments are closed