1 / 31

SMML: Software Measurement Modeling Language

SMML: Software Measurement Modeling Language. Beatriz Mora, Félix García, Francisco Ruiz, Mario Piattini. Department of Information Technologies & Systems University of Castilla – La Mancha. Contents. Introduction Software Measurement Framework SMML:Software Measurement Modeling Language

arama
Download Presentation

SMML: Software Measurement Modeling Language

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SMML: Software Measurement Modeling Language Beatriz Mora, Félix García, Francisco Ruiz, Mario Piattini Department of Information Technologies & Systems University of Castilla – La Mancha

  2. Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language Contents • Introduction • Software Measurement Framework • SMML:Software Measurement Modeling Language • Definition of an abstract syntax • Definition of a concrete syntax • Definition of the semantics • Case Study • To COUNT TABLES in a Relational DDBB • Conclusions and future works

  3. Measurement is an important factor in the process life cycle due to the fact that it controls issues and lacks during software maintenance and development. In fact, measurement has become a fundamental aspect of Software Engineering. The great diversity in the kinds of entities which are candidates for measurement in the context of the software processes involves providing companies with a suitable and consistent reference for the definition of their software measurement models along with the necessary technological support to integrate the measurement of the different kinds of entities. Introduction 3 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  4. Introduction • With the objective of satisfying the exposed necessities, it is interesting to consider the MDE paradigm in which software measurement models (SMM) are the principal elements of the measurement process. • The availability of a language which allows us to represent software measurement models might be important in decision making and in process improvement. • It is thus of interest to consider the use of Domain Specific Languages (DSLs) such as the Software Modeling Measurement Language (SMML). Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  5. Objective: We present the Software Measurement Modeling Language (SMML) which permits software measurement models to be created. This language has been done by using the Software Measurement Metamodel (SMM) (Garcia et al, 2007) as the Domain Definition Metamodel (DDMM). This language belongs to the Software Measurement Framework (SMF). SMF permits to measure any type of software entity. Introduction 5 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  6. Software Measurement Framework Technological aspects – Adaptation to MDA M3 ECORE Conforms to Conforms to Conforms to Software Measurement Metamodel QVT Relations Metamodel Domain Metamodel (1) M2 Conforms to Conforms to Conforms to Software Measurement Model (3) QVT Relations Model Domain Model (2) Tranformation (4) M1 Software Measurement Model (target) Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  7. SMML is a language which permits software measurement models to be built. This language has been done by using the Software Measurement Metamodel (SMM) as the Domain Definition Metamodel (DDMM). The task of the SMML is to facilitate the definition of software measurement models, which is the starting point in the generic software measurement process. The Software Measurement Metamodel (SMM) which is derived from the Software Measurement Ontology (SMO) defines the abstract syntax of SMML. The Software Measurement Metamodel supports the graphical language to represent the software measurement models. SMML (Software Measurement Modeling Language) 15 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  8. SMML (Software Measurement Modeling Language) Software Measurement Metamodel 17 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  9. 4 types of Measurement Associations have been identified: association, nonnavigable association, aggregation and dependency. These relationships have been defined in the Basic package. SMML – Definition of an abstract syntax Domain Definition Metamodel 19 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  10. SMML – Definition of an abstract syntax Basic package Basic: this basic package has been defined in order to identify and to establish the general features of the constructor necessary to define measurement model 20 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  11. SMML – Definition of an abstract syntax Characterization and objectives Package • Characterization and Objectives: this package includes the constructors required to establish the scope and objectives of the software measurement process 21 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  12. SMML – Definition of an abstract syntax Software Measures Package • Measures Software: this package includes the constructors needed to establish and to clarify the key elements in the definition of a software measure 22 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  13. SMML – Definition of an abstract syntax Measurement Approaches Package. • Measurement Approaches: this package includes the constructors needed to generalize the different ‘approaches’ used by the three kinds of measures to obtain their respective measurement results. 23 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  14. SMML – Definition of a concrete syntax 24 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  15. SMML – Definition of semantics 25 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  16. Case Study Incorporation of domain metamodel Creation of domain model Example of relational database measurement 26 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  17. Case Study 3. Creation of software measurement model. Quality Model: ISO 9126 Measurable concept: Maintainability Information need: To know Shemes Maintainability Entity Class: Relational Schema Attribute: Size Base measure: NT (Number of tables) Unit: tables Scale: Integers from zero to infinite Measurement method:Number of Tables in the Scheme Example of relational database measurement 27 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  18. Case Study Definition of software measurement model with SMML Example of relational database measurement 28 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  19. Case Study Example of relational database measurement 4. Measurement execution Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  20. Case Study Measurement model of PDQM (Portalweb Data Quality Model) 30 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  21. Conclusions • SMML permits software measurement models to be defined in a manner which is easy and intuitive for the user. • SMML is a complete language, with a clear syntactic and semantic definition and a solid ontological base. It, moreover, fulfils the following requirements of a DSL: it is usable, it conforms, and it is orthogonal, supportable and simple. • SMML allows users to represent measurement models in various domains. • This language plays a fundamental role in SMF as it allows users to define the measurement models which are the input for the software measurement process. The visual representation of the measurement models mean that SMF is a more usable and intuitive framework for the user. In other words, it makes the measurement process more comfortable. Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  22. Future work • Among related future works, one important work is that of the extension of SMMM with the Measurement Approach package hierarchy included in the Software Metrics Meta-Model [25] (OMG). • Now, a DSL editor (by using GMF) is created, a future work is to integrate the editor with the SMF in order to obtain an automatic process by using only one tool (Software Measurement Tool). • We shall, moreover, test the usability of the language through a series of experiments based on the ISO 9126 standard. Our study will focus on usability and maintainability. Our idea is to select a group of modeling experts and to test the usability of this new language on them in order to define measurement models. Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  23. Thank you http://alarcos.inf-cr.uclm.es/ Beatriz.mora@uclm.es

  24. The extended QVT Relations model extends the basic QVT Relations model with the following aspects: Transformation Modelthis label indicates “the source models” Measurement model: this model is already defined in the basic QVT-Relation model, Because is always the same. Domain model: this model needs to be defined. This information is taken from the Software Measurement model which contains all the measurement information. Relation Domain  it is necessary to define the checkonly domain rules. There are two, one for each source model: Software Measurement model: The checkonly domain of the measurement model is already defined in the basic QVT Relations model. Domain model: It is only necessary to define checkonly domain of the domain model. Function: this contains the necessary OCL queries to carry out the measurement. These OCL queries are the implementations of the “Measurement Action” package defined in the Software Measurement Metamodel. Software Measurement Framework Technological aspects – QVT Relations transformation Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  25. The extended QVT Relations model was needed to carry out the fourth step. This transformation is obtained automatically The extended elements are detailed below: Transformation Model: the target model is the relational databases domain model. Relation Domain: the checkonly domain of the relational schema domain is indicated Example Example of relational database measurement 35 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  26. Example Example of relational database measurement 36 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  27. Function: this contains the OCL queries with which to perform the measurement, in this case, the queries necessary to implement the “count element of type X” measurement method where X is Table. Example Example of relational database measurement 37 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  28. Example Example of relational database measurement 38 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  29. Software Measurement Framework Textual Specificacion (.qvtext) QVT-Relation Model (.qvt) Technological aspects – QVT Relations transformation Textual Specification (.qvtext) QVT-Relation Model (.qvt) Transformation Parse in 39 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  30. QVT-Relations QVT-Relations Metamodel 40 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

  31. Transformation Model: los modelos de entrada. el modelo de medición (incluido en QVT-Relation básico) el modelo del dominio: atributos name y uri del modelo. Relation Domain: checkonly domain de la transformación, uno por cada modelo de entrada: Sólo hay que indicar el checkonlydomain del modelo de dominio ya que el del modelo de medición ya está definido en el modelo QVT-Relation básico. Function: función que contiene las consultas OCL necesarias para la ejecución de la medición. Transformación QVT-Relations 41 Alarcos Group. OOPSLA’2008. DSM. SMML: Software Measurement Modeling Language

More Related