Regular readers of my blog and web site know that I’ve been promoting a survey regarding the next generation of database change management technology. The survey asked about 15 different aspects of database change management and asked respondents to gauge which aspects were most important.
Reviewing the initial results of the survey, the most important aspect of database change management technology is to significantly reduce, or even eliminate the risk of errors during database deployment. 81.5 percent of respondents cited this as being very important. The response rises to 88.9 percent when you include folks who responded either important or very important.
These results were not unexpected, and really should not surprise anybody. Of course the most important aspect of changing database structures should be ensuring that the changes are made appropriately and without error. That is at the core of the definition of database change management.
But what else was viewed as important by the survey respondents? Well, the next highest rated aspect of database change management was being able to know who did what, when and why, to your databases. 77.8 percent rated this very important; the number rises to 92.6 percent when you combine those who responded either important or very important.
So, when viewed as the combination of the top two rankings, knowing who did what, when, and why, comes in as the top aspect of database change management. In this day and age of regulatory compliance, this is a reasonable expectation. As IT departments build compliance plans for regulation such as Sarbanes-Oxley, HIPAA, and PCI-DSS, being able to track who did what to the database when becomes a critical requirement. And it is not something that many organizations implemented in the pre-compliance era.
Other aspects of database change management that scored above 60 percent in terms of being very important included:
- Have total control over the database change process (74.1%)
- Enforce a manageable change policy to all databases (70.4%)
- Simplify database deployment to different environments (66.7%)
- Merge and deploy complex database changes, without risk and according to business requirements (66.7%)
- Comply to SOX and other regulations with detailed and customized audit trails (63.0%)
Perhaps almost as interesting as what scored high on the survey, was what scored low. Of the 15 attributes of database change management listed, only 4 were scored by any respondent as not important at all. And in each case, this happened only once. The three low scorers were:
- At all times know who did what to your databases, when and why
- Roll back to your golden copy with a single mouse click
- Have a full history of your database objects just a mouse click away
- Create database upgrades and downgrades correlated with your application code changes
Some of these low-scorers are baffling to me. For example, #4 is confusing; I’ve long thought that it was important to link database changes with application changes. I mean, would you really want your application that was changed to utilize new database structures, columns, etc. to remain in production if the database changes were backed out?
The first entry in the low-scorers list is a bit confusing, too. As we discussed earlier, it was also one of the highest scorers. Perhaps the single low vote was an anomaly?
The other two low scoring aspects I think may be able to be chalked up to a confusing question. Both of them are asking about important things, but couched in terms of a “mouse click.” Perhaps the respondents do want to be able easily to roll back database changes and to have a history of database objects, but it is not important for them to be able to do it with a mouse click? These could be Big Iron bigots who don’t want to do anything with a mouse click… perhaps a PF key?
At any rate, the survey clearly shows that there are numerous modern requirements for database change management. And there are gaps in what organizations are doing today to implement database change. I think there is definitely room in the market for a new era database change management solution that can reduce the amount of time, effort, and human error involved in managing change; operating heterogeneously across the major DBMSes at most shops; while at the same time assuring compliance as an integral part of implementing changed; offering integration between application and database change packages; and bringing additional check-in/check-out discipline to the realm of database change.
What do you think?
By the way, you can still take the survey if you are interested in sharing your thoughts on database change management. Here is a link.