Tech Reports

ULCS-07-017

Reverse Engineering of Web Applications: A Technical Review

Reshma Patel, Frans Coenen, Russell Martin and Lawson Archer


Abstract

The World Wide Web (WWW) has become one of the most important means of communication for commercial enterprises of all kinds. This is particularly the case in commercial sectors where on-line sales often represent a significant proportion of the total sales. The current sophistication of World Wide Web services is such that some businesses have elected to conduct all their sales on-line. Regardless of the individual degree of commitment to on-line commerce most commercial enterprises acknowledge that it is important to have at least a WWW presence. In the rush to obtain such an on-line presence, and subsequently maintain and expand this presence, well established software engineering practices applied to the production of more traditional software system have often been overlooked. This can partly be attributed to difficulties in adapting traditional software engineering practices to WWW software, and partly to the rush to market commercial pressures. The result has been that many WWW applications are poorly documented (or not documented at all) and poorly structured, which in turn has made it very difficult to maintain these systems. Much work has been done to establish sound software engineering techniques for the construction of WWW systems. However, with respect to the many systems built without the benefit of such software engineering practices, programmers charged with maintenance of these systems have been forced to first reverse engineer these systems. Reverse engineering is a time consuming and mundane task that entails none of the glamour associated with the construction of software systems. In the case of WWW applications the state-of-the-art is still in its infancy. This paper presents a technical review of the current state of the art of WWW Application (WA) revere engineering.

[Full Paper]