- Paperback: 304 pages
- Publisher: Addison-Wesley Professional; 1 edition (October 15, 2000)
- Language: English
- ISBN-10: 0201702258
- ISBN-13: 978-0201702255
- Product Dimensions: 7.3 x 0.9 x 9 inches
- Shipping Weight: 1 pounds (View shipping rates and policies)
- Average Customer Review: 85 customer reviews
- Amazon Best Sellers Rank: #155,520 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Writing Effective Use Cases 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
Fulfillment by Amazon (FBA) is a service we offer sellers that lets them store their products in Amazon's fulfillment centers, and we directly pack, ship, and provide customer service for these products. Something we hope you'll especially enjoy: FBA items qualify for FREE Shipping and Amazon Prime.
If you're a seller, Fulfillment by Amazon can help you increase your sales. We invite you to learn more about Fulfillment by Amazon .
"Rebound" by Kwame Alexander
Don't miss best-selling author Kwame Alexander's "Rebound," a new companion novel to his Newbery Award-winner, "The Crossover,"" illustrated with striking graphic novel panels. Pre-order today
Frequently bought together
Customers who bought this item also bought
Customers who viewed this item also viewed
Alistair Cockburn's Writing Effective Use Cases is an approachable, informative, and very intelligent treatment of an essential topic of software design. "Use cases" describe how "actors" interact with computer systems and are essential to software-modeling requirements. For anyone who designs software, this title offers some real insight into writing use cases that are clear and correct and lead to better and less costly software.
The focus of this text is on use cases that are written, as opposed to modeled in UML. This book may change your mind about the advantages of writing step-by-step descriptions of the way users (or actors) interact with systems. Besides being an exceptionally clear writer, the author has plenty to say about what works and what doesn't when it comes to creating use cases. There are several standout bits of expertise on display here, including excellent techniques for finding the right "scope" for use cases. (The book uses a color scheme in which blue indicates a sea-level use case that's just right, while higher-level use cases are white, and overly detailed ones are indigo. Cockburn also provides notational symbols to document these levels of detail within a design.)
This book contains numerous tips on the writing style for use cases and plenty of practical advice for managing projects that require a large number of use cases. One particular strength lies in the numerous actual use cases (many with impressive detail) that are borrowed from real-world projects, and demonstrate both good and bad practices. Even though the author expresses a preference for the format of use cases, he presents a variety of styles, including UML graphical versions. The explanation of how use cases fit into the rest of the software engineering process is especially good. The book concludes with several dozen concrete tips for writing better use cases.
Software engineering books often get bogged down in theory. Not so in Writing Effective Use Cases, a slender volume with a practical focus, a concise presentation style, and something truly valuable to say. This book will benefit most anyone who designs software for a living. --Richard Dragan
From the Back Cover
Writing use cases as a means of capturing the behavioral requirements of software systems and business processes is a practice that is quickly gaining popularity. Use cases provide a beneficial means of project planning because they clearly show how people will ultimately use the system being designed. On the surface, use cases appear to be a straightforward and simple concept. Faced with the task of writing a set of use cases, however, practitioners must ask: "How exactly am I supposed to write use cases?" Because use cases are essentially prose essays, this question is not easily answered, and as a result, the task can become formidable.
In Writing Effective Use Cases, object technology expert Alistair Cockburn presents an up-to-date, practical guide to use case writing. The author borrows from his extensive experience in this realm, and expands on the classic treatments of use cases to provide software developers with a "nuts-and-bolts" tutorial for writing use cases. The book thoroughly covers introductory, intermediate, and advanced concepts, and is, therefore, appropriate for all knowledge levels. Illustrative writing examples of both good and bad use cases reinforce the author's instructions. In addition, the book contains helpful learning exercises--with answers--to illuminate the most important points.
Highlights of the book include:
- A thorough discussion of the key elements of use cases--actors, stakeholders, design scope, scenarios, and more
- A use case style guide with action steps and suggested formats
- An extensive list of time-saving use case writing tips
- A helpful presentation of use case templates, with commentary on when and where they should be employed
- A proven methodology for taking advantage of use cases
With this book as your guide, you will learn the essential elements of use case writing, improve your use case writing skills, and be well on your way to employing use cases effectively for your next development project.
Author interviews, book reviews, editors picks, and more. Read it now
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
I've had a chance to work with use cases and specification of variable quality in my career. Some were much better than the other, but it really varied company-to-company. One common denominator (and sadly an annoying one) was inconsistency regarding naming, conventions, level of detail ... I can't stress enough how much development time I've wasted due to unclear definitions, missing specifications, and general confusion. The author of this book does a great job explaining how use cases fill in this missing piece by suggesting use case format and listing many, many real world examples.
You will read about important aspects of good use cases such as scope definition, which things are to be used in the use case, which things are to be designed as a result of the use case, and the importance of listing preconditions and postconditions. All of this is was demonstrated with great examples. There were things I didn't really like about the book and they seemed like an amusingly big hammer - especially all the little icons and colours trying to introduce some sort of visual framework to it. I'd rather not see any of that noise, but that's a personal preference.
By now use cases have a bit of bad reputation due to heavy-weight methodologies that were encouraged in the past. RUP. Waterfall. BPM. You name it. The author suggests that use cases don't need to be "fully dressed" - we can use different kinds of formal language for use cases. A banking analyst is most likely going to be required to "dress them up", while a startup product owner may come up with something much less formal and relaxed.
With hindsight we can ask ourselves a question. Is this still worth it? Do we still want use cases in young dynamic and fast changing environments like new tech startups? I do think that user stories or BDD are a better fit here. On the other hand we can't forget that there still are huge software companies running important aspects of our daily lives (banks, telco, transport etc.). These companies try to change as well, but it often results in some form of poorly implemented and conceptually broken agilefall process. While I don't really want to advocate for full-blown use cases, it made me stop and think plenty of times, and I am absolutely convinced that some businesses would massively profit from quality use cases.
*disclaimer: I'm referring to the use of use cases in the context of software engineering (not business use cases or other types....I do not know if they are significantly different or not).
We wrote use cases in the past, but they really were hit and miss with the information. Sometimes they were good and gave all the info needed, other times they were lacking. This book gives some great tips and techniques, as well as a template, to capture an excellent format for getting the right and best information in the use cases. With this style of use cases, the requirements development, software development and test development all flow out nicely.
Whenever I am introduced to a modeling tool (UML would be another example for me) I always end up wondering what to put and what to leave out of the model I am building for the problem at hand. This book does not give you a specific answer (who would want a solution that would only apply to only a limited set of problems? I did not, at least for the project I used this book for), it gives you the very essence of the criteria you should apply to include something or not.
By comparing this book to the other ones, this is superior because it does not provide a specific framework with esoteric descriptions about how Use Cases evolve throughout the project life cycle. It describes the purpose of writing use cases: describing a goal of some importance to an actor.
So many times I have read these 'Use Cases' that describe a system in terms of people pushing buttons, changing values in some UI and end up describing the system in terms of CRUD operations not descriptive by any means. If, after all, most 'Enterprise Systems' built are just fancy and costly web-versions of SELECT, INSERT, DELETE and UPDATE statements executed against a database, how informative can be use cases that only say a system INSERTS/UPDATES/DELETES/QUERIES data in a database? By describing a user goal, all database operations (and many other interactions with any back-end systems) start making sense. I have found that we human beings are so good at 'filling out the blanks' that some of these operations might even sound obvious at times.
This book will guide you during the writing of your use cases, keep them at consistent levels of abstraction and, more important, at all times highlight the ultimate goal your user wants to achieve by executing a use case.
If you really want to complement the topics in this book, consider the perfect companion 'Patterns for Effective Use Cases'.