Librarian note: As of April 2015 this book is available at no cost from O'Reilly at http://www.oreilly.com/programming/fr...
The success of any application or system depends on the architecture pattern you use. By describing the overall characteristics of the architecture, these patterns not only guide designers and developers on how to design components, but also determine the ways in which those components should interact.
This O’Reilly report takes a deep dive into many common software architecture patterns. Each pattern includes a full explanation of how it works, explains the pattern’s benefits and considerations, and describes the circumstances and conditions it was designed to address. The report also includes an analysis and scorecard for each pattern based on several architecture and software development quality attributes.
In addition to these specific patterns, you’ll also learn about the Architecture by Implication anti-pattern and the causes and effects of not using architecture patterns.
Mark Richards is an experienced software architect with significant experience and expertise in application, integration, and enterprise architecture. Active in the software industry since 1983, he is the author/presenter of several O’Reilly books and videos, including Software Architecture Fundamentals; Enterprise Messaging, Java Message Service, 2nd Edition; and 97 Things Every Software Architect Should Know.
Great introduction to and refresher to Software Architecture Patterns with good balance between text and graphics.
The chapter format is perfect to assimilate and consistently good throughout the book. The "Pattern analysis" section in each chapter is immensely useful for beginners to justify usage of a pattern and make better decisions. Of course it's not an absolute truth, but it'll definitely help.
I highly recommend this book to anyone writing software.
Not worth reading. » "Microservices Architecture" section is confusing and suggests using a shared database, which is definitely not a good idea when it comes to this style of architecture. » "Pattern Analysis" sections for each pattern are very controversial. » The last pattern "Space-based Architecture" lacks a real world example. » Some tecnologies mentioned are very outdated (for a book written in 2015-2017).
Nice and quick overview of some software architecture patterns. I was particularly curious about the Microservices Architecture but since this is just some kind of high-level summary I need to dig in a little more on this one.
The book presents some architectural patterns and compares them. It is not deep (it was expected given its size), but the author did a great job summarizing the ideas in so few words.
A short but useful summary of several software architecture patterns: Layered Architecture, Event-driven Architecture, Microkernel Architecture, Microservices Architecture, and Space-based (aka Cloud) Architecture.
Each description read like a detailed blog post in depth, but it was useful having the patterns described together.
considering this is only about a 50 page book, it did a good job summarizing some widely used software architectures citing a short summary with pros and cons, and a simple compraion at the end . so generally speaking this is a good introduction for someone who wants to get a glimpse of a certain architectural models. what I would like more about this book is listing more architectural patterns used in the industry.
the first thing that comes to my mind is that book is software architecture in a nutshell, the book describes some of the famous architectures with describing each one and illustrated examples with some pros and cons from the author's point of view, I think the size of this book is very small but you could grasp the whole idea behind mentioned architectures in no time which was good to me to read it in breaks or spare time without big focusing.
Brief, but useful. Gives nice overview of several architecture patterns. In case you need deeper information about the those patterns, you'll have to find additional source of information.
I'm currently writing a dissertation about software architecture and i find this book a really good source of information. Its short, concise and gets straight to the point. The author did a pretty good job exposing his view of the subject and although its not an absolute truth, its a valid point of view. I recommend this book to every developer looking to start a new project.
It gives a very high level overview of a few types of architectural patterns. For a detailed introduction or deep dive into each pattern you will need to look out for other books. This book can get you started quickly in the direction of using some of these patterns depending on your requirements.
The book starts out with a short single page introduction on software architecture, where the author basically discusses the importance of such concepts, then switches immediately to present 5 commonly used software architectures. Each architecture has its own dedicated chapter, where with the help of a few simple figures, the author describes them in a short and easy to understand manner, then continues with some recommendations and topics of considerations for choosing or discarding them. Each pattern is finally analyzed from several points of view, like agility, performance, testability, etc. and are given scores for easy comparison.
Generally there isn't much to say about the book, as it is very targeted and very short, so above from the most necessary thoughts there isn't much else. The topics are well chosen and the discussions are well executed. But I was hard pushed to say something anyway, I'd say that I liked the fact that non of the patterns is treated as the being better than the other, but instead each is given fair credit. If I had to complain about something than it would be the amount and scope of examples (small and limited), but it is hardly a complain as the book is hardly long enough to include a lot of examples. So all in all, I would recommend this to everyone interested in software craftsmanship, as it costs literally nothing, and it requires almost no time at all to read from cover to cover.
Quick overview on some of the major software architecture patterns. For each, you can find out more about the description, considerations, and pattern analysis that give you a good idea about:
- Overall agility - Ease of deployment - Testability - Performance - Scalability - Ease of development
Great book if you just want a shallow introduction on the topic.
Excellent catalog of architectural patterns described and compared in a succinct manner. It really helps as an introduction to that complex matter, after which you can pick up a single pattern and delve into details with the appropriate book.
A very good introduction to architecture patterns, with great illustrative graphics. What I like the most about this report, is that it clarify clearly the pros, cons, and usage for every mentioned architecture, without long boring paragraphs, or a lot of “it depends” phrases.
Very concise and up to the point, the main Architecture patterns. It reviews the following patterns: 1. Layered Architecture 2. Microkernel Architecture 3. Event-Driven Architecture 4. Microservices Architecture 5. Space-Based Architecture
Overall pretty good content. The only thing that I found annoying was that author made multiple statements related to Java and you need to have Java knowledge to understand/relate to them.
It is a short a great book to understand the most relevant software architectures. I think it is a great book if you want to get the fundamentals. It is easy a pretty straight forward book.
I don't think it's a good book for learning software architecture or to use it as a reference for architecture patterns as it's too short and shallow and incomplete.