Sadiq and Cummins provide a good introduction to distributed object architectures, beginning with an introduction to the basic concepts of object technology (which could easily have been skipped). Chapter 2 considers several distributed object models and architectures. The authors outline their vision of the future architecture of business systems and offer a transition strategy. They describe enterprise computing as a model that provides for application partitioning, with a natural mapping onto a distributed environment. Chapter 3 describes the CORBA architecture, the interaction of the main Object Management Group (OMG) components, and business object facilities (BOFs). The next chapter considers the important issues of planning and project management, although little new ground is covered.
Chapter 5 provides more value as it returns in more detail to the development of BOFs based on OMG standards. The included code provides a decent overview of the level of abstraction provided by a BOF. Chapters 6 and 7 provide a good, practical discussion of design issues including interfaces, reliability, performance, integrity, and the integration of CORBA interfaces into program code. CORBA interfaces bring with them restrictions on arguments, return values, types cast, and inheritance, to name a few. Remote object interactions raise issues including dangling references, context passing, and memory management. These issues are covered in detail, and actual code examples are provided.
The book concludes with a discussion of the tools used to provide the examples, the Orbix object broker, and issues involved in selecting tools. Unfortunately, this discussion is incomplete, biased toward the selected tool, and likely to be out of date.
Despite some flaws, this book is a decent practical introduction to a complex and increasingly important topic. I recommend it for practitioners.