Decision-making for Software Development Teams
Minimum price
Suggested price

Decision-making for Software Development Teams

Learn how to make mindful decisions in complex software ecosystems

About the Book

What is a decision? What makes a decision important? How much do we struggle to make a decision? What type of impact do you think that decision will have?

Whatever the case - from choosing a programming language for a shiny new greenfield project to moving to a microservices architecture and everything in between -  the life of a software developer is punctuated with decisions.

A good developer needs to be a good decision-maker, and decision-making is a crucial skill for software developers. This skill can be learnt and practised.

This book aims to introduce developers to some theoretical concepts about how to make mindful technical decisions. It is a journey throughout a decision-making process, with real-life examples and case studies.

The next time you and your team face a decision to be made, the stories and the easy-to-apply exercises in this book will help you understand how to involve the right people, gather valuable data and better analyze the context to decide how to decide.

Table of Contents

Preface: Why a book on decision-making for developers?

Chapter 1: Decision-making anti-patterns

Chapter 2: A decision-making process

Chapter 3: Involve the right people

Chapter 4: Gather data - Business needs

Chapter 5: Gather Data - Users

Chapter 6: Gather Data - Context

Chapter 7: Choose non-functional requirements

Chapter 8: Comparing solutions

Chapter 9: A decision-making meeting: a use case

Chapter 10: Deciding how to decide

Appendix A: Interviews

Appendix B: Cynefin Framework

About the Author

About the Contributors

Gien Verschatse
Gien Verschatse
Louisa May Adams
Louisa May Adams
Maria Strazzullo
Maria Strazzullo

Table of Contents

  • Preface
    • Why a book on decision-making for developers?
    • Who is this book for?
    • What does this book cover?
    • Bonus: My growth as a decision-maker
    • The Frameworkless Movement
    • Consultancy
  • Chapter 1: Decision-making anti-patterns
    • 1.1 Hype-driven development
      • 1.1.1 Exploiting Hype
    • 1.2 The usual path
    • 1.3 The expert
    • 1.4 Rage-driven decisions
    • 1.5 The role of company culture
    • Summary
  • Chapter 2: A decision-making process
    • 2.1 Ingredients for a better technical decision-making
    • 2.2 My basic decision-making process
    • 2.3 How to design your own process
    • Summary
  • Chapter 3: Involve the right people
    • 3.1 The software development team
      • 3.1.1 Meet your neighbours
    • 3.2 Explore power structures
    • 3.3 Whom to involve?
      • 3.3.1 Impact
      • 3.3.2 Reversibility
      • 3.3.3 Classify decisions
    • Summary
  • Chapter 4: Gather data - Business needs
    • 4.1 Know the reason why
    • 4.2 Business Model Canvas
    • 4.3 Value Proposition Canvas
    • 4.4 Elevator pitch
    • Summary
  • Chapter 5: Gather Data - Users
    • 5.1 The UX data journey
      • 5.1.1 Design thinking
      • Discover
      • Define
      • Ideate
      • Prototype
      • Test
    • 5.2 In which ways can UX design contribute to the development process?
      • 5.2.1 A rich context for decisions
      • 5.2.2 Identify waste
      • 5.2.3 Design System
    • 5.3 UX designers and developers collaboration
    • Summary
  • Chapter 6: Gather Data - Context
    • 6.1 Knowing the “Age”
      • 6.1.1 The 3X Model
    • 6.2 Knowing the team
      • 6.2.1 Skill Matrix
    • 6.3 Express Constraints
      • 6.3.1 Trade-off slider
      • 6.3.2 SWOT analysis
    • Summary
  • Chapter 7: Choose non-functional requirements
    • 7.1 Introducing non-functional requirements
    • 7.2 Select NFRs
      • 7.2.1 Ubiquitous Language
      • 7.2.2 Validity of the NFRs
      • 7.2.3 How many NFRs?
    • 7.3 Visualizing NFRs
      • 7.3.1 Architecture Compasss Chart
    • 7.4 Output Vs Outcome
    • Summary
  • Chapter 8: Comparing solutions
    • 8.1 The Last Responsible Moment
      • 8.1.1 Case Study: The Startup
    • 8.2 The fishbowl
      • 8.2.1 Case Study: The New Team
    • 8.3 Pros/Cons/Fixes
      • 8.3.1 Case Study: The Mobile application
    • 8.4 Visual Comparison
      • 8.4.1 Case Study: The Big Rewrite
    • 8.5 Weighted Ranking
      • 8.5.1 Fitness Functions
      • 8.5.2 Case Study: The Pivot
    • 8.6 Mixing Tools
    • Summary
  • Chapter 9: A decision-making meeting: a use case
    • 9.1 The Setting
    • 9.2 Preparatory calls
    • 9.3 Check-in
    • 9.4 Involve the right people
    • 9.5 Gather Data
    • 9.6 Choose non-functional requirements
    • 9.7 My Comments
    • 9.8 Comparing solutions
    • Summary
  • Chapter 10: Deciding how to decide
    • 10.1 Classify decisions: The Impact/Reversibility map
    • 10.2 Choosing the right tool for the right job
    • 10.3 Who should decide?
      • 10.3.1 The delegation board
      • 10.3.2 Delegation map
    • 10.4 Transforming Decisions
    • 10.5 Other methods to classify decisions
      • 10.5.1 Strategic, Tactical, and Operational
      • 10.5.2 Complex/Complicated
    • Summary
  • Appendix A: Interviews
    • Alessandro Calzavara: Decision-making in a greenfield project
    • Antonio Dell’Ava: A UX designer’s point of view
    • Erin Casali: Psychological Safety
    • Marco Calzolari: Talent Canvas
    • Lorenzo Massacci: Collaborative decision-making
    • Francesco Tassi: Technical decision-making in a fintech company
  • Appendix B: Cynefin Framework
      • Obvious
      • Complicated
      • Complex
      • Chaotic
      • Disorder
  • Acknowledgements
  • Bibliography
  • Notes

About the Publisher

This book is published on Leanpub by Avanscoperta

Avanscoperta is the go-to learning space for software developers and any professional involved in the digital ecosystem.

As a publisher, we want to help some of our most innovative trainers and collaborators to formalize their wisdom in books.

We are a growing community of professionals and we share a great passion for learning: we like exchanging experiences and ideas, and exploring uncharted territories within the software world in its broadest possible meaning.

Our goal is to spread knowledge independently from the format (courses, publications, talks...) so getting into books seemed obvious.

We strongly believe that high quality always pays off. We carefully select the most relevant topics and the best trainers and thought leaders worldwide. We prefer practical teaching approaches, even in the remote scenario, with an eye for the most engaging teaching techniques. Start from the problems, not from the solutions: that’s the guiding principle we always stick to when building our educational offer.

We want to turn the software world into a better place, and we do all we can to make it happen, one step at a time, learning something new every day. That’s why our motto is We Are Learners!

Follow us on Twitter - Linkedin - Youtube - Meetup

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub