I summarized day 1 and day 2 of Zapthink's LZA SOA Bootcamp. This post will summarize days 3 and 4 and provide my overall assessment of the class. The last two days covered topics like testing, governance, SOA Pilots, BPM, funding, and pitfalls. Here are some key take aways:
One step at a time. Just like establishing an EA program from the first time, you need to start small, iterate, make adjustments, and move on to the next challenge. Implementing SOA is a long journey. Don't try to do it all at once!
Abstraction is the key. Your services should be vendor independent (ex: should run on any ESB without changes to the service), business process independent, database independent, etc. If this is not the case, then you are not doing SOA. Most likely, you are doing ABOS (a bunch of services).
The "Tipping Point" - If you do SOA right, you will reach a point where you shift from creating services to consuming services. When you find that you are spending most of your time assembling SOBAs (service oriented business applications) then you know you have achieved SOA. Let the Lego building begin!
Start with a pilot. Don't forget that governance and architecture should be piloted as well. Don't just pilot services. It takes services, governance, and architecture to create SOA so don't leave any of these out of your pilot.
Design time governance - Ensure that team members are following best practices that apply to services. Governance should not be a burden and a ton of paper work. It should be value add and help the team build a true service oriented architecture. Design time issues include versioning, metadata management, policy management.
Run time governance - Enforce and monitor run time policies and SLAs. Service development doesn't stop when a service is deployed. The service lifecycle continues through run time. We must plan for ongoing change of services. Run time issues include service availability, policy enforcement, SLAs, controlling total cost of ownership (TCO).
Don't test the architecture - Test the individual components and how they integrate together. Divide architecture into domains and verify the domains. Things you need to test: services, security, business processes, integration, and also the governance. Services should run without dependencies. Test services across multiple platforms and test for abstraction.
Funding and the business case - Don't talk about the technology, talk about the business problem! Here is how I sold SOA at my company. Key drivers are reuse, greater visibility into business processes, business empowerment, business agility, lower integration costs. Create a roadmap and estimate the each deliverable along the way. Don't forget to fund the organizational changes, training, and support.
SOA Pitfalls - Don't let the vendors or consultants drive your architecture. Create versioning policies. Without these you may not achieve loose coupling because you might break the contract your services have with their consumers.
Organizational challenges - Here is the biggest challenge of them all. You can always find a bunch of smart people who can figure out the true meaning of being service oriented. But how can you make people change? Remember the days of trying to get mainframe developers to adopt client server? Get ready to live those days again. Since SOA blurs the lines between applications, middle managers may look at SOA as a threat. Typically, the architects do not have the enforcement power/authority needed to enforce best practices. This is a major challenge with SOA.
Still maturing - SOA best practices are very dynamic. This technology is still maturing and the vendor tools and standards are still evolving.
What's next? - Web 2.0, Enterprise Mashups, and complex event processing all are natural extensions of SOA.
Final Summary -
This was an outstanding class. I highly recommend this class for any organization that plans on tackling SOA. Jason Bloomberg was a fantastic teacher who kept us all awake and interested for four days. The Jeopardy exercise at the end was a nice way to finish off the bootcamp. We had many hands on group exercises and student testimonials that helped balance the content between slides, discussions, scenario planning, and lesson learned. This class was some of the best money I have spent to date on my SOA initiative.
Post Comments (Atom)