Just Enough Software Architecture: A Risk-Driven Approach

· Marshall & Brainerd
4.1
41 reviews
Ebook
376
Pages
Eligible

About this ebook

This is a practical guide for software developers, and different than other software architecture books. Here's why:

It teaches risk-driven architecting. There is no need for meticulous designs when risks are small, nor any excuse for sloppy designs when risks threaten your success. This book describes a way to do just enough architecture. It avoids the one-size-fits-all process tar pit with advice on how to tune your design effort based on the risks you face.

It democratizes architecture. This book seeks to make architecture relevant to all software developers. Developers need to understand how to use constraints as guiderails that ensure desired outcomes, and how seemingly small changes can affect a system's properties.

It cultivates declarative knowledge. There is a difference between being able to hit a ball and knowing why you are able to hit it, what psychologists refer to as procedural knowledge versus declarative knowledge. This book will make you more aware of what you have been doing and provide names for the concepts.

It emphasizes the engineering. This book focuses on the technical parts of software development and what developers do to ensure the system works not job titles or processes. It shows you how to build models and analyze architectures so that you can make principled design tradeoffs. It describes the techniques software designers use to reason about medium to large sized problems and points out where you can learn specialized techniques in more detail.

It provides practical advice. Software design decisions influence the architecture and vice versa. The approach in this book embraces drill-down/pop-up behavior by describing models that have various levels of abstraction, from architecture to data structure design.

Ratings and reviews

4.1
41 reviews
Dmitry Mikhaylov
February 3, 2019
This book is a substantial introduction to the software architecture profession. It's based on a great number of sources, it explains well all technical terminology, reviews various architectural approaches, and gives examples of architecural models.
17 people found this review helpful
Did you find this helpful?
Sjors Geelen
November 18, 2015
Part 1 nicely describes the risk driven approach to architecture. In essence when to apply how much and why? Part 2 describes modeling....in detail! Some experience in software development will help a lot with understanding the concepts in the book.
22 people found this review helpful
Did you find this helpful?
Daniel Gómez Rico
September 27, 2020
Awesome book to reveal the complexity of software architecture
2 people found this review helpful
Did you find this helpful?

About the author

Dr. George Fairbanks has been teaching software architecture and object-oriented design for over a decade. He holds a Ph.D. in Software Engineering from Carnegie Mellon University. He has publications on frameworks and software architecture in selective academic conferences, including OOPSLA and ICSE.

He has written production code for telephone switches, plugins for the Eclipse IDE, and everything for his own web dot-com startup. He maintains a network of Linux servers in his spare time.

George has been a program committee member for the Working International Conference on Software Architecture (WICSA), the International Conference on Software Maintenance (ICSM), and the European Conference on Software Architecture (ECSA). He has been a referee for IEEE Transactions on Software Engineering (TSE) and IEEE Software.

Rate this ebook

Tell us what you think.

Reading information

Smartphones and tablets
Install the Google Play Books app for Android and iPad/iPhone. It syncs automatically with your account and allows you to read online or offline wherever you are.
Laptops and computers
You can listen to audiobooks purchased on Google Play using your computer's web browser.
eReaders and other devices
To read on e-ink devices like Kobo eReaders, you'll need to download a file and transfer it to your device. Follow the detailed Help Center instructions to transfer the files to supported eReaders.