| ||||||||||||
Product Details
|
The focus of this text is on use cases that are written as opposed to modelled 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 colour scheme in which blue indicates a sea-level use case that's just right while higher-level use cases are white and over-detailed ones are indigo. It 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) borrowed from real-world projects that demonstrate both good and bad practices. Even though the author expresses a preferences 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
Suggested Tags from Similar Products(What's this?)Be the first one to add a relevant tag (keyword that's strongly related to this product)
|
|
Share your thoughts with other customers:
|
||||||||||||||||||||||
|
Most helpful customer reviews
2 of 2 people found the following review helpful:
5.0 out of 5 stars
This Book Will Help,
By
This review is from: Writing Effective Use Cases (Paperback)
I had never heard of Use Cases until taking a class in Systems Analysis and Development. So I went to Amazon and did a search for books on Use Cases and saw that this one was rated quite high. I believe I read all the customer reviews. I don't understand how most everyone can give a 5 star rating and one person gives it a 1 star rating. I must say that this book could make even someone new like me, being new to Use Cases, look good. The Table of Contents makes it easy to find an overall view of Use Case topics and the Index breaks it down in great detail. The book is described by the author as a book that is, "predominately aimed at industry professionals who read and study alone, and is therefore organized as a self-study guide." I like that. If you are looking for a book for a class, such as the one I took, or just want to look good at work to describe a process, behavioral requirements, or software development, surely this book could help you too.
2 of 2 people found the following review helpful:
5.0 out of 5 stars
Understanding the principles behind writing use cases,
By
This review is from: Writing Effective Use Cases (Paperback)
I had been looking at the value of writing use cases for some time, but hadn't done so because I couldn't visualize clearly how they added value or what was the best format, text or symbols. "Writing Effective Use Cases" answered my specific questions, which is why I'm adding a 26th review to the 25 excellent previous ones.* How do I apply use cases to non-business software? "Occasionally I hear someone complain that it is hard to describe the requirements for a tape merge operation or a compiler with use cases. I wholeheartedly agree. Those are best described using algebraic or tabular forms." * Can I go straight from use cases to design? "The design doesn't cluster by use case. Blindly following the use case structure leads to functional decomposition designs (this is really of concern to object-oriented and component design teams.)" * How do use cases relate to requirements? "[The use case] becomes a communication device between the different stakeholders on the project". Recommended by the author:
2 of 2 people found the following review helpful:
2.0 out of 5 stars
Cockburn's approach naive,
By The Lone Gunman (Birmingham, England) - See all my reviews
This review is from: Writing Effective Use Cases (Paperback)
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......
Share your thoughts with other customers: Create your own review
Want to see more reviews on this item?
|
Most recent customer reviews |
|