Mastering use cases: capturing functional requirements for interactive applications

  • Authors:
  • Daniel Sinnig;Homa Javahery

  • Affiliations:
  • University of Rostock, Rostock, Germany;IBM, Burnaby, BC, Canada

  • Venue:
  • Proceedings of the 2nd ACM SIGCHI symposium on Engineering interactive computing systems
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Use cases were introduced in the early 90s by Jacobson. He defined a use case as a "specific way of using the system by using some part of the functionality." Use case modeling is making its way into mainstream practice as a key activity in the software development process (e.g., Unified Process). There is accumulating evidence of significant benefits to customers and developers. The use case model is the artifact of choice for capturing functional requirements and as such, serves as a contract of the envisioned system behavior between stakeholders. It drives the architecture of the application, it can be used to generate functional test cases and often serves as a reference point for maintenance and documentation purposes. Writing effective and well-structured use cases is a difficult task which requires a deep understanding of the surrounding techniques and best practices. Current practice has shown that it is easy to misuse them or make mistakes that can unintentionally turn them into "abuse cases".