Enabling the Evolution of J2EE Applications Through Reverse Engineering and Quality Assurance

Date Added: Aug 2009
Format: PDF

Enterprise Applications are complex software systems that manipulate persistent data and interact with the user through a vast and complex user interface. In the heterogeneous context, applying existing reverse engineering and quality assurance techniques developed for object-oriented systems is not enough. This paper intends to devise techniques and metrics to measure quality in J2EE and using software visualization to inspect the structure of J2EE applications. For this, one needs to create a unified meta-model including all elements composing a J2EE application. This work is based on FAMIX, a language independent meta-model for representing and analyzing object-oriented software. The idea was to refine FAMIX by adding all parts and relations that are necessary to model a JEA. Having a consistent metamodel makes it possible to define a quality model on it that is based on metrics and pattern detection. Pattern identification will be a key point to analyze the structure of JEAs and to assess quality. They also needed a different visualization that has been built using existing techniques. This was helpful in exploring ways to visualize J2EE applications structure and system maintenance. The final objective was to create a suite of techniques, metrics and visualizations so as to automatically or semi-automatically assess the quality of J2EE applications and enterprise applications in general and aid evolution.