17 von 20 Kunden fanden die folgende Rezension hilfreich
- Veröffentlicht auf Amazon.com
It's hard to imagine how anyone even remotely aware of SOA could be classified as a `dummy'. But, looked at another way, this book's title `SOA for Dummies' makes perfect sense. The authors - all from the consulting firm Hurwitz and Associates - strongly believe that SOA has the makings of one of those disruptive new technologies that have a way of sweeping quite suddenly into the broader market and abruptly upsetting the established order. If that turns out to be true, then at this moment we are all probably dummies about SOA and its future impact, and we better read this book right away.
But what makes SOA such a big deal? After all, the authors freely admit that the commercial SOA industry is just in its early stages. At the same time, however, they contend that SOA is important because it directly addresses one of the biggest problems that companies have today - how to make their computing environment nimble enough to keep up with the fast-changing needs of today's frenetically globalizing business environment.
Once upon a time, Hurwitz reminds us, your company's computers probably sat in a protected white room, serving a few privileged users inside your own enterprise. Those users were supported by a set of custom-built software applications sporting ugly, hard-to-use, text-based `green screens'. Each such application lived in its own little world or `silo', often hosted on its own mainframe partition or even a special set of hardware.
Maintaining and updating these applications was a major chore, and exchanging information among the various silos was a daunting task. Mergers and acquisitions compounded the problem, creating a veritable tower of techno-babble. As for opening those applications up to outside users, this was virtually unheard of and, as yet, thankfully uncalled for.
Fast-forward just a few years to our current Internet era. Your company's whole computing environment is now just a small fishing boat bobbing around in the enormous virtual, global computing sea called the Internet. Your outside users, particularly your on-line customers and partners, now probably rate a higher priority than your inside users, and they are almost certainly more diverse and numerous. Moreover, they expect to see a graphically attractive, client-centric view of your enterprise using a universal standard interface - the Web-enabled browser. What's a poor CIO to do?
Understandably, it is taking a while for most organizations to catch up. The big problem is not so much cranking out new Web-enabled applications. The real problem is breaking apart those old siloed applications, which unfortunately contain most of the critical data and business logic that the fancy new applications need to function. But building custom bridges between all the new applications and all the old ones they need just creates an even worse development and maintenance nightmare, as many organizations are now learning the hard way.
That's where SOA comes in. According to Hurwitz, SOA represents the best hope for reorganizing that legacy data and logic so it can be mined to meet the requirements of the new global computing order. With SOA, you break down the legacy applications into reasonable chunks based on functionality. These chunks are typically called `business services'. You provide each business service with a standard interface described in a universal interface language called Web Services Definition Language (WSDL). Using WSDL, those business services can be accessed readily by any new application (or other service) that needs them.
The WSDL interfaces actually live on a clever piece of middleware aptly dubbed the `enterprise service bus' (ESB). The ESB knows how to accept your service requests to a WSDL interface and forward it on to the actual business service. Since the ESB just happens to use Internet protocol, you can potentially allow access to your business service interfaces from anywhere in the world (subject, of course, to your security requirements). This solves the problem of how to make your brand new business services accessible to customers, suppliers, and partners, as well as internally.
The ESB also comes with a set of lower-level supporting system services that help you keep track of all the business services you have, identify the business services you need, identify clients for security purposes, enforce that security across the enterprise, manage complex transactions among service components, as so on. There are also `business process modeling' (BPM) tools to string together different business services into composite services, and to model business applications using those business services.
So far so good, and Hurwitz does a pretty good job explaining how all the various pieces of SOA are supposed to fit together. However, as the authors freely admit, the problem is that moving from no-SOA to SOA is not just a technical problem. According to Hurwitz, it requires a kind of `journey' for the whole organization. Ultimately, that journey will result in your company being much better able to respond to the fast-changing needs of today's maddening business world. To make this happen, however, both the `techies' and the `techno-dummies' in your organization will ultimately have to share a basic level of understanding about SOA.
That's because, as things stand today, most companies simply don't have much of an idea about how to organize, manage, or pay for the enormous effort that will be required to break down their existing applications into a SOA. As they do, they will also have to retrain their business analysts, developers and project managers to stop building custom, siloed applications, and start designing future applications around those reusable services. As if that wasn't enough, they'll have to figure how to do this without disrupting normal business operations. Good luck! Certainly that won't happen overnight, or for free.
Thankfully, this book doesn't gloss over these problems. Nor does it gloss over the fact that SOA itself is relatively new in the marketplace, and that overall adoption and maturity levels in the SOA industry are still in their infancy. The harsh reality is that, as an introduction to a new and potentially disruptive technology, this book has to straddle the line between being very enthusiastic about SOA, and remaining realistic about how difficult it can be - and how long it can take - to implement successfully. Remember: SOA is a journey, not a silver-bullet technology.
In this spirit, the book offers an overview of representative product and service offerings currently available from different SOA vendors. Of course, in this fast-developing field, these are likely to become out-of-date very quickly, and so they should largely be viewed as illustrative starting points. Similarly, the book provides a small set of end-user success stories, most of which describe a pretty early stage of SOA adoption. Unfortunately these stories come with little hard data, which makes them somewhat less compelling. However, this is not really the authors' fault: such hard data is notoriously difficult to obtain, especially for a new technology like SOA.
The book does make a noble attempt to help its readers evaluate how ready they are to take on SOA. For example, there is a cute 10-part `SOA Self-Test' that asks the reader to rank his organization's readiness (from 0-10) in a wide range of areas. Mimicking the personal self-tests we see in popular magazines, you total up your overall score to see just how `ready' your organization is for SOA. If indeed this is a book for `dummies', then this approach is in some danger of falling into the category of `brain-surgery self-taught'. However, if you don't take it too seriously, it's a clever way of getting people to start thinking about many issues they might not have otherwise considered.
In the end, the book makes clear that, no matter what hype they may read, companies interested in implementing SOA have their work cut out for them. On the technical side, they will have to grope through a minefield of arcane terminology and disparate offerings in order to figure out how to implement their SOA infrastructure. On the organizational side, they will have a steep education curve before they can seriously begin to ask - much less answer - the difficult questions about how best to manage the introduction of SOA across their whole company or business unit. Yes, Virginia, you may end up much the better for having SOA-sized your company, but there's no easy way to get there.
Therefore, and to its further credit, this book does not try to provide definitive answers about how to implement SOA, but rather focuses on providing enough information to help readers at many levels of a company begin to properly frame the right questions. After all, different organizations will have different needs and motivations for implementing a SOA, so there is no `one size fits all' path to SOA success. But, as the book itself declares, you have to start somewhere, and reading this book is a pretty good place to do so.
Michael Guttman is CTO of The Voyant Group, an international consulting group specializing in advanced IT technologies such as BPM, SOA, and MDA. He is also co-author of the book "Real-Life MDA" (Morgan-Kaufman, 2006).