Development and Evaluation of a Software Metrics Markup Language - Ng, Keng Yap (2006)
Software measurement is the dimension and/or decision criteria as to what a piece of software can provide. The output of software measurement is in the form of metric data. Metric data are important because it can be used as the input for software analysis in the software engineering field. Software engineering relies on these data to investigate many factors in software development such as cost, scheduling, affordability, quality, etc., in order to gain better control of the engineering processes. These days, people store data in different data formats, media and database technologies. These heterogeneous formats have posed many problems in data analysis, especially in terms of the integration and reusability of historical data. These problems have prompted efforts to find a data format that is compliant with the concepts of software measurement and which is applicable to any metric data. extensible Markup Language (XML) is the latest platform independent and self-explanatory data model that is widely used in the world, especially significant in the heterogeneous computing environment, such as World Wide Web. Hence, XML has been chosen to be the markup language for software metrics data in order to produce Software Metrics Markup Language (SMML), which is the major output of this research. There are shortcomings of the existing data models and XML can be used to overcome these shortcomings, and further enhances the portability, extensibility and appendability of software metrics data. The build and evaluate framework is used to ascertain that the design goals of the SMML have been archived accordingly. The SMML Toolkit and the SMML API have been built as the instruments to evaluate the viability of SMML. The SMML vocabulary and grammar, which is synonymous to the XML elements and the elementary structure of SMML respectively are defined and implemented physically in XML schema for SMML. It determines and controls how SMML should be constructed to hold informative software metrics data. The experimental evaluation shows that SMML is viable to be the data model for software metrics. Data can be easily stored and manipulated, either in the existing SMML model or transformed into the structured relational databases, provided that the SMML API is used. Future research can be extended to enhancing the structure and enriching the vocabulary of SMML, and introduce ontology studies on this model, besides conducting performance tuning on the SMML API.