February 08, 2011, 4:57 PM — Over the course of too many years, I've said that you can't make a user interface that's too easy for users. But cloud-based software vendors have essentially done just that. System setup is now deceptively simple, and too many sales pitches tell stories of how users can set up a cloud-based system themselves.
The problem is, users (and junior consultants) will feel empowered to set up cloud-based systems up without a plan or even a model for proper system execution. The cloud system's GUI will let them do so. A few months later, the system will be mired in bad data (that was too sloppily imported), a silly object model (that was too easily created), and a cacophony of business rules (that were never vetted).
Here are some important steps you can take in order to avoid pain later on.
Agile != Ready, Fire, Aim
Too many sins of omission have been committed in the name of Agile. Agile projects may be light on documentation, but they're supposed to be heavy on domain expertise, user feedback, and -- most critically -- technical excellence. So don't let anyone make the excuse that because the project is Agile there isn't time to think through classic IT issues.
In cloud CRM systems, some of the messiest novice errors come from a misunderstanding of the object model. Leads are confused with opportunities. Assets are confused with products. Entitlements are confused with contracts. By using these terms interchangeably, undisciplined users will end up asking for extra fields to be added in the wrong places.
Consequently, imports and ongoing data feeds will be scrambled. Because the data is in the wrong place, the users will soon ask for triggers to denormalize fields or replicate entire objects. Later, they will ask for functions and triggers that are essentially reinventing the wheel of standard CRM functionality.
This isn't just cloud CRM systems: nearly any cloud DBMS can be easily misconfigured with data models and entity relationships that won't serve the business need.
Not Just Semantics
The next trap for novice users of cloud CRM systems stems from imprecise definitions of the state and meaning of data. The UI will not challenge blurred or even contradictory definitions. While this issue is starkly obvious with pick lists (in the choice and number of values), it also comes up in the definition of record types and the setup of account hierarchies. Classic examples of blurred meanings include:
• What does it mean to be a lead? How many lead statuses are there (e.g., open, contact attempted, contacted, qualified, unqualified, dead)? • What does it mean to convert a lead? What are the qualification criteria required before conversion?
• When is an opportunity created? What does it mean to have an opportunity of $0 value?