ReSeT : Reverse Engineering System Requirements Tool

Reverse Engineering is a very important process in Software Engineering. It can be performed backwards from system development life cycle (SDLC) in order to get back the source data or representations of a system through analysis of its structure, function and operation. We use reverse engineering to introduce an automatic tool to generate system requirements from its program source codes. The tool is able to accept the Cµ programming source codes, scan the source codes line by line and parse the codes to parser. Then, the engine of the tool will be able to generate system requirements for that specific program to facilitate reuse and enhancement of the program. The purpose of producing the tool is to help recovering the system requirements of any system when the system requirements document (SRD) does not exist due to undocumented support of the system.




References:
[1] Altova (2008). UML Reverse Engineering,
http://www.altova.com/features_reverse_engineer.html
[2] Bahrami A. (1999). Object-Oriented Systems Development, Mc-Graw
Hill, Singapore.
[3] Cremer K., Marburger A. and Westfechtel (2002). Graph-based Tools
for Re-engineering, Journal of Software Maintenance and Evolution:
Research and Practice, Voulme 14, Issue 4, pp 257-292.
[4] Heumann J. (2001). Generating Test Cases from Use Cases, Rational
Software, IBM.
[5] Knodel J., Muthig D. and Naab M. (2006). Understanding Software
Architectures by Visualization - An Experiment with Graphical
Elements, Proceeding of the 13th Working Conference on Reverse
Engineering (WCRE 2006).
[6] Musker D. (1998). Reverse Engineering, IBC Conference on Protecting
& Exploiting Intellectual Property in Electronics.
[7] Rational. (2003). Mastering Requirements Management with Use Cases,
Rational Software, IBM.
[8] Schwarz B., Debray S. and Andrews G. (2002). Disassembly of
Executable Code Revisited, Proceedings IEEE Working Conference on
Reverse Engineering, October 2002, pp 45-54.
[9] Sommerville I. (2007). Software Engineering, 8th Edition, Addison
Wesley, England.
[10] Tilley S., Wong K., Storey M. and Muller H. (1994). Programmable
Reverse Engineering, Journal of Software Engineering and Knowledge
Engineering.