Cloud computing needs governance to be successful. If you think about it, at the end state of our architecture, we'll have thousands of services and data elements under management, and thus need to control how they are accessed, added, deleted, and altered. Therefore, we need an approach, processes, procedures, and technology -- and that's called SOA governance.
The definition of governance depends upon whom you’re speaking with. In the world of enterprise architecture, governance means control or to mandate the use of standards and approaches -- almost a management concept. In the world of SOA, simply put, governance means designing, building, testing, and implementing policies for services, as well as monitoring their use.
Governance as related to service, or service governance, is most applicable to the use of cloud computing since we are basically defining our architecture as a set of services that are relocatable between on-premise and cloud computing-based systems. SOA is the approach here, and thus SOA or service governance is the approach and the technology we'll leverage to manage the services within the enterprise and cloud.
Policies in the context of SOA, and thus cloud computing, are declarative electronic rules about what can be done to a service and by whom. This includes:
- Who can access the service
- What they can do to the service
- How the changes to the service affects other services
- How changes to the service affects applications
- Basic security
- Links with services testing
- Service discovery
- Service delivery
- Setting and maintaining appropriate service levels
- Managing errors and exceptions
- Enabling online upgrades and versioning
- Service validation
- Auditing and logging
This is a complete approach and system to make sure the deployed services do what they should do, and are monitored and controlled from a single centralized utility…service governance. Service governance is the concept, the approach, and the technology.
Trust me on this one, SOA governance is going to be critical to the success of cloud computing.