36 research outputs found

    Challenges of using software size in agile software development: A systematic literature review

    Get PDF
    Academic Papers at IWSM Mensura, IWSM-Mensura 2018; Beijing; China; 19 September 2018 through 20 September 2018Software size is a fundamental measure for software management. Size is used for a variety of purposes, such as benchmarking, normalization, and portfolio measurement, and it is frequently considered as the sole input of estimation. Estimations can be produced for various reasons; e.g., to predict effort, cost and duration of software development projects. There are different types of software size measures. Particularly in projects where agile methodologies are adopted, measurement becomes a significant challenge as it is perceived as a non-value-added task and records of tasks such as requirements identification are not always consistent. The difficulties of applying traditional size measurement techniques in agile contexts, however, do not diminish the need, and new methods and techniques are introduced to improve the manageability of the agile projects. In this paper, we discuss estimation and measurement approaches in relation with ―software size in agile contexts. Based on this review, we present the perceptions of software size and related challenges, such as misinterpretation of size, difficulties in implementation, and acceptability of the measurement processes. We anticipate that providing a baseline for the state of software size measures in agile contexts and presenting related challenges, particularly in terms of its acceptability by practitioners can shed light on the development of new techniques

    Metrics for Performance Improvement in Organisations Using Scrum, ITIL and CMMI

    Get PDF
    It is very important to understand the metrics that are applied within IT processes in today's industry, why they are important, and in what types of companies they are used. This article presents the results of a systematic literature review of some of the most widely used metrics exposed in the literature, referring to Scrum, ITIL and CMMi practices. The objective is to determine the scientific progress in this field and to identify the candidate metrics that can be used later in a metrics integration model, designed to help monitor IT services to improving the performance of organisations that use Scrum, CMMi and ITIL. The exploratory search found 1,196 articles, of which 198 were reviewed, from which 31 were finally chosen. From these, a total of 297 metrics were identified, of which 112 (38%) are for Scrum, 98 metrics (33%) are for ITIL, and 87 (29%) are for CMMi. Most of these metrics are used in European companies

    Estimación de esfuerzo en proyectos de desarrollo de software con metodologías ágiles

    Full text link
    [ES] La estimación de esfuerzo es una actividad fundamental en la industria de desarrollo de software. Ya sea mediante el empleo de modelos simples basados en el juicio u opinión de uno o varios miembros del equipo de desarrollo (expertos en el área) o modelos más complejos que utilizan datos históricos, algoritmos y/o herramientas sistematizadas, la finalidad de este proceso de estimación es poder contar con un valor representativo del esfuerzo que requiere llevar a cabo el proyecto, sirviendo de apoyo a las tareas de planificación y gestión del mismo. A su vez, constituye el principal soporte para la toma de decisiones respecto a factores como coste, recursos, duración y entregables del proyecto. En el presente trabajo de investigación se estudia el concepto de estimación de esfuerzo dentro del contexto de proyectos de desarrollo de software con metodologías ágiles. Para ello, primero se presentan las características particulares del movimiento ágil desde una perspectiva general, y luego se destacan los aspectos principales de las metodologías ágiles más conocidas en la actualidad. Asimismo, se introduce el concepto de estimación de esfuerzo, abarcando desde los aspectos más generales hasta su aplicación específica en proyectos de desarrollo ágil. Para analizar el estado del arte del uso de modelos de estimación de esfuerzo en este contexto, se ha desarrollado una revisión sistemática de literatura, en la que se han utilizado cinco motores de búsqueda o librerías digitales (ACM Digital Library, IEEE Xplore, Science Direct, Scopus, Web of Science) para la identificación de artículos de revistas científicas o conferencias publicados entre Diciembre 2013 y Diciembre 2017, respecto a modelos de estimación de esfuerzo utilizados en proyectos de desarrollo ágil. Un total de 46 estudios primarios han sido obtenidos después de la depuración de los resultados de la búsqueda inicial, los cuales han sido sometidos a una serie de preguntas de investigación para la extracción de datos relevantes para este estudio y el posterior análisis comparativo de los mismos. Esta revisión de literatura está basada en un estudio realizado en 2014, por lo que se ha intentado mantener, en la medida de lo posible, una coherencia con el proceso de análisis utilizado en dicho estudio. Esto permite obtener resultados comparables y complementarios a los anteriores, revelando una nueva tendencia en el uso de métodos algorítmicos y técnicas de Machine Learning para la estimación de esfuerzo en proyectos desarrollados con metodologías ágiles. Además, se ha realizado un análisis exploratorio del repositorio ISBSG en sus versiones R12-2012 y R1-2017. Esta evaluación, que sirve como valor añadido al estudio, se enfoca en aquellos proyectos desarrollados con metodologías ágiles y en la identificación de las variables relacionadas con el esfuerzo. Ambos resultados (la revisión de literatura y el análisis exploratorio) son comparados y combinados para obtener una visión conjunta del progreso de la estimación de esfuerzo en entornos de desarrollo ágil.[EN] Effort estimation is one of the fundamental practices in the software development industry. Whether it is through simple, expert judgment based models or more complex models that use historical data, algorithms and computational tools, the purpose of this estimation process is to obtain a representative value of the required effort to carry out a software project, supporting the planning and management activities thereof. Also, this value is the main input for decision making regarding cost, resources, duration, and deliverables of the project. In the present work, the concept of effort estimation is studied in the context of agile software development projects. First, the characteristics of the agile movement are presented from a general perspective and then the main agile methodologies are highlighted. Likewise, effort estimation is first overviewed in a general context, to later develop the specifics of its application in agile software development. To analyze the state of the art of effort estimation models in this context, a systematic literature review is developed, using five search engines or digital libraries (ACM Digital Library, IEEE Xplore, Science Direct, Scopus, Web of Science) to identify journal articles and conference papers published between December 2013 and December 2017, regarding effort estimation models in agile software development. 46 primary studies resulted after the search results depuration, which have been analyzed through a series of research questions for the extraction of relevant data and the comparative analysis thereof. This literature review is based on a previous study in 2014, so a coherence with the process of analysis use in that study has been kept as far as possible. This allows obtaining comparable and complementary results in relation to the previous study, revealing also a new trend on using algorithm methods and Machine Learning techniques for effort estimation in Agile projects. Also, an exploratory analysis of ISBSG repository has been carried out for 2012 and 2017 releases. This evaluation, as added value to the study, is focused on projects developed with agile methodologies and the identification of relevant variables for effort estimation. Both, the SRL and the exploratory analysis, are compared and combined to get a general overview of the progress of effort estimation in Agile.Méndez Solimán, ER. (2018). Estimación de esfuerzo en proyectos de desarrollo de software con metodologías ágiles. http://hdl.handle.net/10251/109927TFG

    Practical Consequences of Quality Views in Assessing Software Quality

    Get PDF
    open access articleThe authors’ previously published research delved into the theory of software product quality modelling, model views, concepts, and terminologies. They also analysed this specific field from the point of view of uncertainty, and possible descriptions based on fuzzy set theory and fuzzy logic. Laying a theoretical foundation was necessary; however, software professionals need a more tangible and practical approach for their everyday work. Consequently, the authors devote this paper to filling in this gap; it aims to illustrate how to interpret and utilise the previous findings, including the established taxonomy of the software product quality models. The developed fuzzy model’s simplification is also presented with a Generalized Additive Model approximation. The paper does not require any formal knowledge of uncertainty computations and reasoning under uncertainty, nor does it need a deep understanding of quality modelling in terms of terminology, concepts, and meta-models, which were necessary to prepare the taxonomy and relevance ranking. The paper investigates how to determine the validity of statements based on a given software product quality model; moreover, it considers how to tailor and adjust quality models to the particular project’s needs. The paper also describes how to apply different software product quality models for different quality views to take advantage of the automation potential offered for the measurement and assessment of source code quality. Furthermore, frequent pitfalls are illustrated with their corresponding resolutions, including an unmeasured quality property that is found to be important and needs to be included in the measurement and assessment process

    Customer Rating Reactions Can Be Predicted Purely Using App Features

    Get PDF
    In this paper we provide empirical evidence that the rating that an app attracts can be accurately predicted from the features it offers. Our results, based on an analysis of 11,537 apps from the Samsung Android and BlackBerry World app stores, indicate that the rating of 89% of these apps can be predicted with 100% accuracy. Our prediction model is built by using feature and rating information from the existing apps offered in the App Store and it yields highly accurate rating predictions, using only a few (11-12) existing apps for case-based prediction. These findings may have important implications for require- ments engineering in app stores: They indicate that app devel- opers may be able to obtain (very accurate) assessments of the customer reaction to their proposed feature sets (requirements), thereby providing new opportunities to support the requirements elicitation process for app developers

    A mapping study on documentation in Continuous Software Development

    Get PDF
    Context: With an increase in Agile, Lean, and DevOps software methodologies over the last years (collectively referred to as Continuous Software Development (CSD)), we have observed that documentation is often poor. Objective: This work aims at collecting studies on documentation challenges, documentation practices, and tools that can support documentation in CSD. Method: A systematic mapping study was conducted to identify and analyze research on documentation in CSD, covering publications between 2001 and 2019. Results: A total of 63 studies were selected. We found 40 studies related to documentation practices and challenges, and 23 studies related to tools used in CSD. The challenges include: informal documentation is hard to understand, documentation is considered as waste, productivity is measured by working software only, documentation is out-of-sync with the software and there is a short-term focus. The practices include: non-written and informal communication, the usage of development artifacts for documentation, and the use of architecture frameworks. We also made an inventory of numerous tools that can be used for documentation purposes in CSD. Overall, we recommend the usage of executable documentation, modern tools and technologies to retrieve information and transform it into documentation, and the practice of minimal documentation upfront combined with detailed design for knowledge transfer afterwards. Conclusion: It is of paramount importance to increase the quantity and quality of documentation in CSD. While this remains challenging, practitioners will benefit from applying the identified practices and tools in order to mitigate the stated challenges

    Quality measurement in agile and rapid software development: A systematic mapping

    Get PDF
    Context: In despite of agile and rapid software development (ARSD) being researched and applied extensively, managing quality requirements (QRs) are still challenging. As ARSD processes produce a large amount of data, measurement has become a strategy to facilitate QR management. Objective: This study aims to survey the literature related to QR management through metrics in ARSD, focusing on: bibliometrics, QR metrics, and quality-related indicators used in quality management. Method: The study design includes the definition of research questions, selection criteria, and snowballing as search strategy. Results: We selected 61 primary studies (2001-2019). Despite a large body of knowledge and standards, there is no consensus regarding QR measurement. Terminology is varying as are the measuring models. However, seemingly different measurement models do contain similarities. Conclusion: The industrial relevance of the primary studies shows that practitioners have a need to improve quality measurement. Our collection of measures and data sources can serve as a starting point for practitioners to include quality measurement into their decision-making processes. Researchers could benefit from the identified similarities to start building a common framework for quality measurement. In addition, this could help researchers identify what quality aspects need more focus, e.g., security and usability with few metrics reported.This work has been funded by the European Union’s Horizon 2020 research and innovation program through the Q-Rapids project (grant no. 732253). This research was also partially supported by the Spanish Ministerio de Economía, Industria y Competitividad through the DOGO4ML project (grant PID2020-117191RB-I00). Silverio Martínez-Fernández worked in Fraunhofer IESE before January 2020.Peer ReviewedPostprint (published version

    Quality Properties of Execution Tracing, an Empirical Study

    Get PDF
    The authors are grateful to all the professionals who participated in the focus groups; moreover, they also express special thanks to the management of the companies involved for making the organisation of the focus groups possible.Data are made available in the appendix including the results of the data coding process.The quality of execution tracing impacts the time to a great extent to locate errors in software components; moreover, execution tracing is the most suitable tool, in the majority of the cases, for doing postmortem analysis of failures in the field. Nevertheless, software product quality models do not adequately consider execution tracing quality at present neither do they define the quality properties of this important entity in an acceptable manner. Defining these quality properties would be the first step towards creating a quality model for execution tracing. The current research fills this gap by identifying and defining the variables, i.e., the quality properties, on the basis of which the quality of execution tracing can be judged. The present study analyses the experiences of software professionals in focus groups at multinational companies, and also scrutinises the literature to elicit the mentioned quality properties. Moreover, the present study also contributes to knowledge with the combination of methods while computing the saturation point for determining the number of the necessary focus groups. Furthermore, to pay special attention to validity, in addition to the the indicators of qualitative research: credibility, transferability, dependability, and confirmability, the authors also considered content, construct, internal and external validity

    Exploring Model-to-Model Transformations for RIA Architectures by means of a Systematic Mapping Study

    Get PDF
    This study focuses on model-to-model – M2M – transformations, as part of the Model- Driven Development – MDD – approach, for Rich Internet Applications – RIA. The main aim of this study is to identify fields that require further contributions, and/or research opportunities in the previously mentioned context. We applied mapping studies techniques, since these techniques use the same basic methodology as reviews but are more general and aimed at discovering what the research trends are, allowing to identify gaps in the literature. From an initial set of 132 papers, we selected 30 papers first. Then, thanks to experts’ suggestion, we added 3 additional papers. Therefore, we considered 33 research papers. The performed analysis led to various considerations. Among the important ones, we can mention: there are many newly proposed methods, the scarcity of rigorous and formal validation of such methods, the problem of the portability of Platform Independent Models – PIM, and the low number of tools available for MDD.Laboratorio de Investigación y Formación en Informática Avanzad

    Towards Optimization of Anomaly Detection Using Autonomous Monitors in DevOps

    Get PDF
    Continuous practices including continuous integration, continuous testing, and continuous deployment are foundations of many software development initiatives. Another very popular industrial concept, DevOps, promotes automation, collaboration, and monitoring, to even more empower development processes. The scope of this thesis is on continuous monitoring and the data collected through continuous measurement in operations as it may carry very valuable details on the health of the software system. Aim: We aim to explore and improve existing solutions for managing monitoring data in operations, instantiated in the specific industry context. Specifically, we collaborated with a Swedish company responsible for ticket management and sales in public transportation to identify challenges in the information flow from operations to development and explore approaches for improved data management inspired by state-of-the-art machine learning (ML) solutions.Research approach: Our research activities span from practice to theory and from problem to solution domain, including problem conceptualization, solution design, instantiation, and empirical validation. This complies with the main principles of the design science paradigm mainly used to frame problem-driven studies aiming to improve specific areas of practice. Results: We present identified problem instances in the case company considering the general goal of better incorporating feedback from operations to development and corresponding solution design for reducing information overflow, e.g. alert flooding, by introducing a new element, a smart filter, in the feedback loop. Therefore, we propose a simpler version of the solution design based on ML decision rules as well as a more advanced deep learning (DL) alternative. We have implemented and partially evaluated the former solution design while we present the plan for implementation and optimization of the DL version of the smart filter, as a kind of autonomous monitor. Conclusion: We propose using a smart filter to tighten and improve feedback from operations to development. The smart filter utilizes operations data to discover anomalies and timely report alerts on strange and unusual system's behavior. Full-scale implementation and empirical evaluation of the smart filter based on the DL solution will be carried out in future work
    corecore