loading...
 This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
10th Asia-Pacific Software Engineering Conference (APSEC'03)
Discovering Use Cases from Source Code using the Branch-Reserving Call Graph
Chiang Mai, Thailand
December 10-December 12
ISBN: 0-7695-2011-1
Tao Qin, Peking University, China
Lu Zhang, Peking University, China
Zhiying Zhou, Peking University, China
Dan Hao, Peking University, China
Jiasu Sun, Peking University, China
Understanding the behavior of a software system is an important problem in program comprehension. Use cases have been accepted as an effective means for describing behavioral requirements for a software system. In this paper, we propose a novel approach for obtaining use cases from source code. The central idea of our approach is to use the Branch-Reserving Call Graph (BRCG) as the intermediate representation of a software program. We also provide strategies for pruning the BRCG to avoid generating too many fine-grained use cases. Use cases, which may just undergo some minor modifications from human experts, can be generated through traversing the pruned BRCG. The contributions of our approach are three-fold. i) This method represents a compromised approach, which differs from both the static and dynamic approaches for use case discovery. ii) This method takes into consideration the fact that it is the branch statements that separate one use case from another in source code. iii) This method can avoid intensive human involvement in determining the final set of use cases. We have also performed a case study for this method on a GNU system.
Index Terms:
Use Case Discovery, Use Case, Program Comprehension, Reverse Engineering, Branch-Reserving Call Graph
Citation:
Tao Qin, Lu Zhang, Zhiying Zhou, Dan Hao, Jiasu Sun, "Discovering Use Cases from Source Code using the Branch-Reserving Call Graph," apsec, pp.60, 10th Asia-Pacific Software Engineering Conference (APSEC'03), 2003
Usage of this product signifies your acceptance of the Terms of Use.