SOA Quality and Governance: Satisfying the Metarequirement of Agility
In our book Service Orient or Be Doomed! ZapThink explains the metarequirement of agility that underlies every Service-Oriented Architecture (SOA) initiative: the requirement that the implementation of the architecture must be able to satisfy future requirements even as they continually evolve. A core challenge of SOA, after all, is building for change. If you had good reason to believe today’s requirements were permanent, you probably wouldn’t bother with the expense and complexity of SOA. What, then, is your metarequirement of agility? As we also detail in our book, it doesn’t make sense to expect that the IT organization would be capable of building systems that could deal with entirely arbitrary change, since such a requirement would be prohibitively expensive to satisfy. Instead, each organization will have to decide for itself precisely how much they can invest in order to achieve the level of flexibility they require their SOA implementation…

Read More

Quality SOA
Quality means far more than simply reducing defects. Fundamentally, quality means building something that meets the requirements of its users, now and into the future. Being defect-free is a necessary, but by no means sufficient criterion for a quality product. Software quality is no different. While many software quality assurance efforts focus on eliminating bugs, the bug-hunting process is only the starting point for software quality. The real challenge with software quality, as with any other quality effort, is in guaranteeing that the software meets the requirements set out for it. In an ideal world, quality assurance (QA) personnel would simply take the requirements document, use it to build a test plan, and run tests against that plan. Once the project passes all the tests, it’s ready to go live. But in the real world, requirements continue to evolve, both during projects as well as once the projects are…

Read More