transformation FineGrainedRemoteCalls inout as : Server ; intermediate property FineGrainedRemoteCalls : : root : MBeanServer ; intermediate property FineGrainedRemoteCalls : : appMgr : ApplicationManager ; intermediate property FineGrainedRemoteCalls : : logMgr : LogManager ; mapping inout LogClust

Lei Zhang,Yanchun Sun,Hui Song,Weihu Wang,Gang Huang
2012-01-01
Abstract:With the increasing complexity of enterprise applications, it becomes very challenging to create software systems which can exhibit a satisfactory performance behavior. In current system development practice, it often inevitably exists some “anti-patterns”, which usually impede the performance or maintainability of software systems. Manually investigating anti-patterns in systems is a time-consuming and labor intensive task. To deal with this problem, we propose a general anti-pattern detection approach for Java EE application. Firstly, we propose a Java EE meta-model, based on which, we use QVT language to specify the detection process of anti-patterns. Secondly, we implement our approach on a runtime architecture-based reflective framework. When a Java EE application runs on one of the supported application servers, we can execute QVT script to detect whether or not there exists a specific anti-pattern in current system and get the report of potential problem components. At last, we perform a case study based on 35 well-known antipatterns to evaluate the effectiveness and applicability of our approach.
What problem does this paper attempt to address?