18 research outputs found

    Axiomatic Testing of Structure Metrics

    Get PDF
    Axiomatic testing of software metrics is described, based on axioms from representational measurement theory. In a case study, the axioms are given for the formal relational structure and the empirical relational structure. Two approaches to axiomatic testing are elaborated: deterministic testing and probabilistic testin

    Complexity measures for object-oriented conceptual models of an application domain.

    Get PDF
    According to Norman Fenton few work has been done on measuring the complexity of the problems underlying software development. Nonetheless, it is believed that this attribute has a significant impact on software quality and development effort. A substantial portion of the underlying problems are captured in the conceptual model of the application domain. Based on previous work on conceptual modelling of aplication domains, the attribute 'complexity of a conceptual model' is formally defined in this papaer using elementary concepts from Measure Theory. Moreover, a number of complexity measures are defined and validated against this complexity definition. It is argued and demonstrated that these problem domain measures are part of a solution to the problem outlined by Norman Fenton.Model; Models;

    Towards Validating Risk Indicators Based on Measurement Theory

    Get PDF
    Due to the lack of quantitative information and for cost-efficiency purpose, most risk assessment methods use partially ordered values (e.g. high, medium, low) as risk indicators. In practice it is common to validate risk scales by asking stakeholders whether they make sense. This way of validation is subjective, thus error prone. If the metrics are wrong (not meaningful), then they may lead system owners to distribute security investments inefficiently. Therefore, when validating risk assessment methods it is important to validate the meaningfulness of the risk scales that they use. In this paper we investigate how to validate the meaningfulness of risk indicators based on measurement theory. Furthermore, to analyze the applicability of measurement theory to risk indicators, we analyze the indicators used by a particular risk assessment method specially developed for assessing confidentiality risks in networks of organizations

    DISTANCE: a framework for software measure construction.

    Get PDF
    In this paper we present a framework for software measurement that is specifically suited to satisfy the measurement needs of empirical software engineering research. The framework offers an approach to measurement that builds upon the easily imagined, detected and visualised concepts of similarity and dissimilarity between software entities. These concepts are used both to model the software attributes of interest and to define the corresponding software measures. Central to the framework is a process model that embeds constructive procedures for attribute modelling and measure construction into a goal-oriented approach to empirical software engineering studies. The underlying measurement theoretic principles of our approach ensure the construct validity of the resulting measures. The approach was tested on a popular suite of object-oriented design measures. We further show that our measure construction method compares favourably to related work.Software;

    Conceptualizing Quality in Software Industry

    Get PDF
    This paper investigates the different software quality perceptions from the different stakeholders’ perspectives and presents a critique to previously developed quality models and measurement theory frameworks associated. It emphasizes the rationale beyond the selection of the Goal Question Metric (GQM) as an evaluation method for the development of the software project with the desired quality needs satisfying the software system. Then it ends up with several concluding remarks that pinpoint the main discussion points and offers guidance for further research

    An annotated and classified bibliography of software metrics publications : 1988 to 1994

    Get PDF
    With the growth of the software industry, the measurement of software plays an ever increasing role. In order to provide software metric researchers and practitioners with references so they can quickly identify the references of particular interest to them, over 60 of the many publications on software metrics that have appeared since 1988 are classified into four tables that comprise, respectively, (1) Metrics through the Life Cycle, (2) Classic Metrics, (3) Programming Language Metrics, and (4) New Metrics. Table 1 serves as a complete list of all the classified publications while Table 2, Table 3 and Table 4 are subsets of Table 1. The subset tables present more detailed information than Table 1. The bibliographic reference section contains brief summaries of the publications in the classified tables. As a continuation of the 1988 survey done by V. Cote, P. Bourque, S. Oligny and N. Rivard through the paper, "Software metrics: an overview of recent results", this project was conducted to discover the current trends in software metrics practice, and to report the trend movement from the 1988 paper until now by comparison of the results from the two surveys. All the table comparisons from the two surveys are given in percentages. As a survey, we are fully aware of the limitations of our collection out of the wealth of the publications in the software metrics field, but we are confident that our survey is a good indicator of the practice in the software metrics field. [Résumé abrégé par UMI]

    An investigation of the utility and value of process patterns in the management of software development projects.

    Get PDF
    Pattern theory has engendered much controversy in the field of architecture; yet it has brought new insights to the field of software engineering. Patterns continue to play an important role in software engineering in general, and in software development in particular. In this study, two preliminary surveys, focusing on the two fields of architecture and software engineering, were carried out to investigate the role and effect of patterns. The surveys indicate that while, patterns are unpopular within the architecture community and are criticised for stifling creativity, software patterns are popular within the software community and a high proportion of software development companies use them in their development practice. The results however show that in the vast majority of cases, pattern usage is limited to design-based problems, involving a single type of pattern (i.e. design patterns). The results further show that process-based patterns are seldom used in the software development industry, which prompted the topic of the main investigation of this research to evaluate the effect and utility of process patterns. A controlled experimental research method was designed and used to evaluate the utility and value of process patterns in the management of software development projects. In this '2x2 factorial design' experiment, the subjects were divided in two groups of experimental and control, where the experimental groups were given a set of process patterns to use in their software development projects. Overall, there were over 750 subjects involved in this experiment and a total of 260 software development projects (individual and group projects) were investigated. Measurements of a number of appropriate software attributes were taken during the life of the projects though a devised goal-based measurement process. A further number of attributes were measured after the projects were completed. Using metrics, a number of software attributes across the four major phases of the development lifecycle (i.e. Requirement Analysis, Design, Implementation, and Delivery) were measured and statistically analysed. In addition to these specific measurement data, official marks awarded to the projects by the tutors were also used in the analysis. The objective was to determine if the experimental groups produced software projects that were of higher quality, in terms of the measured software attributes, than the control groups. The experiment results show that, in the case of thirteen measured attributes, the treated groups scored significantly higher than the control groups. The improvements are across all the four major development phases, with at least two attribute in each phase, showing significant improvement. The experiment, therefore, confirms that the application of process patterns in software development projects, improves the quality of the projects in terms of a number of specific attributes such as productivity and defect density. The results further show that the treated subjects in the group projects performed significantly better than those in the individual projects. This, therefore, confirms that while the application of process patterns significantly improves the quality of both group and individual projects, the improvement is more prominent in the case of team projects. Process patterns are thus shown to be more effective on team projects in improving the quality of software development projects

    Zielorientierte Erkennung und Behebung von Qualitätsdefiziten in Software-Systemen am Beispiel der Weiterentwicklungsfähigkeit

    Get PDF
    The evolvability of software systems is one of the key issues when considering their long term quality. Continuous changes and extensions of these systems are neccessary to adjust them to new or changing requirements. But the changes often cause quality deficiencies, which lead to an increase in complexity or an architectural decay. Especially quality deficiencies within the specification or the architecture of a software system can heavily impair a software system.To counteract this, a method is developed in this work to support the analysis of a quality goal in order to identify the quality deficiencies which hinder the achievement of the quality goal. Both the detection and the removal of quality deficiencies are accomplished in a systematic way. The method integrates detection of these quality deficiencies and their removal by reengineering activities based on rules. The detection of quality deficiencies is performed by means of measurable quality attributes which are derived from a quality goal, such as evolvability. In order to demonstrate the practicability of the method, the quality goal evolvability is taken as an example. This work shows how a software system can be evaluated with regard to evolvability based on structural dependencies and which reengineering activities will improve the system in the direction of this quality goal.To evaluate the method, it was applied within an industrial case study. By analyzing the given software system a large number of different quality deficiencies were detected. Afterwards the system's evolvability was improved substantially by reengineering activities proposed by the method.Für unternehmenskritische Software-Systeme, die langlebig und erweiterbar sein sollen, ist das Qualitätsziel Weiterentwicklungsfähigkeit essentiell. Kontinuierliche Änderungen und Erweiterungen sind unabdingbar, um solche Software-Systeme an neue oder veränderte Anforderungen anzupassen. Diese Maßnahmen verursachen aber auch oft Qualitätsdefizite, die zu einem Anstieg der Komplexität oder einem Verfall der Architektur führen können. Gerade Qualitätsdefizite in der Spezifikation oder Architektur können Software-Systeme stark beeinträchtigen.Um dem entgegenzuwirken, wird in dieser Arbeit eine Methode entwickelt, welche die Einhaltung von Qualitätszielen bewerten kann. Dadurch wird sowohl das Erkennen als auch das Beheben von Qualitätsdefiziten in der Software-Entwicklung ermöglicht. Qualitätsdefizite werden anhand einer am Qualitätsziel orientierten und regelbasierten Analyse erkannt und durch zugeordnete Reengineering-Aktivitäten behoben. Als Beispiel für ein Qualitätsziel wird die Weiterentwicklungsfähigkeit von Software-Systemen betrachtet. Es wird gezeigt, wie dieses Qualitätsziel anhand von strukturellen Abhängigkeiten in Software-Systemen bewertet und durch gezielte Reengineering-Aktivitäten verbessert werden kann.Um die Methode zu validieren, wurde eine industrielle Fallstudie durchgeführt. Durch den Einsatz der Methode konnten eine Vielzahl von Qualitätsdefiziten erkannt und behoben werden. Die Weiterentwicklungsfähigkeit des untersuchten Software-Systems wurde durch die vorgeschlagenen Reengineering-Aktivitäten entscheidend verbessert
    corecore