I just heard from Thomas Erl that the SOA Manifesto, crafted in Rotterdam in October 2009, now has 1,000 signatories. The goal of the manifesto was to finally bring some clarity and definition to the fragmented, confused and abused service-oriented architecture realm.
It was no small feat on Thomas' part to bring together the biggest opposing vendors -- IBM, Oracle, Microsoft, Red Hat, and Tibco -- into one room, and complete the task within three days' time. The manifesto also included independent parties, including Thomas, Anne Thomas Manes, Stefan Tilkov, Herbjörn Wilhelmsen, and the author of this blog post.
Just to refresh, here are the guiding principles of the manifesto, which certainly apply in enterprises moving to cloud as well:
- Respect the social and power structure of the organization.
- Recognize that SOA ultimately demands change on many levels.
- The scope of SOA adoption can vary. Keep efforts manageable and within meaningful boundaries.
- Products and standards alone will neither give you SOA nor apply the service orientation paradigm for you.
- SOA can be realized through a variety of technologies and standards.
- Establish a uniform set of enterprise standards and policies based on industry, de facto, and community standards.
- Pursue uniformity on the outside while allowing diversity on the inside.
- Identify services through collaboration with business and technology stakeholders.
- Maximize service usage by considering the current and future scope of utilization.
- Verify that services satisfy business requirements and goals.
- Evolve services and their organization in response to real use.
- Separate the different aspects of a system that change at different rates.
- Reduce implicit dependencies and publish all external dependencies to increase robustness and reduce the impact of change.
- At every level of abstraction, organize each service around a cohesive and manageable unit of functionality.
Some comments posted by signatories over the years:
"After all those years of SOA projects I'm a bit tired of explaining everyone that SOA is rather about principles than a technology... now I have a perfect summary of those principles."
"As a process developer for factory floor systems with 30+ years of software development experience, Service-Oriented Architecture seems to me the only way to tie factory floor systems together with quality management and ERP. By providing a consistent platform to implement abstraction layers and enable loose coupling, SOA brings the control of interoperability back to the factory managers. Thank you for providing a succinct articulation of the key elements of Service Oriented Architecture."
"SOA has the potential to unite businesses in constant flux, technologist seeking order, and the controlled chaos that is Agile development. My advocacy grows stronger daily, as does my humility at the task at hand."
"Technology and business goals should be aligned every time that we design our systems, define a way, an strategy a leaderships is essential to redefine the columns for SOA vision."
"Now that the sky is clear, it is time to fly."