Friday, September 12, 2014

Getting Your Developers on Board with Dynamics CRM

Many businesses and government agencies are adopting Microsoft Dynamics CRM to automate sales and customer service or even extending CRM for other business functions using the xRM approach. Even with all the features and benefits of Dynamics CRM, one group is not always thrilled about adopting it -- your software developers. 

Here are some thoughts and hints that may help adoption:

1. Stress the career advancement.  Learning a new product helps developers expand their skills and increase their value to employers -- so show your appreciation.

2. Tailor training to developers. Find a condensed training or self-study to learn how Dynamics CRM operates out of the box and then move on to development topics. 

3. Find a first project.  Don't start training until you have one or more projects to jump into. 

4. Identify mentors. Tap someone to lead the group and be a resource when people run into problems.

5. Collaborate as a team.  Work together to create development standards and style guides. 

6. Conduct group code reviews.  Show and tell or lunch and learn sessions can be a great way to bond the team and advance the knowledge of all your developers.

7. Burn the boats.  Stress that your organization will go forward with your CRM implementation regardless of complaints from the development team.  Don't allow platform debates to continue indefinitely.

Although it's always a challenge to learn new tools, Microsoft developers already know much of the coding techniques they will need to be successful Dynamics CRM developers.  Ulutimately, the xRM approach can make developers more productive and reduce boring .NET maintenance programming.

Tuesday, September 9, 2014

Dynamics CRM Developer Skills Self-Assessment Checklist

In order to deliver developer training on Microsoft Dynamics CRM, you need to understand where your developers are starting.  We use the list of relevant skills to have the developers assess themselves, writing years of experience in the second column.


Skill Area
Years
Exp
Searches and Views
 
Activities, Assignment and Audit
 
Using Charts & Dashboards
 
Sales: Lead, Opportunity, Quote, Invoice
 
Marketing: (Outreach) Lists, Campaigns
 
Service: Case, Schedule, Calendar, SvcActivity
 
Service: SLA, Entitlement, Rules,  Contract
 
CRM Wizard Reports
 
Security Model
 
Entities and Fields
 
 
 
 
Business Rules
 
Business Process Flows
 
Dialogs
 
Actions
 
 
Charts
 
Dashboards
 
Templates
 
SQL Server Reporting Services
 
CRM Installation (Version __)
 
Configuring Document Management
 
Customizing Site Map and Ribbons
 
JavaScript
 
Plug-in Development
 
.NET development with C#
 
.NET development with VB
 
Other developer tools:___________
 

Tuesday, September 2, 2014

Development Standards for Dynamics CRM

In xRM development, nearly every solution requires some custom development in order to extend Dynamics CRM for business scenarios outside CRM functions such as sales force automation and customer service.  As with any software development, strong naming standards will help your developers and testers save time and produce a better solution.

Here are some modest suggestions:
  • Be generous in comments inside your code.  The next developer who takes over will thank you.
  • Provide unified coding standards on the JavaScript libraries.
  • Use consistent file naming conventions.
  • Use only one .JS file per form for the form-specific logic.
  • Don't write JavaScript event handlers from the control property window rather than as part of the JavaScript file associated with the form.
  • Create standard common function libraries, to address common functionality across forms. 
  • Use JavaScript or business rules (in Dynamics CRM 2013) to show/hide/enable/disable controls rather than creating multiple similar forms.
  • Be consistent in designing the user interface, using the same control types with an eye toward the user experience.