Page
1
Mastering Sof tware Architecture A Comprehensive New Model and Approach — Michael Carducci With Daniel Tippie
Page
2
Mastering Software Architecture A Comprehensive New Model and Approach Michael Carducci With Daniel Tippie
Page
3
Mastering Software Architecture: A Comprehensive New Model and Approach ISBN-13 (pbk): 979-8-8688-0409-0 ISBN-13 (electronic): 979-8-8688-0410-6 https://doi.org/10.1007/979-8-8688-0410-6 Copyright © 2025 by Michael Carducci This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein. Managing Director, Apress Media LLC: Welmoed Spahr Acquisitions Editor: Celestin Suresh John Development Editor: James Markham Coordinating Editor: Kripa Joseph Cover designed by eStudioCalamar Cover image designed by R. Buckminster Fuller and adapted from US Patent 2,682,235 Building Construction/Geodesic Dome filed December 12, 1951 SN 261,168 granted June 29, 1954 Pursuant to 37 CFR 1.71(d) & (e) and 1.84 (s) this image is not subject to copyright restrictions. Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders-ny@springer- sbm.com, or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation. For information on translations, please e-mail booktranslations@springernature.com; for reprint, paperback, or audio rights, please e-mail bookpermissions@springernature.com. Apress titles may be purchased in bulk for academic, corporate, or promotional use. eBook versions and licenses are also available for most titles. For more information, reference our Print and eBook Bulk Sales web page at http://www.apress.com/bulk-sales. Any source code or other supplementary material referenced by the author in this book can be found here: https://www.apress.com/gp/services/source-code. If disposing of this product, please recycle the paper Michael Carducci Parker, CO, USA
Page
4
For Kaden, may your creative philosophy live on.
Page
5
(This page has no text content)
Page
6
(This page has no text content)
Page
7
(This page has no text content)
Page
8
(This page has no text content)
Page
9
(This page has no text content)
Page
10
(This page has no text content)
Page
11
(This page has no text content)
Page
12
(This page has no text content)
Page
13
(This page has no text content)
Page
14
(This page has no text content)
Page
15
xv About the Author Michael Carducci is a seasoned IT professional with over 25 years of experience, an author, and an internationally recognized speaker, blending expertise in software architecture with the artistry of magic and mentalism. Michael’s career spans roles from individual contributor to CTO, with a particular focus on strategic architecture and holistic transformation. Notable roles over the past 15 years include being named the chief architect at a Fortune 100 company you have certainly heard of and being named chief architect of a social media startup you certainly have not heard of. As a magician and mentalist, Michael has captivated audiences in dozens of countries, applying the same creativity and problem-solving skills that define his technology career. He excels in transforming complex technical concepts into engaging narratives, making him a sought-after speaker and emcee for tech events worldwide. In his consulting work, Michael adopts a holistic approach to software architecture, ensuring alignment with business strategy and operational realities. He empowers teams, bridges tactical and strategic objectives, and guides organizations through transformative changes, always aiming to create sustainable, adaptable solutions. Michael’s unique blend of technical acumen and performative talent makes him an unparalleled force in both the tech and entertainment industries, driven by a passion for continuous learning and a commitment to excellence.
Page
16
xvii Daniel Tippie has been a software architect, software engineer, systems architect, systems engineer, and technical lead with over 17 years of experience working in both commercial and DoD software development. He has a passion for taking computer science theory, software engineering practices, and systems engineering principles and converting that knowledge into practical application. He has also spent years designing, building, and integrating complex projects of various sizes and phases of development. Daniel applies methodical and flexible approaches to everything that he does. Daniel loves to discuss computer science, math, physics, ballistics, astrodynamics, science fiction, and dogs. He has a very supportive wife, kids, parents, and in-laws. About the Contributing Author
Page
17
xix Darrell Rials is an accomplished software and enterprise architect, helping teams deliver worthwhile solutions for over 25 years in the manufacturing, building automation, financial services, and telecommunications industries. A lifelong learner, writer, and teacher, Darrell maintains an abundance mindset, believes that the way we treat people matters a lot, and is grateful to be able to experience this mystery we call life. About the Technical Reviewer
Page
18
xxi Acknowledgments If I have seen further, it is by standing on the shoulders of giants. —Sir Isaac Newton As I look at this long and dense manuscript that I have spent the past two years writing, I cannot help but remain surprised. Honestly, I never thought I would ever have enough to say to fill a book, let alone the ability to sit down and write one. Yet here we are. Life, sometimes, surprises us. My entire adult life I have juggled dual careers in magic and technology with an intention to retire from software and focus completely on magic. In fact, I did just that in 2014. Just when I thought I was out, they pull me back in! —Michael Corleone, The Godfather Part III I have Jay Zimmerman, founder of the No Fluff Just Stuff (NFJS) conference series, to thank for pulling me back in. In 2008 or 2009, he found me online and booked me to perform a magic show at his flagship conference, ÜberConf. At that time, nobody knew that software engineering was my “day job”; however, my domain knowledge was clearly evident in the show that I wrote, and that performance was exceptionally well received by the audience. Well, almost. As I was leaving the ballroom, I heard a voice bellow “You’re wrong, by the way!” I turned to the source of the comment, and the volunteer critic expanded on his statement, pointing out a factual error in my script. OK, the show was well received except by that one guy. You can’t please everyone. On the success of the show at ÜberConf, Jay booked me for another conference that year, this time in Florida where I delivered a similar performance. Once again, the show was exceptionally well received. While I was packing up to head to the evening reception, a member of the audience approached me to say “Kudos! You fixed your script!” It was the volunteer critic I met at ÜberConf, six months earlier. The critic was
Page
19
xxii not an attendee, as I had first assumed, but rather was Brian Sletten who was—and is—a regular speaker at NoFluff events. It is Brian Sletten to whom I owe an enormous debt of gratitude. Despite a rather gruff initial interaction, Brian and I have grown to be good friends, and he has contributed enormously to my philosophy and collection of mental models. Brian is a deep thinker who is a master of critical thought and possesses the rare ability to see things as they really are. Brian is not the only NoFluff speaker who has had a profound impact on my personal and professional growth. In fact, many subsequent conference performances allowed me to meet and befriend many brilliant thought leaders. I cannot name them all; however, at a minimum, I want to thank the tour regulars. Venkat Subramanium, Ken Kousen, Raju Gandhi, Ken Sipe, Danny Brian, Daniel Hinojosa, Jonathan Johnson, Doug Hawkins, Tim Berglund, Craig Walls, Chris Maki, Nate Schutta, Scott Davis, and Llewellyn Falco have all supported me and inspired me to become who I am today. I also owe a particular debt to Mark Richards and Neal Ford. For years, these towering intellects dominated the architecture tracks at most of the conferences I have participated in. Although they are no longer regulars at NoFluff events, their friendship and influence live on. It is no surprise that I cite and quote these individuals and their work frequently throughout this book. I’m also extraordinarily grateful to Roy Fielding, both for his contributions to the Web and for his dissertation which introduced me to a new model of software architecture that has informed my thinking ever since. There is, of course, more to the story than just doing magic tricks at conferences. As the NFJS resident magician, my software bona fides were not widely known. The speakers and crew, however, welcomed me into the fold without question. Jay always recognized that there was more to me than meets the eye, and, within a year or two of giving shows, he invited me to speak. At that point, the two worlds that I fought so hard for so long to keep separate irrevocably collided. Like it or not, I was back in the game. History repeats itself. I met Martin Anderson, an early mentor and my first employer in the tech industry, when I was the resident magician at TGI Friday’s back in the late 1990s. Through sheer luck, I learned of Martin the night before we met. His name had come up as someone I should approach for an internship or junior developer role, and subsequent research turned up a personal home page he had built as an exercise to learn HTML. The website laid out his, and his family’s, whole life story. Such inside information is particularly valuable when giving mindreading demonstrations. I can aCknowledgmenTs
Page
20
xxiii only imagine that the “insight” I displayed was nothing short of astounding. When I had finally deployed every fact at my disposal (and, thus, finally time to conclude my extended performance), I mentioned that I was “a keen amateur programmer” who might be in the market for an entry-level software development position. Martin responded by saying “If you’re half as good at that as you are at this, you’re hired” and gave me a job on the spot. I suppose I should have come clean to Martin, but the timing never seemed right. In the beginning, it seemed too soon to confess and pull the rug out from underneath the first impression I had created. Before long, the optimal window for sharing the truth had passed. Consequently, the story never came up. Martin, if you are learning this for the first time, let me take this opportunity to say both “Thank you” and “I’m sorry.” Another notable employer is Robert Harris, a standout boss, friend, and mentor who instilled a sense of ruthless pragmatism into me and taught me how to navigate the complex human element of software engineering. I also owe a debt to another manager, Ståle Veipe, who encouraged me to refine and sharpen my unique perspective on software architecture. Of course, I must go even further back to thank my parents, Bob and Jackie, for somehow acquiring an Apple IIgs in the 1980s, where I first learned to program. I also owe a debt to Jim Rogers, my neighbor growing up, for mentoring me during my early programming journey and who first connected me to the Internet in 1993, allowing me to participate in the dawn of the Web. Also, my sister Sara who lit the spark of magic in me at an early age, which led me to where I am today. Michael Lewis, my stepfather, also helped me greatly during my formative years exploring technology and facilitated many opportunities that were not yet commonplace. As I enumerate the names of those who have been instrumental in my journey, I realize a list of acknowledgments will never be complete. In truth, I owe a debt to so many people who have helped me along my journey. Even if you do not see your name in this section, it is not a reflection of the extent of your contribution, but rather a reflection of the challenges inherent to writing an “acknowledgments” section for a book that I know will always be incomplete. Before I close, however, I want to personally thank a few more people. I am grateful to Celestin John and the team at Apress for their patience as they waited for me to finally respond to their requests for me to join the ranks of their authors (and their patience as they waited for a completed manuscript). Thanks to my good friend, Joshua van aCknowledgmenTs