Discovering Use Cases from Source Code using the Branch-Reserving Call Graph

  • Authors:
  • Tao Qin;Lu Zhang;Zhiying Zhou;Dan Hao;Jiasu Sun

  • Affiliations:
  • -;-;-;-;-

  • Venue:
  • APSEC '03 Proceedings of the Tenth Asia-Pacific Software Engineering Conference Software Engineering Conference
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Understanding the behavior of a software system is animportant problem in program comprehension. Use caseshave been accepted as an effective means for describingbehavioral requirements for a software system. In thispaper, we propose a novel approach for obtaining usecases from source code. The central idea of our approachis to use the Branch-Reserving Call Graph (BRCG) as theintermediate representation of a software program. Wealso provide strategies for pruning the BRCG to avoidgenerating too many fine-grained use cases. Use cases,which may just undergo some minor modifications fromhuman experts, can be generated through traversing thepruned BRCG. The contributions of our approach arethree-fold. i) This method represents a compromisedapproach, which differs from both the static and dynamicapproaches for use case discovery. ii) This method takesinto consideration the fact that it is the branch statementsthat separate one use case from another in source code.iii) This method can avoid intensive human involvementin determining the final set of use cases. We have alsoperformed a case study for this method on a GNU system.