Software Architecture and Design Books

Home » Software Architecture and Design Books
Cartoon of a person sitting at a computer with lots of code windows

Please check back in the future, as I expect this list will develop with the blog.

Head First Object Orientated Analysis and Design

The head first books are excellent teachers because they are presented in such a way that you remember what you are reading. This is an excellent easy to read book on the subject.

View on amazon.co.uk: Head First Object-Oriented Analysis and Design: A Brain Friendly Guide to OOA&D

Head First Design Patterns

Another easy to read book on another important subject for developers. Should be read after the object orientated design book in my view, simply because design patterns are a more advanced topic.

View on amazon.co.uk: Head First Design Patterns

Domain Driven Design by Eric Evans

This is a classic book on software architecture and design. I would think its relevant to nearly all software projects, whatever computer language is used.

View on amazon.co.uk: Domain-driven Design: Tackling Complexity in the Heart of Software

BDD in Action: Behaviour-Driven Development for the whole Software lifecycle

For those who haven’t heard of it, BDD is a combination of ideas taken from TDD (Test Driven Development) and DDD (Domain Driven Design), that attempts to bring the ubiquitous language from DDD to the whole project and the tests visible to the whole project (not just developers) through user stories and acceptance criteria which are reflected in the tests. These ideas have been around for ten years or so, and have matured nicely. This book gives the subject a good introduction, far better than I can in a single paragraph.

View on amazon.co.uk: BDD in Action: Behavior-driven development for the whole software lifecycle

The Nature of Software Development, by Ron Jefferies

This is a nice introduction to Agile from one of the founding members of the Agile Manifesto. An easy read, in 80 pages with a similar amount of essays, this is a good book to give to your manager if you want to start using Agile in your team, or if they think you are Agile and you know your team is not.

View on amazon.co.uk: The Nature of Software Development: Keep It Simple, Make It Valuable, Build It Piece by Piece

Agile Principles, Patterns and Practices by Robert C Martin

This is a good book that properly explains SOLID and other Agile principles using C# and .NET examples and concepts.

Agile Principles, Patterns, and Practices in C# (Robert C. Martin)

Top Posts & Pages

Categories

Recent Posts

Recent Comments

Archives

Blogroll

  • Mike Cohn's Blog
  • Scott Hanselman's Blog
- mike@mountaingoatsoftware.com

I wrote 25 blog posts during 2018. In case you missed some of them, here are the most popular. [...]

- mike@mountaingoatsoftware.com

The iterative and incremental nature of agile makes an agile approach seemingly less compatible with [...]

- mike@mountaingoatsoftware.com

Velocity can be great for predicting how much a team can deliver in a given period. But it needs to [...]

- mike@mountaingoatsoftware.com

Succeeding with agile isn’t just about knowing where to start, it’s about knowing where to go next—w [...]

- mike@mountaingoatsoftware.com

Here’s what to do when facing a complex user story that cannot be split but is too large for one spr [...]

- Scott Hanselman

As I said on social media today, it's 2019 and I'm updating the Firmware on a Zune, fight [...]

- Scott Hanselman

I'm going to try to finished my Relationship Hacks book in 2019. I've been sitting on it t [...]

- Scott Hanselman

My son and I were working on an Adafruit NeoTrellis M4 Mainboard over the holidays. This amazing lit [...]

- Scott Hanselman

I'm on vacation for the holidays and I'm finally getting some time to play video games. I [...]

- Scott Hanselman

I blogged about DOSBox five years ago! Apparently I get nostalgic around this time of year when I [...]

Meta