Writing Effective Use Cases
(Amazon) - Clean Code depends on Clean Architecture, and Clean Architecture depends on Use Cases. Use cases provide a beneficial means of project planning because they clearly show how people will ultimately use the system being designed. This guide provides software developers with a nuts-and-bolts tutorial for writing use cases. It covers introductory, intermediate, and advanced concepts, and is suitable for all knowledge levels.
The core basics of writing effective use cases is covered in the first fifty pages. The remainder Part 1 of the book takes a deep dive into Stakeholders, Conditions, Scenarios, and Extensions. In Part 2 of the book is a very helpful discussion of the frequently discussed topics when writing effective use cases. How do you know when you are done? How do you handle missing requirements? How do use cases fit into the overall process? Part 3 is a series of "reminders", or practices, that you can apply to keep your work spot on.
Use cases are the foundation of a well-architected application, and no one explains use cases better than Alistair Cockburn.