23 research outputs found

    Predicting Defects in Software Using Grammar-Guided Genetic Programming

    Get PDF
    The knowledge of the software quality can allow an organization to allocate the needed resources for the code maintenance. Maintaining the software is considered as a high cost factor for most organizations. Consequently, there is need to assess software modules in respect of defects that will arise. Addressing the prediction of software defects by means of computational intelligence has only recently become evident. In this paper, we investigate the capability of the genetic programming approach for producing solution composed of decision rules. We applied the model into four software engineering databases of NASA. The overall performance of this system denotes its competitiveness as compared with past methodologies, and is shown capable of producing simple, highly accurate, tangible rules

    Integrating Software Metrics for Fortran Legacy into an IDE

    Get PDF
    Software Metrics have being used since the 70s, their purpose is to measure different software attributes, such as complexity and maintainability, to name a few. Software Metrics help programmers obtain valuable information about programs. That information is essential when working with legacy systems. Scientists have been producing Fortran programs for the last six decades, and some of those programs became legacy years ago.We have implemented a set of well known software metrics for Fortran into a widely used IDE (Integrated Development Environment) by means of AST (Abstract Syntax Tree). This integration allows developers to obtain software metrics from their source code while they are programming.XI Workshop de Ingeniería de Softwar

    Integrating Software Metrics for Fortran Legacy into an IDE

    Get PDF
    Software Metrics have being used since the 70s, their purpose is to measure different software attributes, such as complexity and maintainability, to name a few. Software Metrics help programmers obtain valuable information about programs. That information is essential when working with legacy systems. Scientists have been producing Fortran programs for the last six decades, and some of those programs became legacy years ago.We have implemented a set of well known software metrics for Fortran into a widely used IDE (Integrated Development Environment) by means of AST (Abstract Syntax Tree). This integration allows developers to obtain software metrics from their source code while they are programming.XI Workshop de Ingeniería de Softwar

    Integrating Software Metrics for Fortran Legacy into an IDE

    Get PDF
    Software Metrics have being used since the 70s, their purpose is to measure different software attributes, such as complexity and maintainability, to name a few. Software Metrics help programmers obtain valuable information about programs. That information is essential when working with legacy systems. Scientists have been producing Fortran programs for the last six decades, and some of those programs became legacy years ago.We have implemented a set of well known software metrics for Fortran into a widely used IDE (Integrated Development Environment) by means of AST (Abstract Syntax Tree). This integration allows developers to obtain software metrics from their source code while they are programming.XI Workshop de Ingeniería de SoftwareRed de Universidades con Carreras de Informática (RedUNCI

    Integrating Software Metrics for Fortran Legacy into an IDE

    Get PDF
    Software Metrics have being used since the 70s, their purpose is to measure different software attributes, such as complexity and maintainability, to name a few. Software Metrics help programmers obtain valuable information about programs. That information is essential when working with legacy systems. Scientists have been producing Fortran programs for the last six decades, and some of those programs became legacy years ago.We have implemented a set of well known software metrics for Fortran into a widely used IDE (Integrated Development Environment) by means of AST (Abstract Syntax Tree). This integration allows developers to obtain software metrics from their source code while they are programming.XI Workshop de Ingeniería de SoftwareRed de Universidades con Carreras de Informática (RedUNCI

    Do internal software quality tools measure validated metrics?

    Full text link
    Internal software quality determines the maintainability of the software product and influences the quality in use. There is a plethora of metrics which purport to measure the internal quality of software, and these metrics are offered by static software analysis tools. To date, a number of reports have assessed the validity of these metrics. No data are available, however, on whether metrics offered by the tools are somehow validated in scientific studies. The current study covers this gap by providing data on which tools and how many validated metrics are provided. The results show that a range of metrics that the tools provided do not seem to be validated in the literature and that only a small percentage of metrics are validated in the provided tools

    Climate Models: A Software Engineering Approach

    Get PDF
    Climate Simulation and Weather Forecasting are amongst the most representative examples of scientific software, which has evolved through- out the past sixty years. In this paper, a set of Global Climate Models (GCM) have been analysed from a Software Engineering perspective, analysing the composition of their internal structure and programming constructs which have been used in the building process. We have implemented a set of software metrics such as Cyclomatic Complexity, Lines of Code, Number of Fortran Obsolete Language Features, among others.We have followed a compiler like approach, collecting information based on traversing the Abstract Syntax Tree (AST). The obtained data can be used for different purposes at different stages of the software life cycle such as: maintenance tasks, parallelization, and optimization. The results suggest that some programming techniques used for building scientic software have fallen into disuse because they are now considered obsolete and error-prone. In addition, GCM's internal structure seems to evolve at a slower pace than programming techniques. The analysis methodology can be used to update and enhance the scientific software in order to make simpler other tasks such as optimization and parallelization for specic new hardware such as multi/many-core processors and co-processors, distributed memory parallel hardware, etc

    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]

    Spectral Complexity of Directed Graphs and Application to Structural Decomposition

    Full text link
    We introduce a new measure of complexity (called spectral complexity) for directed graphs. We start with splitting of the directed graph into its recurrent and non-recurrent parts. We define the spectral complexity metric in terms of the spectrum of the recurrence matrix (associated with the reccurent part of the graph) and the Wasserstein distance. We show that the total complexity of the graph can then be defined in terms of the spectral complexity, complexities of individual components and edge weights. The essential property of the spectral complexity metric is that it accounts for directed cycles in the graph. In engineered and software systems, such cycles give rise to sub-system interdependencies and increase risk for unintended consequences through positive feedback loops, instabilities, and infinite execution loops in software. In addition, we present a structural decomposition technique that identifies such cycles using a spectral technique. We show that this decomposition complements the well-known spectral decomposition analysis based on the Fiedler vector. We provide several examples of computation of spectral and total complexities, including the demonstration that the complexity increases monotonically with the average degree of a random graph. We also provide an example of spectral complexity computation for the architecture of a realistic fixed wing aircraft system.Comment: We added new theoretical results in Section 2 and introduced a new section 2.2 devoted to intuitive and physical explanations of the concepts from the pape
    corecore