CRM software packages often don’t quite fit the relationship an organization wants to maintain with its customers (or other constituents, such as citizens or church members). But the path to customizing a package, or custom-developing a system of your own, is laden with pitfalls.
PROBLEM: A packaged product might be a good starting point, but not meet your exact needs.
RESOLUTION: Selectively customize modules of a packaged product, or add your own modules, but do it carefully.
You should critically review whether a unique business process that would require custom development is really superior to the default business process supported by the packaged software, says Gartner analyst Brian Prentice. Focusing custom-development energy on a commodity business process, such as contact management, that is bundled with CRM packages isn’t the most productive use of your development organization, he says.
“You almost need to do an ROI [return on investment] assessment of that specific customization,” agrees Robert Beach, a Chicago-area technology consultant. “Is it really going to deliver the value to make it worthwhile?”
PROBLEM: Poorly planned additions to a CRM package may not work with future releases of that product.
RESOLUTION: Ensure that any supplemental programs are written to work with the vendor’s application programming interfaces. APIs are the formats programmers use to ensure that an application can communicate with an operating system or database. And vendors can usually be relied on to maintain the compatibility of APIs between versions of their software, Beach says.
Developers may be tempted to bypass those APIs and write programs that directly access the underlying database of the CRM package, thinking that they know relational database programming better than they know the APIs, he says. But in that case, the vendor makes no guarantees that the database structure will not change, causing software that had been written to work with the previous version to break.
PROBLEM: If you can’t get the features and functions you need for an off-the-shelf or customized package, you may be tempted to build your own in-house.
RESOLUTION: Make sure you have the required software development and systems architecture expertise in-house before venturing down this path. To build a CRM system based on the Java development platform, for example, you’ll need a bunch of Java programmers. To make sure the system is well designed, rather than improvised, you’ll also need to bring in experts in software and data architecture, data security and project management. And once the system is built, you’ll need database and system administrators, as well as help-desk staff, who are trained to maintain and support it. So the investment in a custom system can easily run into the millions over a year or two.
PROBLEM: An architectural misstep may doom the long-term viability of your homegrown system.
RESOLUTION: Make the systems architecture as standard as possible. This can mean either following the lead of dominant market systems software players, such as Microsoft, or incorporating multivendor industry standards, such Java or the Extensible Markup Language for standardized encoding of customer data.