This book is part of short form series on Technical Decision Record (TDRs). TDRs are a popular form of decision log in many companies and open source communities.

Audience for this book

Software developers and architects making technical decisions, who currently may or may not use a framework for making and documenting their decisions.

Software developers and architects planning to create a new application who need to choose a third party identity provider or create their own authentication and authorization system.

Why read this book?

You are curious about TDRs and their potential benefits to your team. We will discuss their lightweight format, and provide strategies to keep the process efficient and productive.

This book can also act as a guide for anyone selecting an identity provider (IdP) for their solution. Identity provider selection is the lens used to explore TDRs. In our experience as CTO and software architect roles with dozens of companies, we have been through this particular decision several times each. The right choice depends entirely on the solution but this book discusses the considerations and decision making process recommended for making an IdP selection.

Also Known As...

Technical Decision Record is a generalized name for the documentation and process of recording technical decisions. However, you may have encountered the same concept under different names such as Architecture Decision Records (ADRs), or Technical Decision Logs (TDLs). Fundamentally, these are all the same. We prefer Technical Decision Record because they are applicable to more than just architecture decisions and the decision factors are more important than just the final decision.

Many companies use a Request for Comment (RFC) process. In most cases the goals are the same and for large organizations a formal RFC process is important and we're not suggesting to eliminate or reverse the use of RFC's. Instead, TDRs are meant for teams without such a documentation practice and offer a lightweight means to realize many of the same benefits with less formality; focussing on the collaboration over the review and approval process.

Of course, your organization is welcome to call Technical Decision Records by whatever name fits best for you. The key is that we hope to inspire more teams to use this tool for collaboration, communication, and improved decision making. It has made a significant impact in our projects and we hope they can help you as well.