By Daniel M. Foody, Chief Technology Officer, Sonic and Actional Products, Progress Software
“Our processes are bulletproof. Nothing gets into production that doesn’t go through the proper and complete approval process.” Famous last words uttered by far too many enterprise architects. Some of them actually believe it’s true – others think that by hoping it’s true, maybe, just maybe, they can make it true.
The reality, as any line-of-business developer can attest to, is much less clear cut. The challenge is that governance only gets harder the more an organization moves towards a service based architecture.
One of the first myths that drives a number of enterprise architecture governance decisions is that adding more rules reduces risk. That may be true in theory, but in practice it actually increases risk. The reason is simple: complexity increases risk. A perfect case study of this, one that most people have probably experienced, is password control policies. As many IT organizations have attempted to “improve security,” they have done things like disallow use of dictionary words in passwords, force passwords to change often, disallow reuse of older passwords, etc. The net result is that, because of the added complexity, more people write down their password on a post-it note. And written down passwords increase the likelihood of a security breach while, at the same time, making it harder to detect the breach. Increased complexity increases risk.
Avoiding the Complexity Pitfall
There are two ways to address this complexity issue:
Have fewer rules, but make them more important rules
Automate compliance with the rules
In terms of gauging the importance of rules, I’ve seen a number of cases where architects put too much emphasis on the technical side and too little emphasis on the business side. For example, let’s look at a technical requirement: the need to promote reuse. This often leads to many rules: Rules around use of certain schemas, security mechanisms, designing a service interface, any many others. Reuse is no doubt important so it makes sense to have rules to promote it. But, let’s contrast this with a business requirement: regulatory compliance – whether it’s Sarbanes-Oxley (SOX), European Union privacy regulations, HIPAA or even Visa’s Cardholder Information Security Program (CISP). These lead to a large set of rules as well. So, let’s say you had to choose between rules to promote reuse or rules to ensure regulator compliance. Would you choose the rules that have no directly quantifiable upside and, at worst, lead to increased cost and reduced agility? Or, would you choose the rules that would keep you from going to jail, getting fired, getting fined or from having your company get shut down? When put in these terms it’s easy to see which rules are most important.
For IT professionals today the question is "What kind of platform should we adopt in
order to take advantage of the new SOA reality and transport...Learn More