|
Project Information
Featured
|
Introduction| A recurring problem in software engineering is the lack of compliance between design documents and implementation artifacts. This situation can cause a detriment in the overall quality of software systems, defined in terms of non-functional requirements. The maintainability of software systems is particularly affected by this condition, specially during the system maintenance efforts. This study proposes an approach based on Architecture Description Languages (ADL) and Aspect Oriented Programming (AOP) techniques, in order to verify if the maintainability intent for the system, as described in its architecture description, is really maintained in its associated source code. In order to do so, a set of extensions to ADL constructs is proposed to characterize the maintainability quality characteristic of software systems, and to describe the set of valid interactions between components of ADL descriptions. The use of AOP static-crosscutting techniques is also intended in order to help verify these quality intents in a non-intrusive manner. The ultimate goal of this study is to help maintain the overall quality of software systems through their lifecycle. The quality model used in this study is based on the set of ISO/IEC SQuaRE software quality standards, specially on the ISO/IEC 25010. It should also be noted that in order to effectively define the maintainability quality sub-characteristics, the use of source code quality metrics is intended. An implementation of the approach proposed by this study is presented for Java based systems. It relies on the xADL 2.0 and AspectJ languages as ADL and AOP implementations, respectively. |
MexADL in action!Architecture descriptionArchitecture description for a distributed query optimizer system using MexADL constructs
Architecture verificationMaintainability verification for the implementation code associated to a distributed query optimizer system.
Note: The reports shown in the last part of this video are deprecated. Check the SlideShare presentation to see the updated reports. Detailed PresentationMore information can be found in the following SlideShare presentation Working with existing projectsIf you want to try out the MexADL approach with an existing web application, you should check the Web2MexADL project. This tool allows you to generate a MexADL-based architecture, directly from the compiled code of an existing application.
Installation- Download and extract the latest MexADL distribution.
- Set the MEXADL_HOME environment variable to the directory where you extracted MexADL.
- Download the Eclipse IDE for Java Developers.
- Copy the contents of the MEXADL_HOME/plugins directory to the plugins directory of the Eclipse IDE for Java Developers.
Note for Windows users: When specifying the MEXADL_HOME, please use '/' instead of '\', as the path separator character.
Reference Notes- The current implementation has been tested on MAC OS X 10.6 - 10.7, Ubuntu 11.10 and Windows XP
|