Pattern-Oriented Software Architecture, A System of Patterns
|
| List Price: | CDN$ 98.99 |
| Price: | CDN$ 79.19 & eligible for FREE Super Saver Shipping on orders over $39. Details |
Availability: Usually ships in 24 hours
Ships from and sold by Amazon.ca
27 new or used available from CDN$ 31.55
Average customer review:(12 )
Product Description
Pattern - Oriented Software Architecture A System of Patterns Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal of Siemens AG, Germany Pattern-oriented software architecture is a new approach to software development. This book represents the progression and evolution of the pattern approach into a system of patterns capable of describing and documenting large-scale applications. A pattern system provides, on one level, a pool of proven solutions to many recurring design problems. On another it shows how to combine individual patterns into heterogeneous structures and as such it can be used to facilitate a constructive development of software systems. Uniquely, the patterns that are presented in this book span several levels of abstraction, from high-level architectural patterns and medium-level design patterns to low-level idioms. The intention of, and motivation for, this book is to support both novices and experts in software development. Novices will gain from the experience inherent in pattern descriptions and experts will hopefully make use of, add to, extend and modify patterns to tailor them to their own needs. None of the pattern descriptions are cast in stone and, just as they are borne from experience, it is expected that further use will feed in and refine individual patterns and produce an evolving system of patterns. Visit our Web Page http://www.wiley.com/compbooks/
Product Details
- Amazon Sales Rank: #253237 in Books
- Published on: 1996-08-08
- Original language: English
- Dimensions: 1.30" h x 7.63" w x 9.40" l, 2.50 pounds
- Binding: Hardcover
- 476 pages
Editorial Reviews
From Amazon.com
Pattern-Oriented Software Architecture: A System of Patterns looks at how patterns occur on three different levels--in software architecture, in everyday design, and in idioms (which describe how a particular design pattern is implemented in a programming language like C++). This synthetic approach is a little theoretical at times, but the authors also present over a dozen patterns and provide real-world examples wherever possible.
For architectural patterns, the authors look at the Layers pattern, used in operating systems such as Windows NT and virtual machines. They also consider Pipes and Filters, which process streams of data. (This pattern, the authors point out, is a lynchpin of Unix.) Their Blackboard pattern shows how a complex problem, such as image or speech recognition can be broken up into smaller, specialized subsystems that work together to solve a problem. (For recognizing words from a raw waveform input, a Blackboard approach might have separate processes to find phonemes, then words, then sentences.)
This book also looks at today's distributed systems in considering the Broker pattern, which is used on the Internet and in Microsoft's OLE technology. This section also presents several powerful patterns for building effective graphical user interfaces, such as Model-View-Controller.
The authors define several well-known design patterns, such as the Proxy and Command patterns, and also basic, far-reaching patterns, such as Whole-Part and Master-Slave, which are widely used throughout computing. Their survey ends with a discussion on the way objects can communicate (using such patterns as Forwarder-Receiver, Client-Dispatcher-Server, and Publisher-Subscriber), which many developers will recognize as familiar patterns, but are codified here as "official" patterns. The book then discusses some idioms in C++ and a more far-reaching role for patterns in software design and architecture. By fitting patterns into traditional software engineering practices, the authors of Pattern-Oriented Software Architecture successfully argue that the role for patterns will only continue to diversify and enrich tomorrow's software engineering tools and methodologies. --Richard Dragan
Unix & NT News, January 99
The GoF book concentrates on design-level patterns, whereas out patterns span several levels of abstraction... from high-level architectural patterns through design patterns to low-level idioms' writes Beushcmann and his four co-authors from Siemens of Germany about Pattern-oriented software architecture. An example of an architectural pattern is the mocrokernal which 'separates a minimal r-specific parts'. They (prophetically) illustrate with a fictitious operating system named - Hydra! For design patterns they cite (among others) the master-slave pattern that supports fault-tolerance, parallel computation and computational accuracy. Idioms are 'low-level patterns specific to a programming language'.
Two alternative versions of a string copy function, written in C are compared: one by a devotee of Kernighan & Ritchie's terse style takes three lines and includes masterpieces of compaction such as (*d++=*s++); while the other by a Pascal enthusiast takes eight lines but is more readable. There is plenty of discussion and explanation and two interesting closing chapters. One describes the leading figures in the 'Pattern Community', many of them the authors reviewed here, plus Ward Cunningham and Kent Beck who first translated Alexander's ideas into software. The other asks where patterns are heading, for example a new area is organisational structures to support software development, such as Architect Controls Product which ensures team output is elegant and cohesive, not shapeless and nondescript. Other shadows in the crystal ball are the use of repositories and indexing (this has, inevitably, given birth to a new creature; the pattlet) and the development of specific pattern languages.
Ingram
Both a tutorial and a reference guide, this practical book shows HOW patterns can help you develop large-scale applications and solve recurring design problems. Includes a catalog of 25 patterns you can use and adapt for your own development projects.
