ABSTRACT
Identifying use cases is one of the most important steps in the software requirement analysis. This paper makes a
literature review over use cases and then presents six taxonomies for them. The first taxonomy is based on the
level of functionality of a system in a domain. The second taxonomy is based on primacy of functionality and the
third one relies on essentialness of functionality of the system. The fourth taxonomy is concerned with supporting
of functionality. The fifth taxonomy is based on the boundary of functionality and the sixth one is related to
generalization/specialization relation. Then the use cases are evaluated in a case study in a control command
police system. Several guidelines are recommended for developing use cases and their refinement, based on some
practical experience obtained from the evaluation.
Keywords: - Use cases, Taxonomy, Software Engineering.