CSC/ECE 517 Fall 2007/wiki2 4 np
Use cases. There are even more pages on the Web on use cases than on MVC. If someone wants to learn about them, what should (s)he do? Look at the first few hits in Google? I expect we can do better than that. Write a review of the use-case sites on the Web. Which are best for learning about the concept? Which have the most instructive examples? Which teach advanced concepts that are not apparent in perusing most use-case sites? Read at least several dozen pages before deciding how to organize your overview
What are use cases
A ‘use case’ can capture specific functionality of the system that user needs from the system. There are numerous websites and resources on the topic of “Use cases”. We attempt to provide a guide to most useful ones…
Introduction
• http://www.cragsystems.com/SFRWUC/index.htm This is a web-based tutorial that introduces beginners to use cases. It clearly illustrates with appropriate examples the concepts related to use cases. It further describes application of use cases in documenting functional requirements. It also has a short quiz, a test and an exercise at the end. Excellent navigation is a plus. • http://www.csc.calpoly.edu/~dbutler/tutorials/winter96/use/ This short tutorial discusses how use-cases fit into the framework of user-centered analysis. It gives a sample use case of ATM cash withdrawal. It also describes the role of use cases in design and testing phase. • http://en.wikipedia.org/wiki/Use_case This wiki provides an introduction to use case concepts in very simple terms, so seems to be a good starting point for early beginners. • http://www.parlezuml.com/tutorials/usecases/usecases_intro.pdf • http://parlezuml.com/tutorials/usecases/usecases.pdf These are very short and simple tutorials by Jason Gorman that explain the basics of use cases. Apart from use cases, the author covers the related concepts such as actors, system, scenarios. He also explains special use cases: <<extend>> and <<include>> and provides a brief explanation of how use cases can be part of agile development process.
• http://www.bredemeyer.com/use_cases.htm This is a one-page document illustrating how use cases can be effective means to gather functional requirements. It provides valuable pointers to other use-case resources. Though short, it is quite informative for new learners. • http://alistair.cockburn.us/index.php/Use_case_fundamentals This is a good website which deals with the scope of use cases..It provides a brief description of use cases and actors along with analysis of use case reports.It also describes steps involved in validation of use cases
• http://alistair.cockburn.us/index.php/Structuring_use_cases_with_goals
Here is a great guide to use cases by Alistair Cockburn, a renowned strategist and one of the leaders of agile movement. Though the article quite reader-friendly, it expects the reader to be familiar with at least the basic concepts. It offers brief descriptions of terms involved and analysis of use case reports.
• http://courses.softlab.ntua.gr/softeng/Tutorials/UML-Use-Cases.pdf
This presentation offers succinct definitions for various terms related to use cases, also provides notational guide for documenting use case diagrams. It explains how to build scenarios ( flow of events in a use case) .
How to write use cases:
Writing use cases are not confined to drawing use case diagram. Rather, a written use case is a brief but complete text description of every identified use case (functionality) of the system identified.
• http://www.informit.com/articles/article.aspx?p=30084&seqNum=8&rl=1
Here is an article that clearly distinguishes between a good use case and a bad use case. It gives an example of course registration for students and then explains writing the use case descriptions.
• http://www.answers.com/topic/use-case?cat=technology
This is a comprehensive article that starts off with an overview of use cases and provides an excellent reference for how to write use cases. It also comments on various types of use-cases based on the functionality (business/system) or degree of detail (brief / casual / fully dressed). It elaborates on various sections of use case description.
• http://infogenium.typepad.com/inside_infogenium/2007/07/getting-started.html
Here is a short tutorial for developers that are intimidated by the requirement documentation phase using the use cases. It explains the steps involved in capturing the requirements, introduces the concept of use-case brief. It illustrates the concepts with a file attachment example.