A Tool to Analyze Use Case Textual Descriptions

Use Case Analyzer, is a tool analyzes the use case textual description for the natural language issues such as incompleteness, inconsistency, incorrectness, redundancy, and ambiguity that are inevitably introduced in the specification.

UCAnalyzer: The Online link of the tool

About the Tool

UCAnalyzer is a web-based application developed in Python which uses Natural Language Toolkit, built-in Python, for processing the requirements specified in each of the use case elements present in the use case template. The template consists of seven elements namely, use case name, goal, actors, pre-condition, post-condition, basic (or main flow), and alternate flow. The tool also takes the problem specification as an input for verifying the specification completeness of the use cases.

UCAnalyzer has three key modules: (1) a use case textual description editor module, (2) an analysis module to assess the quality of use case textual description, and (3) a module to highlight errors and provide suggestions.

Problem Specifications

Airline Ticketing System.pdf
Banking System.pdf
Point Of Sale System-PS.pdf

References for Problem Specifications

  1. Overgraad, G., Palmvist, K., 2005. Use Cases Patterns and Blueprints. Addison-Wesley Rational. [Banking System]
  2. El-Attar, M., Miller, J., 2009. A subject-based empirical evaluation of SSUCDs performance in reducing inconsistencies in use case models. Empirical Software Engineering 14(5), 477-512. [Airline Ticketing System & Banking System]
  3. Cockburn, A., 2001. Writing effective use cases, vol. 1. Addison-Wesley Boston. [POS System]


Saurabh Tiwari and Mayank Laddha, "UCAnalyzer: A Tool to Analyze Use Case Textual Descriptions". In 25th IEEE International Requirements Engineering Conference, IEEE Computer Society, RE'17, pp 448-449, Lisbon, Portugal, 2017.