language-icon Old Web
Sign In

Use case

In software and systems engineering, a use case is a list of actions or event steps typically defining the interactions between a role (known in the Unified Modeling Language (UML) as an actor) and a system to achieve a goal. The actor can be a human or other external system. In systems engineering, use cases are used at a higher level than within software engineering, often representing missions or stakeholder goals. The detailed requirements may then be captured in the Systems Modeling Language (SysML) or as contractual statements. Use case analysis is an important and valuable requirement analysis technique that has been widely used in modern software engineering since its formal introduction by Ivar Jacobson in 1992. Use case driven development is a key characteristic of many process models and frameworks such as ICONIX, the Unified Process (UP), the IBM Rational Unified Process (RUP), and the Oracle Unified Method (OUM). With its inherent iterative, incremental and evolutionary nature, use case also fits well for agile development. In 1986, Ivar Jacobson first formulated textual, structural, and visual modeling techniques for specifying use cases. In 1992 his co-authored book Object-Oriented Software Engineering - A Use Case Driven Approach helped to popularize the technique for capturing functional requirements, especially in software development. Originally he had used the terms usage scenarios and usage case – the latter a direct translation of his Swedish term användningsfall – but found that neither of these terms sounded natural in English, and eventually he settled on use case. Since then, other experts have also contributed a great deal to the technique, notably Alistair Cockburn, Larry Constantine, Dean Leffingwell, Kurt Bittner and Gunnar Overgaard. In 2011, Jacobson published an update to his work, called Use Case 2.0, with the intention of incorporating many of his practical experiences of applying use cases since the original inception of the concept. There are many ways to write a use case in text, from use case brief, casual, outline, to fully dressed etc., and with varied templates. Writing use cases in templates devised by various vendors or experts is a common industry practice to get high-quality functional system requirements. The template defined by Alistair Cockburn in his popular book Writing Effective Use Cases has been one of the most widely used writing styles of use cases. Cockburn suggests annotating each use case with a symbol to show the 'Design Scope', which may be black-box (internal detail is hidden) or white-box (internal detail is shown). Five symbols are available:

[ "Software engineering", "Distributed computing", "Data mining", "Management" ]
Parent Topic
Child Topic
    No Parent Topic