Jump to ratings and reviews
Rate this book

Pattern-Oriented Software Architecture #1

Pattern-Oriented Software Architecture Volume 1: A System of Patterns

Rate this book
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

476 pages, Hardcover

First published August 8, 1996

36 people are currently reading
878 people want to read

About the author

Frank Buschmann

20 books4 followers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
67 (29%)
4 stars
88 (38%)
3 stars
61 (26%)
2 stars
8 (3%)
1 star
4 (1%)
Displaying 1 - 14 of 14 reviews
192 reviews8 followers
February 24, 2012
The book is obsolete by now. It is 16yr olds. It was written when the internet could be downloaded on a CD, and OS/2 was hot.

All examples are C/C++ and very extensive, they contains full implementations. If you like to read old code you might like this book. I read plenty of old code in my daily job.

If you work with Java or C# (or something else modern) you will be disappointed in this book. Most of the patterns are now obsolete as these languages and their libraries solves the problems for you.

I picked up this book to learn about architectural patterns. MVC and Proxy were the things that came closest in the book.

If you are interested in the history of patterns this might be interesting for you.
87 reviews5 followers
November 19, 2016
Excellent book, in spite of fact it is old, about architecture, patterns and software development, it covers much wider range of topics than a canonical GoF.
Profile Image for Bob Kozik.
19 reviews5 followers
January 16, 2017
Contrary to the most liked review I hard find this book to be fundamentally out of date. Frankly their commentary makes me question whether or not they even understand design patterns in general. In systems design you're not going to rely on a single pattern, and the book makes mention of that. Believe the term the used was, "collections of patterns" or something along those lines. I'm really not entirely clear what they're rambling on about. Since a great deal of the algorithms and data structures we use today were proofed back in the 1950s and 1960s. The Art of Programming will turn fifty next year and is still as fundamentally true as it was in 1968. Its frankly a childish, ignorant review of something the author clearly does not understand.

That being said, this is certainly no introduction to design patterns, object-oriented programming let alone how to read OO modeling language flowcharts. If you know/understand UML, OMT or some other modeling language you should have no issues with the examples given. Some of the design patterns included a very similar to one another, but they are fundamentally different enough in the scenarios to which they're applicable that its not a big deal. The foresight to include Microkernels is frankly somewhat remarkable.


Profile Image for Nathaniel Inman.
42 reviews2 followers
April 4, 2022
An excellent book that acts as a primer of engineering patterns, how to identify, document and evolve them. It provides some common pattern identifications, but most importantly references to excellent supporting material. Some of the patterns are only applicable to systems engineering and may in fact not be helpful to the majority of application development today. It stands as a great source of historical context and foundation for interpretive analysis for modern design patterns. My page tabs are on 193 (reflection), 277 (Command Pattern), & 339 (pub/sub.)
Profile Image for Nidhal Ben Tahar.
48 reviews1 follower
March 8, 2017
The book provides a way to think about software architecture. It identifies different levels to which such consideration is relevant.
Profile Image for Steve Whiting.
181 reviews18 followers
February 17, 2016
To be accurate, I read the first 100+ pages, and skimmed the rest. Contrary to the authors' assertion in the introduction, I don't think this is a book to read from cover to cover - well, not one you would want to, any way.

As a thorough introduction to patterns, it's pretty good - covers a lot of them in depth. But, it's verbose, and in most cases would work better as a reference book - read the Problem / Solution / Consequence / Benefits / Liabilities of each pattern, then if delve deeper into that pattern if it seems relevant.

Caveat: the version I read was not Volume 1, it was the original single volume from c1996 - it's now a 5-volume set.
Profile Image for Timothy Culp.
118 reviews3 followers
September 28, 2012
Good text for teaching. Many of the system patterns described will be recognizable to anyone having worked on a large scale C++ or Java system.
7 reviews1 follower
Read
November 30, 2018
This books is a little outdated. But it still have valuable insights.
Displaying 1 - 14 of 14 reviews

Can't find what you're looking for?

Get help and learn more about the design.