November 2, 2021

1782 words 9 mins read

mhadidg/software-architecture-books

mhadidg/software-architecture-books

A comprehensive list of books on Software Architecture.

repo name mhadidg/software-architecture-books
repo link https://github.com/mhadidg/software-architecture-books
homepage
language
size (curr.) 27 kB
stars (curr.) 5776
created 2021-06-25
license

Software Architecture Books

A comprehensive list of books on Software Architecture.

People in the software industry have long argued about a definition of architecture. Ralph Johnson famously defined software architecture as “the important stuff (whatever that is).” I, subjectively, followed his definition while deciding whether or not to include a specific book.

Table of Contents

What is this?

This is NOT a recommendation list. When I made this, I intended for a comprehensive list excluding low-profile books—see inclusion criteria below. There was a simple reason behind that: I’m not a subject-matter expert on all these topics. In fact, I not a subject-matter expert on even a single topic of these. More importantly, I don’t know your experience level nor your preferences. Some people prefer theoretical over practical books (I do). Others prefer foundational over comprehensive books or dry over engaging books or art-based over engineering-based books. Some people even enjoy verbose over concise books. Or and or and or.

How did I make this?

I thoroughly reviewed all books tagged with software-architecture on Goodreads and applied a simple algorithmic rules—see the inclusion criteria below. I don’t think the list is perfectly comprehensive. Yet, I’m planning to update it regularly to make it as comprehensive as possible.

What should I read?

Don’t be overwhelmed by the number of books on each subject. Practically speaking, you are supposed to read a few books on the subjects of your interest. Deciding what to read is your business. Personally, I start by reading a couple of reviews on Goodreads and examine the book table of content, if available. When in doubt, I read more reviews over the internet from blogs and the like. Alternatively, you may go with the Goodreads community preferences and start from the top of each list if you don’t have the time to read reviews.

Inclusion criteria

  • The book must be relevant to Software Architecture; and
  • The content is not obsolete.
  • It must be technology agnostic or applicable to a wide range of technologies; and
  • The book profile on Goodreads matches these rules:
    • An average rating of 3.5 or above; and
    • A total number of ratings equals 50 or above.
    • At least 5 written reviews.
    • A minimum length of 50 pages.

Sorting criteria

The books are sorted solely based on the number of written reviews. There are, however, other important factors worth considering. For example, the average rating, the number of ratings, and the publishing date. Yet, I don’t have an idea to put all these factors in a reasonable mathematical formula. If you have any, I’d love to hear what you’ve got in mind.

Books

System Architecture

Title ISBN Rating Raters Published
Clean Architecture 9780134494166 4.23 3662 2017
Patterns of Enterprise Application Architecture 9780321127426 4.11 3501 2002
Building Evolutionary Architectures: Support Constant Change 9781491986363 3.74 705 2017
Fundamentals of Software Architecture: An Engineering Approach 9781492043454 4.40 364 2020
Software Architecture in Practice, 4th Edition 0785342154955 3.82 608 2021
Architecting for Scale: High Availability for Your Growing Applications 9781491943397 3.56 164 2016
Software Architecture for Developers: Volume 1 - Technical leadership and the balance with agility 9798652551568 3.87 332 2016
Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives 9780321112293 4.10 205 2005
Design It!: From Programmer to Software Architect 9781680502091 3.68 168 2017
The Software Architect Elevator: Transforming Enterprises with Technology and Business Architecture 9781492077541 4.48 101 2020
Righting Software 9780136524038 3.79 76 2019
Analysis Patterns: Reusable Object Models 9780201895421 3.80 246 1996
12 Essential Skills for Software Architects 9780321717290 3.70 118 2011
Software Architecture for Developers: Volume 2 - Visualise, document and explore your software architecture 9798652551568 3.78 108 2016
Documenting Software Architectures: Views and Beyond, 2nd Edition 9780201703726 3.68 174 2010
Software Architecture: Foundations, Theory, and Practice 9780470167748 3.75 65 2008
SOA: Principles of Service Design 9780132344821 3.72 130 2007
Service-Oriented Architecture: Concepts, Technology, and Design 9780131858589 3.65 170 2005

Design Patterns

Title ISBN Rating Raters Published
Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software 9780596007126 4.28 7574 2021
Design Patterns: Elements of Reusable Object-Oriented Software 9780201633610 4.19 10293 1994
Refactoring to Patterns 0785342213355 4.05 1399 2004
Dive Into Design Patterns missing 4.78 351 2019
Patterns Principles and Practices of Domain Driven Design 9781118714706 4.35 292 2015
Design Patterns Explained: A New Perspective on Object-Oriented Design, 2nd Edition 9780321247148 3.88 344 2004
Reactive Design Patterns 9781617291807 3.60 138 2014

Domain-Driven Design

Title ISBN Rating Raters Published
Domain-Driven Design: Tackling Complexity in the Heart of Software 9780321125217 4.16 4445 2003
Domain-Driven Design Distilled 9780134434421 3.78 816 2016
Implementing Domain-Driven Design 9780321834577 4.06 934 2013
Domain-Driven Design Quickly 9781411609259 3.59 454 2007
Patterns, Principles, and Practices of Domain-Driven Design 9781118714706 4.36 302 2015

Microservices

Title ISBN Rating Raters Published
Building Microservices: Designing Fine-Grained Systems, 2nd Edition 9781491950357 4.18 3792 2021
Monolith to Microservices: Sustaining Productivity While Detangling the System 9781492047841 4.28 389 2019
Microservice Patterns 9781617294549 4.15 333 2017
Production-Ready Microservices: Building Standardized Systems Across an Engineering Organization 9781491965948 3.81 360 2016
Reactive Microservices Architecture 9781491959343 3.63 186 2016
Microservice Architecture: Aligning Principles, Practices, and Culture 9781491959794 3.50 217 2016
The Tao of Microservices 9781617293146 3.95 78 2017
Microservices From Design to Deployment missing 3.88 80 2016
Microservices AntiPatterns and Pitfalls 9781491963319 3.96 82 2016

Data Engineering

Title ISBN Rating Raters Published
Designing Data-Intensive Applications 9781449373320 4.72 4385 2015
The Model Thinker: What You Need to Know to Make Data Work for You 9780465094622 3.92 493 2018
Big Data: Principles and best practices of scalable realtime data systems 9781617290343 3.82 440 2015
Beautiful Data: The Stories Behind Elegant Data Solutions 9780596157111 3.65 258 2009
Data Modeling Made Simple: A Practical Guide for Business and It Professionals, 2nd Edition 9780977140060 3.76 74 2015

Streaming and Messaging

Title ISBN Rating Raters Published
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions 0785342200683 4.10 1388 2003
Making Sense of Stream Processing 9781491940105 4.31 143 2016
Streaming Systems 9781491983874 3.92 106 2018
Designing Event-Driven Systems 9781492038221 3.80 190 2018

Distributed Systems

Title ISBN Rating Raters Published
Designing Distributed Systems: Patterns and Paradigms for Scalable, Reliable Services 9781491983645 3.58 453 2018
Distributed Systems For Fun and Profit missing 4.19 326 2013
Security Engineering: A Guide to Building Dependable Distributed Systems, 3rd Edition 9780470068526 4.19 622 2020
Database Internals: A Deep Dive into How Distributed Data Systems Work 9781492040347 4.26 178 2019
Distributed Systems: Principles and Paradigms, 2nd Edition 9780132392273 3.99 357 2016

Cloud Engineering

Title ISBN Rating Raters Published
Infrastructure as Code: Managing Servers in the Cloud 9781491924358 4.20 316 2016
Cloud Native Infrastructure: Patterns for Scalable Infrastructure and Applications in a Dynamic Environment 9781491984307 3.57 130 2017
Cloud Native Patterns: Designing change-tolerant software 9781617294297 4.24 76 2019
The Practice of Cloud System Administration: Devops and SRE Practices for Web Services, Volume 2 9780133478525 4.38 247 2014
Beyond the Twelve-Factor App Exploring the DNA of Highly Scalable, Resilient Cloud Applications 9781491944011 3.54 91 2016
Kubernetes Patterns: Reusable Elements for Designing Cloud-Native Applications 9781492050285 4.27 101 2019
Cloud Design Patterns: Prescriptive Architecture Guidance for Cloud Applications 9781621140368 4.23 66 2014
Cloud Computing: Concepts, Technology & Architecture 9780133387520 3.78 137 2013

Web Scalability

Title ISBN Rating Raters Published
The Art of Scalability: Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise, 2nd Edition 9780137030422 4.00 307 2015
Web Scalability for Startup Engineers 9780071843652 4.58 160 2015
Building Scalable Web Sites 9780596102357 3.73 299 2006
Scalable Internet Architectures 9780672326998 3.67 168 2006
Scalability Rules: 50 Principles for Scaling Web Sites 9780321753885 3.97 236 2011
The Art of Capacity Planning: Scaling Web Resources 9780596518578 3.75 212 2008

Agile

Title ISBN Rating Raters Published
Clean Agile: Back to Basics 9780135781869 4.30 633 2019
Agile Software Development: Principles, Patterns, and Practices 9780135974445 4.25 1201 2002
The Art of Agile Development 9780596527679 3.96 828 2007
Agile Software Development 9780201699692 3.98 390 2001
Planning Extreme Programming 9780201710915 3.91 363 2000
Scaling Software Agility: Best Practices for Large Enterprises 9780321458193 3.65 168 2007
Balancing Agility and Discipline: A Guide for the Perplexed 0785342186123 3.59 105 2003

DevOps

Title ISBN Rating Raters Published
The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations 9781942788003 4.33 3647 2016
Continuous Delivery: Reliable Software Releases Through Build, Test, and Deployment Automation 9780321601919 4.18 2969 2010
Continuous Integration: Improving Software Quality and Reducing Risk 9780321336385 3.81 431 2007
Devops: A Software Architect’s Perspective 9780134049847 3.63 57 2015

General

Title ISBN Rating Raters Published
The Pragmatic Programmer: From Journeyman to Master 9780201616224 4.32 17379 1999
The Mythical Man-Month: Essays on Software Engineering 9780201835953 4.03 12295 1995
The Unicorn Project 9781942788768 4.13 4927 2019
Release It!: Design and Deploy Production-Ready Software 9780978739218 4.26 2746 2007
A Philosophy of Software Design 9781732102200 4.14 1516 2018
Site Reliability Engineering: How Google Runs Production Systems 9781491929124 4.23 1980 2016
The Software Craftsman: Professionalism, Pragmatism, Pride 9780134052502 4.33 769 2014
Code Simplicity: The Fundamentals of Software 9781449313890 3.74 501 2012
High Performance Browser Networking 9781449344764 4.50 671 2013
97 Things Every Software Architect Should Know: Collective Wisdom from the Experts 9780596522698 3.62 686 2009
High Performance Web Sites 9780596529307 4.15 690 2007
Software Estimation: Demystifying the Black Art 9780735605350 4.04 911 2006
The Design of Design: Essays from a Computer Scientist 9780201362985 3.76 571 2010
Software Requirements: Practical Techniques for Gathering and Managing Requirements Throughout the Product Development Cycle, 3rd Edition 9780735618794 4.10 713 2016
Waltzing with Bears: Managing Risk on Software Projects 9780932633606 3.97 702 2003
Software Engineering at Google: Lessons Learned from Programming Over Time 9781492082798 4.19 344 2020
Ship It!: A Practical Guide to Successful Software Projects 9780974514048 3.72 509 2005
The Leprechauns of Software Engineering 9782954745503 3.84 147 2012
Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis 9781680502725 4.20 112 2018
The Site Reliability Workbook: Practical Ways to Implement SRE 9781492029502 4.34 231 2018
Beyond Software Architecture: Creating and Sustaining Winning Solutions 9780201775945 3.72 141 2003
37 Things One Architect Knows 9781537082981 4.35 100 2016
Presentation Patterns: Techniques for Crafting Better Presentations 9780321820808 3.94 123 2012
Chaos Engineering 9781491992395 4.23 112 2017
Container Security: Fundamental Technology Concepts That Protect Containerized Applications 9781492056706 4.48 52 2020
Composing Software 9781661212568 3.88 85 2018
Software Security: Building Security in 9780321356703 3.63 82 2006
14 Habits of Highly Productive Developers 9781735266534 4.05 195 2020

Licence

This work is licensed under a Creative Commons Attribution 4.0 International License.

comments powered by Disqus