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.
[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.
[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.
@article{"International Journal of Information, Control and Computer Sciences:58627", author = "Rosziati Ibrahim and Tiu Kian Yong", title = "ReSeT : Reverse Engineering System Requirements Tool", abstract = "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.", keywords = "System Requirements, Reverse Engineering, SourceCodes.", volume = "2", number = "6", pages = "2035-4", }