Enterprise Integration Patterns
Books
HOME PATTERNS RAMBLINGS ARTICLES TALKS DOWNLOAD BOOKS CONTACT

Some of the books in this annotated bibliography on enterprise integration are dated now, but most of them are still relevant because they're not limited to a specific technology. I own almost all of the books listed here and have read all of the good ones :-) Also see books I authored or co-authored.

EAIWeb Services & SOAMessagingPatternsSoftware Architecture
High-quality patterns books seemed to have run out steam in the early 2000s: the big masterworks were done but there wasn't a lot more coming. Luckily, John Crupi and his gang re-energized the software patterns book writing community, quickly followed by Martin's latest masterpiece.
  
A Pattern Language - Towns Buildings Construction
C. Alexander, S. Ishikawa, M Silverstein
Oxford University Press, 1977
Buy from Amazon
Probably the most quoted book in any work related to patterns. I actually used a number of Alexander's patterns to design a beach house for an interior architecture class. It is interesting to note that Alexander's desire to dissect architecture and design into a set of composable constructs may stem from his study of mathematics. His thesis published as "Notes on the synthesis of form" references a set of programs that he developed in IBM 7090 assembly code. So the tremendous success of Alexander's patterns in the software community is not quite coincidental.

Design Patterns: Elements of Reusable Object-Oriented Software
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
Addison-Wesley, 1995
Buy from Amazon
Surely the second most quoted book in any work on patterns.

Pattern Hatching: Design Patterns Applied
John Vlissides
Addison-Wesley, 1998
Buy from Amazon
Four years after the 'GoF', John presents us with a 'behind-the-scenes' look at the discovery of the patterns, new ideas and enhancements, as well as a good section on software design with patterns and pattern writing. If you can look beyond the C++ examples (ugh), it makes a very pleasant and insightful read. After you have read and digested 'Design Patterns', you'll enjoy this one.

Pattern-Oriented Software Architecture
Buschmann et al
Wiley, 1996
Buy from Amazon
A great book on architecture and design patterns. Not the easiest read, but full of excellent content.

Pattern-Oriented Software Architecture Vol.2
Schmidt et al
Wiley, 2000
Buy from Amazon
More patterns focused on distributed systems and concurrency issues. Very relevant to integration patterns. The examples dwell a bit much on Doug's ACE architecture, but nevertheless a must-have for architects and developers building distributed systems.

Pattern-Oriented Software Architecture, Vol 3: Patterns for Resource Management
Michael Kircher, Prashant Jain
Wiley, 2004
Buy from Amazon
The third book in the POSA series. I think the book has broader applicability than the title suggests. For exmaple, cocepts such as "Lookup" and "Leasing" are very commonly used in distributed and service-oriented systems. Table of Contents and sample chapter at:
www.posa3.org

Core J2EE Patterns
Alur, Crupi, Marks
Prentice-Hall, 2003
Buy from Amazon
The 'core' reference on J2EE patterns. Anyone who is building serious J2EE apps probably has this book. This book also underlines how patterns provide much needed architectural guidance. The developer community was longing for a book like this after Sun kept on pumping out Java specs with little help on how to build something useful on top of them. Some of the patterns are useful complements to our EAI patterns, e.g. the Service Activator. The 2nd Edition came out for JavaOne has new integration tier patterns, for example a Web Service Broker. Martin will be happy to see that they renamed the Value Object to Transfer Object.

Patterns of Enterprise Application Architecture
Martin Fowler
Addison-Wesley, 2003
Buy from Amazon
The most comprehensive book yet on application architecture patterns. Even though it covers 51 patterns, it is an easy and interesting read while never sacrificing technical accuracy. Any enterprise developer should probably own a copy of this book (judging from the sales figures it looks like they do).

Enterprise Solution Patterns using Microsoft .NET
David Trowbridge, Gregor Hohpe, James Newkirk, David Lavigne (contributing authors)
MS Press, 2003
Buy from Amazon
Microsoft's Prescriptive Architecture Guidance (PAG) group is in charge of educating developers on how to build industrial-strength, enterprise-scale solutions. PAG contracted us to help them write the equivalent of "Core .NET Patterns" for them. One of the unique aspects of this book is the organization of the patterns int a pattern grid, organized by level of abstraction and viewpoint.

Server Component Patterns
Markus Völter, Axelander Schmid, Eberhard Wolff
Wiley, 2002
Buy from Amazon
The authors chose to document the patterns in Alexandrian format, including the sketches and capitalization of pattern names. The Alexandrian form is more prose-like which definitely benefits the readability as compared to POSA1 and POSA2. The first part of the book describes architecture and design patterns, starting with the core patterns such as Component and Container. The second part describes how these patterns are implemented in the EJB spec. The table of contents for both parts is virtually identical, with the second part listing EJB implementation details about the pattern defined in the first part. I think the book is a worthwhile read even if you are not interested in the EJB specifics.

Real-Time Design Patterns
Bruce Powel Douglass
Addison-Wesley, 2003
Buy from Amazon
This book proves the transportability of patterns across domains. Some of Douglass' reliability patterns prove very useful in the context of enterprise messaging.

Web Service Patterns: Java Edition
Paul Monday
Apress, 2003
Buy from Amazon
I cross-listed this book from the Web Services section. More of a tutorial on Apache Axis than a patterns book, it nevertheless presents relevant architectural guidance for Web services development. The book includes some nice examples on how to implement pub-sub with Web services. If you are looking for a tutorial on how to build a real Web-services application considering relevant architectural trade-offs, this book will be a good guide.