Русский
!

Conference publications

Abstracts

XVII conference

Use of domain-specific code and estimating its maintainability

Golikov K.O., Titov R.N.1

National Nuclear Research University (MEPhI), 115409, Kashirskoe shosse 31, Moscow, Russia. kirill.golikov@cern.ch

1European Organization for Nuclear Research (CERN), CH-1211 G08300, Geneve 23 Switzerland. Rostislav.Titov@cern.ch

1 pp. (accepted)

One of the most time-consuming phases of software development has to do with support and maintenance. Excessive complexity can be effectively mitigated via use of domain-specific languages (DSLs). This approach was taken to optimize the process of implementing new official procedures in EDH (Electronic Document Handling), the internal workflow management system of the European Organization for Nuclear Research (CERN). The developed module, “generic document”, takes charge of infrastructure tasks – such as user input validation, form visualization and persistence – while providing the developer with a high-level notation to describe business logic in terms of the domain area.

The problem of measuring maintainability of information systems has already been discussed [1]. However, many traditional metrics are not applicable to DSL code, especially since it is often non-imperative. This is why we propose a practical method for estimating maintainability of domain-specific language code, focusing on two fundamental sub-characteristics of this property (according to [2]): analyzability and changeability. The method involves identification of typical atomic changes ai that occur during the phase of maintenance (e.g. removing a data element, modifying a constraint or adding an internal dependency). Each type of change has an associated cost C(ai) which is estimated based on the volume of modified code and the volume of code analyzed by the developer before performing any action. These individual costs can then be aggregated with frequencies of corresponding types of request vi as weights to produce the average cost of code change in the system.

The method proposed can be useful in a situation of making a choice between several alternatives of an architectural decision. In the case of CERN’s document type editor this model demonstrated that support costs can be decreased by splitting a definition of an electronic document into several large areas of responsibility: data structure and business logic, electronic form template, text resources and user interface mapping.

References.

1. Heitlager I., Kuipers T., Visser J. A Practical Model for Measuring Maintainability // Proceedings of the 6th International Conference on Quality of Information and Communications Technology, 2007. P. 30-39.

2. International Organization for Standardization, ISO/IEC 9126-1: Software engineering - product quality - part 1: Quality model. – Geneva, 2001. 25 pages.



© 2004 Designed by Lyceum of Informational Technologies №1533