10 books like Use Cases

By Daryl Kulak, Eamonn Guiney,

Here are 10 books that Use Cases fans have personally recommended if you like Use Cases. Shepherd is a community of 12,000+ authors and super readers sharing their favorite books with the world.

When you buy books, we may earn a commission that helps keep our lights on (or join the rebellion as a member).

Book cover of Mastering the Requirements Process: Getting Requirements Right

Karl Wiegers Author Of Software Requirements

From my list on defining software requirements.

Why am I passionate about this?

Defining and managing the requirements for a software system is hard! I’ve been interested in improving how projects handle their requirements for more than 35 years. I realized how important this was when I saw how many projects—including my own—struggled and failed when they neglected to build a solid foundation of well-understood and clearly communicated requirements. I’ve personally used nearly all of the techniques described in my book Software Requirements, and I got always better results when I applied those techniques. My books, articles, training courses, presentations, and videos on requirements have been helpful to thousands of business analysts worldwide for many years.

Karl's book list on defining software requirements

Karl Wiegers Why did Karl love this book?

Suzanne and James Robertson have been writing insightful books on software requirements for many years. This book covers all the important topics, including understanding the real problem, different techniques for exploring solutions, and numerous ways to communicate requirements effectively. I especially like their treatment of quality attribute requirements and defining “fit criteria” to judge whether a solution adequately addresses them.

The book includes a comprehensive requirements specification template to guide writing a rigorous and complete specification on projects for which that is valuable. I also appreciate their use of visual models both to communicate with the reader and to guide the reader in communicating requirements to project stakeholders. I do prefer my book Software Requirements, but this is an excellent choice as well by two authorities in the field.

By Suzanne Robertson, James Robertson,

Why should I read it?

1 author picked Mastering the Requirements Process as one of their favorite books, and they share why you should read it.

What is this book about?

"If the purpose is to create one of the best books on requirements yet written, the authors have succeeded."

-Capers Jones

Software can solve almost any problem. The trick is knowing what the problem is. With about half of all software errors originating in the requirements activity, it is clear that a better understanding of the problem is needed.



Getting the requirements right is crucial if we are to build systems that best meet our needs. We know, beyond doubt, that the right requirements produce an end result that is as innovative and beneficial as it can be, and that…


Book cover of Requirements by Collaboration: Workshops for Defining Needs

Karl Wiegers Author Of Software Requirements

From my list on defining software requirements.

Why am I passionate about this?

Defining and managing the requirements for a software system is hard! I’ve been interested in improving how projects handle their requirements for more than 35 years. I realized how important this was when I saw how many projects—including my own—struggled and failed when they neglected to build a solid foundation of well-understood and clearly communicated requirements. I’ve personally used nearly all of the techniques described in my book Software Requirements, and I got always better results when I applied those techniques. My books, articles, training courses, presentations, and videos on requirements have been helpful to thousands of business analysts worldwide for many years.

Karl's book list on defining software requirements

Karl Wiegers Why did Karl love this book?

Exploring requirements is more about communication than computing. Requirements elicitation often involves discussions between business analysts and user representatives or other project stakeholders in either one-on-one discussions or group workshops. Requirements by Collaboration presents a wealth of practical tools and techniques for planning and leading requirements development workshops. It’s packed full of useful tips, checklists, questions to ask, and activities to perform to make workshops effective and successful.

I especially like Gottesdiener’s “collaboration patterns,” eight techniques that a workshop facilitator can employ to help the group achieve its objectives. The pattern called Decide How to Decide is the first one that any group of collaborators should use: exactly how will we make decisions? If you expect to lead, or even participate in, requirements workshops, read this book first.

By Ellen Gottesdiener,

Why should I read it?

1 author picked Requirements by Collaboration as one of their favorite books, and they share why you should read it.

What is this book about?

"I spend much time helping organizations capture requirements and even more time helping them recover from not capturing requirements. Many of them have gone through some motions regarding requirements as if they were sleepworking. It's time to wake up and do it right-and this book is going to be their alarm clock."

- Jerry Weinberg, author of numerous books on productivity enhancement "In today's complex, fast-paced software development environment, collaboration-the intense peer-to-peer conversations that result in products, decisions, and knowledge sharing-is absolutely essential to success. But all too often, attempts to collaborate degenerate into agonizing meetings or ineffectual bull sessions.…


Book cover of The Quest for Software Requirements

Karl Wiegers Author Of Software Requirements

From my list on defining software requirements.

Why am I passionate about this?

Defining and managing the requirements for a software system is hard! I’ve been interested in improving how projects handle their requirements for more than 35 years. I realized how important this was when I saw how many projects—including my own—struggled and failed when they neglected to build a solid foundation of well-understood and clearly communicated requirements. I’ve personally used nearly all of the techniques described in my book Software Requirements, and I got always better results when I applied those techniques. My books, articles, training courses, presentations, and videos on requirements have been helpful to thousands of business analysts worldwide for many years.

Karl's book list on defining software requirements

Karl Wiegers Why did Karl love this book?

Most discussions about requirements focus on functionality, which is what the users most obviously observe in a software system. However, user satisfaction also depends heavily on nonfunctional requirements, such as various quality characteristics the system exhibits: usability, availability, reliability, security, scalability, maintainability, and others.

The Quest for Software Requirements is the only book that focuses on nonfunctional requirements. It provides many questions a business analyst could ask during requirements elicitation to understand the stakeholders’ expectations for those all-important quality attributes. That’s an often-neglected aspect of requirements exploration that frequently leads to deficiencies that can be expensive to correct later in development or after the product is released. This book can help you avoid those unpleasant outcomes.

By Roxanne E. Miller,

Why should I read it?

1 author picked The Quest for Software Requirements as one of their favorite books, and they share why you should read it.

What is this book about?

Overlooked or poorly defined nonfunctional software requirements are widely recognized to be among the most expensive and difficult errors to correct after a softward system has been implemented. This book presents over 2,000 suggested questions to help master the elicitation of these hard-to-identify, yet vital, requirements. Its proven step-by-step techniques, insightful tips and tools, easy-to-use checklists, examples of nonfunctional requirements, and requirements-gathering questions, will assist the reader in developing and installing software requirements.


Book cover of User Stories Applied: For Agile Software Development

Karl Wiegers Author Of Software Requirements

From my list on defining software requirements.

Why am I passionate about this?

Defining and managing the requirements for a software system is hard! I’ve been interested in improving how projects handle their requirements for more than 35 years. I realized how important this was when I saw how many projects—including my own—struggled and failed when they neglected to build a solid foundation of well-understood and clearly communicated requirements. I’ve personally used nearly all of the techniques described in my book Software Requirements, and I got always better results when I applied those techniques. My books, articles, training courses, presentations, and videos on requirements have been helpful to thousands of business analysts worldwide for many years.

Karl's book list on defining software requirements

Karl Wiegers Why did Karl love this book?

Many agile projects employ user stories as a way to represent requirements rather than a more traditional approach combining use cases and functional requirements. I favor the latter approach for several reasons. Nonetheless, user stories are well established in the agile development world, and if you wish to learn about them, there’s no better author to read than Mike Cohn. Cohn describes how to craft user stories well and how they fit into the agile development process.

By Mike Cohn,

Why should I read it?

1 author picked User Stories Applied as one of their favorite books, and they share why you should read it.

What is this book about?

Thoroughly reviewed and eagerly anticipated by the agile community, User Stories Applied offers a requirements process that saves time, eliminates rework, and leads directly to better software.

The best way to build software that meets users' needs is to begin with "user stories": simple, clear, brief descriptions of functionality that will be valuable to real users. In User Stories Applied, Mike Cohn provides you with a front-to-back blueprint for writing these user stories and weaving them into your development lifecycle.

You'll learn what makes a great user story, and what makes a bad one. You'll discover practical ways to gather…


Book cover of Contextual Design: Design for Life

Jeff Johnson Author Of Designing with the Mind in Mind: Simple Guide to Understanding User Interface Design Guidelines

From my list on making digital technology usable and useful.

Why am I passionate about this?

I have been designing user interfaces since graduate school at Stanford, where I studied psychology and computer science. Over the five decades since then, I have designed many digital products and services, learning a lot about how to make them usable and useful. Two decades ago, I turned more towards sharing my knowledge and experience through writing (articles and books) and teaching (professionals and students). I’ve taught at Stanford University, Mills College, the University of Canterbury (New Zealand), the University of San Francisco, and at professional conferences and companies. Google invited me twice to speak in their Authors @ Google series, and ACM and SIGCHI have given me several awards.

Jeff's book list on making digital technology usable and useful

Jeff Johnson Why did Jeff love this book?

This book is the software industry’s “bible” on how to start software development projects. 

It explains how to conduct up-front user research, before design, prototyping, and coding start. User research, followed by analysis of your findings, is how you determine requirements and figure out what features or improvements are needed and which are most important. 

This book presents a collection of methods for doing that. You probably won’t need every method described this book on every project, but having Holtzblatt and Beyer’s toolkit of user-research and analysis methods available when needed is valuable. 

I read it several times, and now several of its methods are baked into my normal design process.

By Karen Holtzblatt, Hugh Beyer,

Why should I read it?

1 author picked Contextual Design as one of their favorite books, and they share why you should read it.

What is this book about?

Contextual Design: Design for Life, Second Edition, describes the core techniques needed to deliberately produce a compelling user experience. Contextual design was first invented in 1988 to drive a deep understanding of the user into the design process. It has been used in a wide variety of industries and taught in universities all over the world. Until now, the basic CD approach has needed little revision, but with the wide adoption of handheld devices, especially smartphones, the way technology is integrated into people's lives has fundamentally changed. Contextual Design V2.0 introduces both the classic CD techniques and the new techniques…


Book cover of Virtual Reality Usability Design

Cory Lebson Author Of The UX Careers Handbook

From my list on starting in user experience (UX) design and research.

Why am I passionate about this?

There is a scene in the 1960 movie adaptation of The Time Traveler by HG Wells where the protagonist goes rapidly into the future as he watches a whole city spin into existence around him. That’s how I feel about my career. I started in 1994 and have watched UX grow into an incredible field! I’ve run my own business since 2008 focused exclusively on qualitative research consulting while also doing all sorts of exciting thought leadership activities – from writing to speaking to creating a number of courses on LinkedIn Learning – and I love to build my UX network too! I live in Silver Spring, Maryland.

Cory's book list on starting in user experience (UX) design and research

Cory Lebson Why did Cory love this book?

There are a whole host of books about UX methods, but in our world of ever-advancing technology, there are few books that are really up to date with how to practice UX when the medium is no longer one-dimensional or even a physical product.

As AR and VR experiences are becoming more and more normal, I’ve appreciated being able to read a book that really captures the most recent evolution of UX methods towards a new virtual world of possibilities. 

By David Gerhard, Wil J. Norton,

Why should I read it?

1 author picked Virtual Reality Usability Design as one of their favorite books, and they share why you should read it.

What is this book about?

1. Provides a toolkit of templates for common VR interactions, as well as practical advice on when to use
them and how to tailor them for specific use cases;
2. Includes case studies detailing the practical application of interaction theory discussed in each chapter;
3. Presents tables of guidelines for practicing VR developers, for reference during software development;
4. Covers procedures for Interface Evaluation - formulas and testing methodologies to ensure that VR
interfaces are effective, efficient, engaging, error-tolerant, and easy to learn;
5. Non-linear organisation - chapters of the book on different concepts can be read to gain knowledge…


Book cover of Building Secure and Reliable Systems: Best Practices for Designing, Implementing, and Maintaining Systems

Adam Shostack Author Of Threat Modeling: Designing for Security

From my list on application security for builders.

Why am I passionate about this?

Being able to understand and change reality through our knowledge and skill is literal magic. We’re building systems with so many exciting and unexpected properties that can be exploited and repurposed for both good and evil. I want to keep some of that magic and help people engineer – build great systems that make people’s lives better. I’ve been securing (and breaking) systems, from operating rooms to spaceships, from banks to self-driving cars for over 25 years. The biggest lesson I’ve learned is that if security is not infused from the start, we’re forced to rely on what ought to be our last lines of defense. This list helps you infuse security into your systems.

Adam's book list on application security for builders

Adam Shostack Why did Adam love this book?

This book captures lessons from many authors at Google, some of whom I’ve worked with over the years. The chapters on availability (7, 8, 9) were a revelation to me. I had no idea how Google approaches the topic of resilience and recovery in their systems, and I now think of the whole topic very differently. The biggest takeaway is how to think about the design of systems.

By Heather Adkins, Betsy Beyer, Paul Blankinship , Ana Oprea , Adam Stubblefield

Why should I read it?

1 author picked Building Secure and Reliable Systems as one of their favorite books, and they share why you should read it.

What is this book about?

Can a system be considered truly reliable if it isn't fundamentally secure? Or can it be considered secure if it's unreliable? Security is crucial to the design and operation of scalable systems in production, as it plays an important part in product quality, performance, and availability. In this book, experts from Google share best practices to help your organization design scalable and reliable systems that are fundamentally secure.

Two previous O'Reilly books from Google-Site Reliability Engineering and The Site Reliability Workbook-demonstrated how and why a commitment to the entire service lifecycle enables organizations to successfully build, deploy, monitor, and maintain…


Book cover of Patterns for API Design: Simplifying Integration with Loosely Coupled Message Exchanges

Ikenna Nwaiwu Author Of Automating API Delivery: APIOps with OpenAPI

From my list on API design and management.

Why am I passionate about this?

I specialize in helping organizations scale their API design and development processes and improve their API governance. With a background in software engineering, I now work full-time as an API consultant. I hope you find the books on this list enjoyable.

Ikenna's book list on API design and management

Ikenna Nwaiwu Why did Ikenna love this book?

This is the API design patterns book. I love this book because it provides a comprehensive set of well-described and easy-to-reference API design patterns. It establishes a common domain vocabulary for discussing APIs. Each pattern comes with a UML diagram that gives it a level of exactness and makes it quickly parseable. Even without reading the full description of a pattern, I can look at its UML diagram and promptly get its essence.

The book is divided into three parts. There are multiple reading paths through the book—so I didn’t need to read it end to end in a sequential order. After going through the introduction to understand the structure and layout of the book, I could jump to the patterns and use case examples most relevant to my needs. The book also comes with a companion website. This is an excellent work and a handy reference for all API…

By Olaf Zimmermann, Mirko Stocker, Daniel Lubke , Uwe Zdun , Cesare Pautasso

Why should I read it?

1 author picked Patterns for API Design as one of their favorite books, and they share why you should read it.

What is this book about?

Proven Patterns for Designing Evolvable High-Quality APIs--For Any Domain, Technology, or Platform

APIs enable breakthrough innovation and digital transformation in organizations and ecosystems of all kinds. To create user-friendly, reliable and well-performing APIs, architects, designers, and developers need expert design guidance. This practical guide cuts through the complexity of API conversations and their message contents, introducing comprehensive guidelines and heuristics for designing APIs sustainably and specifying them clearly, for whatever technologies or platforms you use.

In Patterns for API Design: Simplifying Integration with Loosely Coupled Message Exchanges, five expert architects and developers cover the entire API lifecycle, from launching projects…


Book cover of Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation

Yevgeniy Brikman Author Of Fundamentals of DevOps and Software Delivery: A Hands-On Guide to Deploying and Managing Software in Production

From my list on practical, hands-on books on DevOps and software delivery.

Why am I passionate about this?

I’ve spent more than a decade working on infrastructure, from my early days at LinkedIn, where we had to do a massive DevOps transformation to save the company, to co-founding Gruntwork, where I had the opportunity to work with hundreds of companies on their software delivery practices. From all of this, I can say the following with certainty: the DevOps best practices that a handful of the top tech companies have figured out are not filtering down to the rest of the industry. This is making the entire software industry slower, less effective, and less secure—and I see it as my mission to fix that.

Yevgeniy's book list on practical, hands-on books on DevOps and software delivery

Yevgeniy Brikman Why did Yevgeniy love this book?

This is one of those books that changed how I thought about and approached software development. First, the book addressed the pain points that I had run into so often: the problems with infrequent, manual deployments, the outages caused by changing configuration rather than source code, the nightmare of merge conflicts that you get from long-lived feature branches, and so on.

Then, it showed how to flip the typical software development process on its head through CI / CD, changing the default from “our software is broken, and we need an integration and release process to get it working” to “our software is always working, and we can release it at any time.” Once I read it, I could never go back to the old way.

By Jez Humble, David Farley,

Why should I read it?

1 author picked Continuous Delivery as one of their favorite books, and they share why you should read it.

What is this book about?

Winner of the 2011 Jolt Excellence Award!

Getting software released to users is often a painful, risky, and time-consuming process.This groundbreaking new book sets out the principles and technical practices that enable rapid, incremental delivery of high quality, valuable new functionality to users. Through automation of the build, deployment, and testing process, and improved collaboration between developers, testers, and operations, delivery teams can get changes released in a matter of hours-sometimes even minutes-no matter what the size of a project or the complexity of its code base.

Jez Humble and David Farley begin by presenting the foundations of a rapid,…


Book cover of Domain-Driven Design: Tackling Complexity in the Heart of Software

Alexander Granin Author Of Functional Design and Architecture

From my list on domain modeling.

Why am I passionate about this?

If someone had told me during my early professional years that I would become a strong advocate for functional programming and the author of a fundamental book on functional software engineering, I would have found it hard to believe. Was functional programming truly worth dedicating my life to? However, once I experienced the sheer beauty of functional programming, there was no turning back. I delved deep into Haskell and functional C++, and began writing articles, giving talks, and developing various technologies. I realized that I possessed a truly unique perspective on approaching software engineering in functional languages, and that there was a significant knowledge gap that needed to be filled for the benefit of all.

Alexander's book list on domain modeling

Alexander Granin Why did Alexander love this book?

My journey in the world of software development has been arduous and challenging.

One of the common struggles we all face is the overwhelming number of solutions available, making it impossible to fully grasp everything at a deep level.

Just when I thought I had mastered an approach and felt competent in it, a new shiny approach would emerge, demanding my immediate attention. It often felt like a never-ending race to keep up with the ever-evolving field.

This constant pursuit of staying relevant as a software engineer can be frustrating, as it feels like we are always lagging behind the rapidly advancing world. I discovered that knowledge of specific technologies, frameworks, or libraries does not easily transfer across different technology stacks. They are too specific and lack universality. It was then that I turned my focus to more general principles of software engineering.

I realized that there are fundamental engineering…

By Eric Evans,

Why should I read it?

2 authors picked Domain-Driven Design as one of their favorite books, and they share why you should read it.

What is this book about?

Incorporate effective domain modeling into the software development process

Software design thought leader and founder of Domain Language, Eric Evans, provides a systematic approach to domain-driven design, presenting an extensive set of design best practices, experience-based techniques, and fundamental principles that facilitate the development of software projects facing complex domains. Intertwining system design and development practice, this book incorporates numerous examples based on actual projects to illustrate the application of domain-driven design to real-world software modeling and development.

Domain Model: Part I outlines the goals of domain-driven development, defines terms, and gives an overview of the implications of using the…


Book cover of Mastering the Requirements Process: Getting Requirements Right
Book cover of Requirements by Collaboration: Workshops for Defining Needs
Book cover of The Quest for Software Requirements

Share your top 3 reads of 2024!

And get a beautiful page showing off your 3 favorite reads.

1,187

readers submitted
so far, will you?

5 book lists we think you will like!

Interested in software, agile software development, and organizational change?

Software 61 books