v1 of the book is published

A practical and pragmatic guide to software architecture, available via Leanpub

I'm pleased to announce that "Software Architecture for Developers" the book is in-progress and available for purchase as an ebook through Leanpub. In a nutshell, Leanpub is a service that allows you to self-publish your book iteratively and incrementally, which is exactly what I'll be doing over the coming months.

The agile and software craftsmanship movements are helping to push up the quality of the software systems that we build, which is excellent. Together they are helping us to write better software that better meets the needs of the business while carefully managing time and budgetary constraints. But there's still more we can do because even a small amount of software architecture can help prevent many of the problems that projects face. Successful software projects aren't just about good code and sometimes you need to step away from the IDE for a few moments to see the bigger picture.

This book is about that bigger picture and its role in delivering better software. It's a collection of essays that together form a practical and pragmatic guide to software architecture, with the overall goal being to demystify what it means to be a software architect and provide guidance on how to do software architecture effectively.

The book is aimed at software developers that want to learn more about software architecture as well as those that are new to the role. It fills the gap between software development and high-level architecture that probably seems a little "enterprisey" for most developers.


You'll find this book useful if any of the following scenarios sound familiar:

  • I'm not sure what software architecture is about and how it's any different from design.
  • I don't understand why we need "software architecture".
  • My manager has told me that I'm the software architect on our new project, but I'm not sure what that actually means.
  • I want to get involved in designing software but I'm not sure what I should learn.
  • I've been given some requirements and asked to design some software, but I'm not sure where to start.
  • I need to make some major enhancements to my system, but I'm not sure where to start.
  • I've been asked to write a software architecture document but I'm not sure what to include in it.
  • I'm not sure who to talk to in my organisation about how best to integrate what we're building.
  • I understand what software architecture is all about, but I'm not sure how to tackle it on my project.
  • My project seems like a chaotic mess; everybody is doing their own thing and there's no shared vision. Help!

It's a work in progress and the following chapters are available now in the current published version of the book:

  • What is architecture?
  • Types of architecture
  • What is software architecture?
  • Architecture vs design
  • What is the big picture?
  • Strategy rather than code
  • Is software architecture important?

You can buy it now as an book in PDF, ePUB and MOBI formats, with all future updates being free of charge. A sample is available to download. Stay tuned for updates about new content and don't forget we also offer a 2-day training course that covers the same material in a more practical way.

About the author

Simon is an independent consultant specializing in software architecture, and the author of Software Architecture for Developers (a developer-friendly guide to software architecture, technical leadership and the balance with agility). He’s also the creator of the C4 software architecture model and the founder of Structurizr, which is a collection of open source and commercial tooling to help software teams visualise, document and explore their software architecture.

You can find Simon on Twitter at @simonbrown ... see simonbrown.je for information about his speaking schedule, videos from past conferences and software architecture training.

Add a comment Send a TrackBack