Make the most of Customer Relationship Management (CRM)

CRM best practices

Contact Us

Contact a Microsoft Representative

Your satisfaction Matters!Let us know your thoughts about your Microsoft experience.




Focus on business

Wanted: Customer for long-term relationship

Related Links

Microsoft CRM 3.0 SDK

Sonoma Partners Microsoft CRM blog

CRM Best Practices

Horror stories about customer relationship management (CRM) deployments abound. Here's how to avoid being one of the casualties with CRM best practices.

In summary:

Business process analysis will help you select the right CRM vendor and implementation partner, and also determine customization and user needs from the beginning.

It is worthwhile to take the time to scrub your data before it is ported into the CRM system.

Understand your sales and marketing workflow before you decide which applications to integrate with the CRM, and how they should interface.

When Absolute Software, a developer of security tracking systems for laptops based in Vancouver, British Columbia, first installed a CRM application, it did what many midsize companies would have done: the company's information technology (IT) group customized the application to make it more appropriate to its business. There was only one problem. The next time the developer upgraded the application, the performance of the customized modules decreased so much that the application became unusable, and the company ended up uninstalling it, says Risa Zaleski, Absolute's director of operations, whose various responsibilities include technical support, account management, sales support, and some IT work. Absolute later successfully implemented Microsoft Dynamics CRM 3.0.

The moral of the story is not that you should never customize an application. Indeed, some customization is expected. But when it comes to deploying CRM software, there are some technical best practices worth following, particularly in the areas of development and testing, data migration and integration, and, perhaps most importantly, user needs.

1.

Map out your sales and marketing processes. Even before technical work begins, experts recommend making sure that the business operations team has mapped out which processes will flow into the CRM application. "When we ask customers what they would have done differently, that's the number one response," says Rob Bois, a Cambridge, Massachusetts-based research director for AMR Research. "Based on our research, companies that put the system in without analyzing the process are doomed to fail more than 90 percent of the time." This is especially true in industries where the sales and marketing processes are unique, such as the ever-changing trade promotions rampant in the consumer packaged goods industry. If you fail in this regard, you will most likely end up with an application that doesn't correspond to the needs of your business. In addition, business process analysis will help you best choose a system and vendor partner, as well as identify any customization that may be required later on.

2.

Determine user and reporting needs. In addition to thinking about business processes, CRM consultants recommend that developers find out which reports customers will want from the system. "We've had customers find that data they wanted in their reports isn't being tracked at all because there was no request to do so at the beginning of the project," says Mike Snyder, principal at Sonoma Partners, a Microsoft Gold Certified consulting firm specializing in CRM that is based in Chicago, Illinois. This forces developers to backtrack later in the development cycle, when there's less room for error. "Don't push off reporting until the very end," Snyder says. More generally, getting input from users about how they'll be using the system will help focus the development project.

3.

Create separate testing and development environments. Because in many organizations CRM is mission-critical, consider the enterprise best practice of building both a development and a test environment, suggests Long Duong, CRM practice principal for Interlink, a Microsoft Gold Certified partner with several offices in the western United States and also just outside Mumbai. Particularly because a complex system such as CRM has the potential to integrate with other systems, making it prudent to test data exchange and dependencies for accuracy prior to putting it into production—just to ensure that the new system will not have any impact on users' day-to-day activities.

And always test before going live, adds Rob Bakkers, senior associate consultant in CRM, based in the Amsterdam, Netherlands, office of Microsoft Gold Certified partner Avanade. "Put data in the system and see how it performs when multiple users are working with the system."

4.

No more dirty data. Of course, that brings up the challenge of where the data is coming from, and that can be a major headache in and of itself. If it's the first time your company is setting up a CRM system, and especially if your business is small or midsize, it's likely the customer data is coming from spreadsheets, contact managers, and databases. The last thing you want to do is populate a new application with "dirty"—that is, inaccurate or duplicate—data.

"People assume that you double-click something and the CRM system is populated hunky-dory, but you never want to migrate the old data exactly as it was," says Snyder, who recommends creating an interim Microsoft SQL Server database in order to aggregate and clean up the data. For one thing, you're always going to find not only duplicate ways of referring to companies—for example, Federal Express and FedEx—but also ways in which people side-stepped the limitations of the system, such as grabbing an unused address field for an alternate telephone number. Snyder recommends taking advantage of the new Data Transformation Services (DTS) in the latest version of SQL Server. That will identify most of the duplicates, he says, but the results should still be reviewed by a person to ensure as much accuracy as possible. "It's time-consuming, but worth it," he says.

5.

Think before you integrate. Eventually, there's the challenge of integrating CRM data with other applications, especially the enterprise resource planning (ERP) applications that contain billing records. The advantage of this integration is that you can gain a complete picture of your customers, including not just data regarding their sales and order history but even information on how they came to be a customer. Duong stresses that at this point, just as in the beginning, IT employees need to adjust their thinking. Integration is more than making systems talk to each other; it should also mirror how your employees work with customers throughout the life cycle of their interaction with your company—that is, from a prospect to a customer with support, replenishment, and cross-sell/up-sell needs.

For instance, a salesperson may use the CRM system to devise a quote, but the data in the quote has to be backed up by real pricing, so there needs to be a link to the ERP system. Similarly, when the prospect becomes a customer, the billing credit information has to be uploaded into the ERP system. "As you look at that flow through the system, you see the interaction points and why the information has to flow both ways," Duong says. "If you put a credit hold on a customer in the billing system, that information had better show up in the CRM system if that customer calls in for technical support."

Duong and others recommend using either enterprise application integration (EAI) or Microsoft .NET-based Web services to create what are called loosely coupled systems (so that applications can talk to multiple systems versus rigid, point-to-point interfaces). "That's a good practice," he says, "because once the systems are integrated, you can use the CRM application as a custom dashboard to query back-office systems."

Even better, by using Web services tools, you can avoid the customization nightmare that Risa Zaleski faced at Absolute Software with that company's first CRM system upgrade. Snyder notes that Microsoft Dynamics CRM 3.0 comes with a software development kit (SDK) that lets you customize the application. "You play by the rules in the SDK, and chances are good that an upgrade will go smoothly," he says. If you're writing custom code, you're not accessing the SQL Server database directly, but rather a Web service that's talking to the database. "If Microsoft wants to change something in the underlying database, it'll be transparent to the custom code," he adds. "The Web service provides a level of abstraction that protects you."

Howard Baldwin is a Sunnyvale, California-based writer contributing to the Microsoft Midsize Business Center.



Was this information useful?