Let's begin our discussion around custom extensions by discussing why they are important and what some of the correct and incorrect approaches are. We will then have future posts that go into specific Pro’s and Con’s of different custom extensions for Microsoft Dynamics CRM 4.0.
Custom Extensions Discussion
Microsoft Dynamics CRM 4.0 is designed to be highly configurable and highly extendable, allowing your company to build a solution to fit your business processes. The base configuration tools within Microsoft Dynamics CRM 4.0 allow your business to closely capture many processes using CRM without any coding or complex configuration. Microsoft Dynamics CRM 4.0 also allows your business to expand business processes and requirements through custom extensions in addition to the configuration tools. This allows your business to incorporate business process facilitation that otherwise could not be captured in CRM, would be cumbersome for users to manually facilitate in a CRM system, or integrate across multiple systems to create one continuous process.
Custom extensions can add value in the following circumstances:
- Your businesses processes do not align with standard SFA/Service/Marketing processes,
- The information users need for certain processes is not or should not be captured within your CRM system,
- The data requirements of your business processes are too complex for a user to manually enter and the potential for automation exists to streamline data entry.
It is crucial to understand the extent of what is possible with custom extensions when designing your business' CRM system to ensure better facilitation of your business processes. It is also important to know the pros and cons of implementing a given process using custom extensions versus built in customization tools. Many of the custom extensions and built in tools can accomplish the same goal with different benefits and drawbacks that should be taken into account when designing your custom extensions to facilitate your business processes.
Incorrect Approaches to Using Custom Extensions
There are many ways to incorrectly approach the use of custom extensions within Microsoft CRM 4.0. Some incorrect approaches to the custom extensions seen in the market are:
- Designing your Microsoft Dynamics CRM 4.0 system without a good understanding of what is possible by leveraging custom extensions to better facilitate your business processes
- Building potentially unnecessary custom extensions without spending adequate time to analyze your business processes
- Building custom extensions for their "coolness factor" alone without making sure it helps facilitate your business process -- if an extension does not help facilitate your business processes then you run the risk of distracting from the real work that needs to happen.
- Favoring one form of custom extension over another due to familiarity with the tool without understanding the benefits and drawbacks in relation to other options to extend Microsoft CRM
- Building an overly complex system that can overwhelm users or not removing unused items till later in your company's CRM evolution when users will need those functions.
Approaches to doing it right
The best way to approach the custom extension capabilities of Microsoft Dynamics CRM 4.0 is to first fully understand your business processes, specifically which parts of those processes are causing you pain or costing your business money. The next step is to build those processes into CRM using the base CRM functionality and then re-examining your system to see which pain points remain. Then, with a good working understanding of all the ways you can extend Microsoft CRM, design your custom extensions to relieve the remaining pain points while taking into account the pros and cons of each custom extension approach.
Comparisons of Different Extension Options
In the coming weeks we will post some blog entries with a quick comparison of a few of the different custom extension options within Microsoft Dynamics CRM 4.0. We will point out some of the tradeoffs between different options, but we will not compare every aspect or have an exhaustive list of all available custom extension options. We will add more comparisons as more content is finalized.
We hope to cover the following comparisons in the coming weeks:
- Workflows and Workflow Extensions vs. Plug-ins
- JavaScript Use
- Supported JavaScript vs. Unsupported JavaScript
- SiteMap vs. Security
- Workflows who should vs. who shouldn’t have access
- Hoss Hostetler