Writing Effective Use Cases

Writing Effective Use Cases
by Alistair Cockburn

Writing Effective Use Cases
List Price: $54.99
Our Price: $26.87
You Save: $28.12 (51%)
Availability: Usually ships in 1-2 business days
Buy Used: from $12.50 (click here)
Category: Book
See more book details and other editions


or

Book Summary Information

Author: Alistair Cockburn
Edition: Paperback
Audio: English (Unknown); English (Original Language); English (Published)
Published: 2000-10-15
ISBN: 0201702258
Number of pages: 304
Publisher: Addison-Wesley Professional
Accessories:

Book Reviews of Writing Effective Use Cases

Book Review: Cockburn's approach naive
Summary: 2 Stars

Being a consultant requirements/acceptance test/systems test analyst working on large business systems using OOA techniques, I was hoping that this would be a significant improvement over e.g. Jacobson and Schneider & Winters.

Cockburn's approach to business use-cases is centred on an actor wanting to achieve a goal rather than a business event/response focus. Although business events are stated as triggers to a use-case, I am not happy with this, as a business event occurrence needs to cause the instantiation of an actor to handle the event. If BPR is part of the programme, the actor may not yet be known, as the determination of actors may be deferred until design, which is possible with the business event/response paradigm.

Cockburn partitions use case scenarios into those which `succeed', i.e. the actor achieves the goal, and those that `fail', i.e. the goal is not achieved due to violation of a rule. I do not agree with this view; a use case `fails' if it puts the business into an undefined state, which must never happen.

The content of the example use cases made no explicit mention of business objects, i.e. the static data-centric viewpoint was completely missing. As a result, I found the use cases to be too imprecise and largely untestable. In order to be precise and unambiguous, business use cases must be written in terms of a static business object model, supplemented with statecharts for business objects with complex lifecycles.

On page 164 Cockburn states that ` business rules do not fit well into the use case narrative'. I totally disagree : business use cases are the dynamic process view, and this is exactly where business rules must be, in their context of application. Business rules are often candidate variation points in a design, but for the designer to make intelligent decisions about them, their context of application to transactions must be clearly defined.

Cockburn's recommended format for use cases is numbered paragraphs detailing the main `success' scenario, with extensions for other scenarios. He does not recommend if..then..else statements, as he believes this leads to the document being difficult to read. If ... statements have basically been transmuted into extension paragraphs, but this will quickly degenerate into the `Fragmentary' type of process specification, which is hard work for designers and test analysts.

The section on stakeholders in use cases is focussed on business interests, whereas the focus should be on designers and test analysts as being the primary audience. As a result, the sections on QA and testing are woefully inadequate.

Much is made of `readability'; in my experience, the reason requirements documents do not get read is because they do not directly tell the the reader what he/she wants to know. Cockburn's method is more compact than the `Wuthering Heights' and `Fragmentary styles', but ultimately still falls into this trap.

Overall, I found this approach naïve, there being no evidence of any real analysis or modelling. This is reinforced by the reading list being very short for a technical book and not containing a single `serious' requirements engineering reference. I also believe Cockburn's approach is dangerous, in that it could lead to a totally false sense of security in the hands of inexperienced practitioners with a low level of knowledge of real requirements engineering.

Although the format is an improvement over the `Wuthering Heights' and `Fragmentary' styles of functional requirements specification, the example use cases are at `Concept of Operations' level, and are not sufficient for process requirements specification. If I were an acceptance test analyst given this content from which to identify test cases, I would know that I would have a lot of work to do; and yes, in my opinion there is a better way......

Summary of Writing Effective Use Cases

Use cases have never been this easy to understand -- or this easy to create! In Writing Effective Use Cases, Alistair Cockburn offers a hands-on, soup-to-nuts guide to use case development, based on the proven concepts he has refined through years of research, development, and seminar presentations. Cockburn begins by answering the most basic questions facing anyone interested in use cases: "What does a use case look like? When do I write one?" Next, he introduces each key element of use cases: actors, stakeholders, design scope, goal levels, scenarios, and more. Writing Effective Use Cases contains detailed guidelines, formats, and project standards for creating use cases -- as well as a detailed chapter on style, containing specific do's and don'ts. Cockburn shows how use cases fit together with requirements gathering, business processing reengineering, and other key issues facing software professionals. The book includes practice exercises with solutions, as well as a detailed appendix on how to use these techniques with UML. For all application developers, object technology practitioners, software system designers, architects, and analysts.
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

Topics covered:
  • Introduction to use cases
  • Requirements
  • Usage narratives
  • Actors and goals
  • Stakeholders
  • Graphical models for use cases
  • Scope for use cases (enterprise-level through nuts-and-bolts use cases)
  • Primary and supporting actors
  • Goal levels: user goals, summary level, and subfunctions
  • Preconditions, triggers, and guarantees
  • Main success scenarios
  • Extensions for describing failures

  • Formats for use cases (including fully dressed one- and two-column formats)
  • Use case templates for five common project types
  • Managing use cases for large projects
  • CRUD use cases
  • Business-process modeling
  • Missing requirements
  • Moving from use cases to user-interface design
  • Test cases
  • eXtreme Programming (XP) and use cases
  • Sample problem use cases
  • Tips for writing use cases
  • Use cases and UML diagrams
  • Object-Oriented Design Books

    Book Subjects
    Most talked about in Object-Oriented Design Books
    Software Development With C++: Maximizing Reuse With Object Technology ImageSoftware Development With C++: Maximizing Reuse With Object Technology
    by Kjell Nielsen
    Morgan Kaufmann Pub; Published: 1994-10; Paperback; Book
    Best price: $23.86
    Price in other shops: $29.95
    Programming for the Newton: Software Development With Newtonscript/Book and Disk ImageProgramming for the Newton: Software Development With Newtonscript/ Book and Disk
    by Julie McKeehan, Neil Rhodes
    Morgan Kaufmann Pub; Published: 1994-04; Paperback; Book
    Best price: $20.49
    Price in other shops: $29.95
    Object-Oriented Programming With C++ ImageObject-Oriented Programming With C++
    by Raimund K. Ege
    Morgan Kaufmann Pub; Published: 1994-08; Paperback; Book
    Best price: $45.00
    Data Structures with C++ ImageData Structures with C++
    by William Ford, William Topp, Ford William
    Prentice Hall; Published: 1996-01-01; Hardcover; Book
    Best price: $5.00
    Price in other shops: $75.33
    Java Software Solutions: Foundations of Program Design (6th Edition) ImageJava Software Solutions: Foundations of Program Design (6th Edition)
    by John Lewis, William Loftus
    Addison Wesley; Published: 2008-03-07; Paperback; Book
    Best price: $74.40
    Price in other shops: $128.00
    C++ Primer (3rd Edition) ImageC++ Primer (3rd Edition)
    by Stanley B. Lippman, Josée Lajoie
    Addison-Wesley Professional; Published: 1998-04-02; Paperback; Book
    Best price: $14.47
    Price in other shops: $49.99
    Extreme Programming in Practice ImageExtreme Programming in Practice
    by James W. Newkirk, Robert C. Martin
    Addison-Wesley Professional; Published: 2001-06-05; Paperback; Book
    Best price: $0.99
    Price in other shops: $29.99
    Patterns of Software: Tales from the Software Community ImagePatterns of Software: Tales from the Software Community
    by Richard P. Gabriel
    Oxford University Press, USA; Published: 1996-08-15; Hardcover; Book
    Best price: $11.47
    Price in other shops: $27.50
    UML for Java? Programmers ImageUML for Java? Programmers
    by Robert C. Martin
    Prentice Hall; Published: 2003-06-06; Paperback; Book
    Best price: $22.99
    Price in other shops: $44.99
    C How to Program, 2nd Edition ImageC How to Program, 2nd Edition
    by Paul J. Deitel
    Prentice Hall; Published: 1994-01-13; Textbook Binding; Book
    Best price: $25.84
    Price in other shops: $70.00
    Similar Books and other products
    The Software Requirements Memory Jogger: A Desktop Guide to Help Software and Business Teams Develop and Manage Requirements ImageThe Software Requirements Memory Jogger: A Desktop Guide to Help Software and Business Teams Develop and Manage Requirements
    by Ellen Gottesdiener
    Goal/QPC; Published: 2009-11-16; Spiral-bound; Book
    Best price: $18.04
    Price in other shops: $27.95
    UML Distilled: A Brief Guide to the Standard Object Modeling Language (3rd Edition) ImageUML Distilled: A Brief Guide to the Standard Object Modeling Language (3rd Edition)
    by Martin Fowler
    Addison-Wesley Professional; Published: 2003-09-25; Paperback; Book
    Best price: $20.00
    Price in other shops: $49.99
    User Stories Applied: For Agile Software Development ImageUser Stories Applied: For Agile Software Development
    by Mike Cohn
    Addison-Wesley Professional; Published: 2004-03-11; Paperback; Book
    Best price: $34.96
    Price in other shops: $54.99
    A Guide to the Business Analysis Body of Knowledge® (BABOK® Guide) ImageA Guide to the Business Analysis Body of Knowledge® (BABOK® Guide)
    by IIBA
    International Institute of Business Analysis; Published: 2009-03-31; Paperback; Book
    Best price: $45.94
    Price in other shops: $59.95
    Workflow Modeling: Tools for Process Improvement and Application Development, 2nd Edition ImageWorkflow Modeling: Tools for Process Improvement and Application Development, 2nd Edition
    by Alec Sharp, Patrick McDermott
    Artech House; Published: 2008-10-31; Hardcover; Book
    Best price: $52.56
    Price in other shops: $69.00
    More About Software Requirements: Thorny Issues and Practical Advice ImageMore About Software Requirements: Thorny Issues and Practical Advice
    by Karl Wiegers
    Microsoft Press; Published: 2006-01-17; Paperback; Book
    Best price: $12.75
    Price in other shops: $29.99
    Seven Steps to Mastering Business Analysis ImageSeven Steps to Mastering Business Analysis
    by Barbara A. Carkenord
    J. Ross Publishing; Published: 2008-10-14; Paperback; Book
    Best price: $55.78
    Price in other shops: $69.95
    UML For The IT Business Analyst ImageUML For The IT Business Analyst
    by Howard Podeswa
    Course Technology PTR; Published: 2009-06-18; Paperback; Book
    Best price: $28.30
    Price in other shops: $49.99
    The Business Analyst's Handbook ImageThe Business Analyst's Handbook
    by Howard Podeswa
    Course Technology PTR; Published: 2008-12-08; Paperback; Book
    Best price: $27.99
    Price in other shops: $49.99
    Software Requirements 2 ImageSoftware Requirements 2
    by Karl Wiegers
    Microsoft Press; Published: 2003-03-26; Paperback; Book
    Best price: $19.98
    Price in other shops: $39.99