Andrewj.comObserver
Architect
Developer
Photographer
Traveller
Writer
Reviewer
Thoughts on the World
    • Welcome PageArchitectDeveloperPhotographerTravellerWriterObserverReviewerLinks

Software Design Decoded

66 Ways Experts Think, By Marian Petre, André Van Der Hoek, Yen Quach

Posted on 7 February 2017 by Andrew - Please share: All Addthis servicesTweet thisFacebook thisLink thisYam thisShare on Google

Summary

cover
Content 8/10
Readability 9/10
Presentation 8/10
Ideas 9/10
Value for money 7/10
Did it do what it said on the box? 8/10

How do the rankings work?

The Review

A powerful reminder on the behaviours required to succeed in software architecture

This is a delightful little book on the perennial topic of how a software architect should think and behave. While that subject seems to attract shorter books, this one is very concise – the main content is just 66 two-page spreads, with a well-chosen and often thought-provoking illustration on the left, and a couple of paragraphs on the right.  However just as with The Elements of Style, brevity indicates high value: this book provides the prompt, the detail can be elsewhere.

The book should be valuable to many: If you want to be an expert software designer, this book provides an overview of the skills and knowledge you need to develop. If you want to recruit such a person, this provides a set of key indicators and interview prompts. If you are in one of those software development organisations which believes that quality architecture can somehow emerge by magic from the unguided work of undifferentiated coders, this might make you think again.

If you are, or think you are, a software architect, this book should act in the same way as a good sermon: it will remind you of what already know you should be doing, and act as a prompt against which you can measure your own performance and identify areas for improvement. It reminded me that I can sometimes be slow to listen to the views of others, or evidence which may change a design, and slow to engage with new technologies, and I will try to act on those prompts.

This book resolutely promotes the value of modelling in software design. Formal models and analysis have their place, but so do informal models, sketches, and ad-hoc notation. The key point is to externalise ideas so that they can be shared, refined and “tested” in the cheapest and most effective of ways, on paper or a whiteboard. We are reminded that all these are hallmarks of true expert software designers. Code has its place, to prove the solution or explore technicalities, but it is not the design.

The book also promotes the value of richness in these representations. Experts should explore and constantly be aware of alternatives, and model the solution at different levels of abstraction, in terms of both static and dynamic behaviours. Continuous assessment means not only testing, but simulation. If required, the expert should build his or her own tools. While solving simple problems first is a good way to get started, deep, early understanding of the problem space is essential, and experts must understand the whole context and landscape well enough to make and articulate design prioritisations and trade-offs.

I thoroughly recommend this book. It may seem slight, but it delivers a powerful reminder on the process of design, and the necessary, different thought processes to succeed with it.


Buy It From Amazon

Amazon.co.uk
cover

Amazon.com

Please note this page contains associate links. As an Amazon Associate, I earn from qualifying purchases.

Categories: Agile & Architecture and Reviews. Content Types: Book, Computing, and Software Architecture.

This entry was posted in Agile & Architecture, Reviews. Bookmark the permalink.
Previous Post: The One Man
---- Next Post: Darwin’s Cipher

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Thoughts on the World Proudly powered by WordPress.

Main Pages

Welcome Page

Architect (Consultancy services)

Developer (Services and Products)

Photographer

Traveller

Writer (Publications and Papers)

Observer (My blog)

Reviewer

Links

Blog Contents

Post Category:

Review Type:

  • Recent Posts

    • A Bit of Variety
    • The Beauty of Tuscany
    • The World’s Second Worst Panorama 2024
    • (In)Correct Tripod Technique!
    • Welcome to Tuscany
  • Recent Comments

    • Nomad on The Coming Global Superstorm
    • Divitel on It’s Screen Time!
    • Mike Parnell on Camera History
    • ValueBlue on What Do I Mean by "Agile Architecture"?
    • Robert on Combining Risk Factors
  • Blog Indexes

    Favourite/Major Articles

    All Articles by Category

    All Articles by Title

    Review Index

    Search

    References to www.andrewj.com

    References to www.agilearchitect.org

    Contact Me

    Email me

    @TweetAndrewJ

    Others

    Share

    Facebook

    Google

    Twitter

    Linked In

    Yammer

    Share

    Feeds

    @TweetAndrewJ

    Thoughts on the World (Main Feed)

    Main feed (direct XML)

    Professional Blog

    Photo Blog

    Photo Album

    Review pages

    About my feeds

    © Questa Computing Ltd. 1994 - 2025:
    Questa Computing Ltd. is registered in England and Wales number:2889117.
    Registered office: Coppertrees, Forest Road, Effingham, Leatherhead, KT24 5HE
    Credits, copyright details and cookie policy