16 research outputs found

    Persistencia de mediciones como apoyo a la gestión de proyectos de software

    Get PDF
    La medida de la calidad del software es una necesidad para las empresas de Software y Servicios Informáticos (SSI), porque representa una ventaja estratégica al proporcionar el conocimiento de los procesos productivos y permitir mejorar las tareas menos eficientes. La calidad del software está estrechamente vinculada con la medición del mismo. La implementación exitosa en una organización de una nueva práctica o el uso de una herramienta depende en gran medida de la automatización de la misma, a fin de no significar una pérdida de tiempo o uso de recursos adicionales. En este trabajo se presenta una línea de investigación que apunta a la elaboración de metodologías de medición de atributos, recolección de datos, y diseño e implementación de un repositorio de mediciones, que contribuya a una más eficiente gestión de proyectos de software y a la toma de decisiones en aspectos referidos a la calidad de software.Eje: Ingeniería de SoftwareRed de Universidades con Carreras en Informática (RedUNCI

    Evaluación de mantenibilidad de un gestor de contenidos open source utilizando métricas de orientación a objetos

    Get PDF
    Los aspectos vinculados a la mantenibilidad contribuyen a la calidad del software y también a la decisión favorable de adoptarlo para su uso, en el caso particular del software libre. En este artículo se presentan los resultados de la evaluación de un gestor de contenidos de software libre con el objetivo de conocer el grado de mantenibilidad del mismo, aplicando métricas Orientadas a Objetos, utilizando la metodología Goal-Question-Metrics. De acuerdo a los resultados obtenidos se puede presumir que el software Joomla es un proyecto estable y maduro, en el que se observa un crecimiento sistemático a lo largo del tiempo, y mejoras en el aspecto específico de mantenibilidad evaluado.Sociedad Argentina de Informática e Investigación Operativ

    Evaluación de mantenibilidad de un gestor de contenidos open source utilizando métricas de orientación a objetos

    Get PDF
    Los aspectos vinculados a la mantenibilidad contribuyen a la calidad del software y también a la decisión favorable de adoptarlo para su uso, en el caso particular del software libre. En este artículo se presentan los resultados de la evaluación de un gestor de contenidos de software libre con el objetivo de conocer el grado de mantenibilidad del mismo, aplicando métricas Orientadas a Objetos, utilizando la metodología Goal-Question-Metrics. De acuerdo a los resultados obtenidos se puede presumir que el software Joomla es un proyecto estable y maduro, en el que se observa un crecimiento sistemático a lo largo del tiempo, y mejoras en el aspecto específico de mantenibilidad evaluado.Sociedad Argentina de Informática e Investigación Operativ

    HALO : a multi-feature two-pass analysis to identify framework API evolution

    Get PDF
    Software frameworks and libraries are indispensable to today’s software systems. Because of the fast development of open-source software in recent years, frameworks and libraries have became much versatile as any open-source system or part thereof can be used as a framework (or a library). Developer can reuse frameworks in innovative ways that are not expected by the providers of frameworks. Many frameworks are not well documented and very few owners provide specific documents to describe the changes between different releases of their frameworks. When they evolve, it is often time-consuming for developers to keep their dependent code up-to-date. Approaches have been proposed to lessen the impact of framework evolution on developers by identifying API evolution or change rules between two releases of a framework. However, the precision and recall of the change rules generated by these approaches depend on the features that they use, such as call-dependency relations or text similarity. If these features do not provide enough information, the approaches can miss correct change rules and compromise the precision and recall. For example, if a method in the old release of a framework is not called by other methods, we cannot find its change rule using call-dependency relations alone. Considering more features can overcome this limitation. Yet, because many features may also give contradictory information, integrating them is not straightforward. We thus introduce Halo, a novel hybrid approach that uses multiple features, including call dependency relations, method documentations, inheritance relations, and text similarity. Halo implements a two-pass analysis inspired by pattern classification problem. We implement Halo in Java and compare it with four state-of-the-art approaches. The comparison shows that, on average, the recall and the precision of Halo are 43% and 5% higher than that of other approaches

    Software defect prediction using maximal information coefficient and fast correlation-based filter feature selection

    Get PDF
    Software quality ensures that applications that are developed are failure free. Some modern systems are intricate, due to the complexity of their information processes. Software fault prediction is an important quality assurance activity, since it is a mechanism that correctly predicts the defect proneness of modules and classifies modules that saves resources, time and developers’ efforts. In this study, a model that selects relevant features that can be used in defect prediction was proposed. The literature was reviewed and it revealed that process metrics are better predictors of defects in version systems and are based on historic source code over time. These metrics are extracted from the source-code module and include, for example, the number of additions and deletions from the source code, the number of distinct committers and the number of modified lines. In this research, defect prediction was conducted using open source software (OSS) of software product line(s) (SPL), hence process metrics were chosen. Data sets that are used in defect prediction may contain non-significant and redundant attributes that may affect the accuracy of machine-learning algorithms. In order to improve the prediction accuracy of classification models, features that are significant in the defect prediction process are utilised. In machine learning, feature selection techniques are applied in the identification of the relevant data. Feature selection is a pre-processing step that helps to reduce the dimensionality of data in machine learning. Feature selection techniques include information theoretic methods that are based on the entropy concept. This study experimented the efficiency of the feature selection techniques. It was realised that software defect prediction using significant attributes improves the prediction accuracy. A novel MICFastCR model, which is based on the Maximal Information Coefficient (MIC) was developed to select significant attributes and Fast Correlation Based Filter (FCBF) to eliminate redundant attributes. Machine learning algorithms were then run to predict software defects. The MICFastCR achieved the highest prediction accuracy as reported by various performance measures.School of ComputingPh. D. (Computer Science

    EMPIRICAL CHARACTERIZATION OF SOFTWARE QUALITY

    Get PDF
    The research topic focuses on the characterization of software quality considering the main software elements such as people, process and product. Many attributes (size, language, testing techniques etc.) probably could have an effect on the quality of software. In this thesis we aim to understand the impact of attributes of three P’s (people, product, process) on the quality of software by empirical means. Software quality can be interpreted in many ways, such as customer satisfaction, stability and defects etc. In this thesis we adopt ‘defect density’ as a quality measure. Therefore the research focus on the empirical evidences of the impact of attributes of the three P’s on the software defect density. For this reason empirical research methods (systematic literature reviews, case studies, and interviews) are utilized to collect empirical evidence. Each of this research method helps to extract the empirical evidences of the object under study and for data analysis statistical methods are used. Considering the product attributes, we have studied the size, language, development mode, age, complexity, module structure, module dependency, and module quality and their impact on project quality. Considering the process attributes, we have studied the process maturity and structure, and their impact on the project quality. Considering the people attributes, we have studied the experience and capability, and their impact on the project quality. Moreover, in the process category, we have studied the impact of one testing approach called ‘exploratory testing’ and its impact on the quality of software. Exploratory testing is a widely used software-testing practice and means simultaneous learning, test design, and test execution. We have analyzed the exploratory testing weaknesses, and proposed a hybrid testing approach in an attempt to improve the quality. Concerning the product attributes, we found that there exist a significant difference of quality between open and close source projects, java and C projects, and large and small projects. Very small and defect free modules have impact on the software quality. Different complexity metrics have different impact on the software quality considering the size. Product complexity as defined in Table 53 has partial impact on the software quality. However software age and module dependencies are not factor to characterize the software quality. Concerning the people attributes, we found that platform experience, application experience and language and tool experience have significant impact on the software quality. Regarding the capability we found that programmer capability has partial impact on the software quality where as analyst capability has no impact on the software quality. Concerning process attributes we found that there is no difference of quality between the project developed under CMMI and those that are not developed under CMMI. Regarding the CMMI levels there is difference of software quality particularly between CMMI level 1 and CMMI level 3. Comparing different process types we found that hybrid projects are of better quality than waterfall projects. Process maturity defined by (SEI-CMM) has partial impact on the software quality. Concerning exploratory testing, we found that exploratory testing weaknesses induce the testing technical debt therefore a process is defined in conjunction with the scripted testing in an attempt to reduce the associated technical debt of exploratory testing. The findings are useful for both researchers and practitioners to evaluate their project
    corecore