10,589 research outputs found

    Measuring Software Process: A Systematic Mapping Study

    Get PDF
    Context: Measurement is essential to reach predictable performance and high capability processes. It provides support for better understanding, evaluation, management, and control of the development process and project, as well as the resulting product. It also enables organizations to improve and predict its process’s performance, which places organizations in better positions to make appropriate decisions. Objective: This study aims to understand the measurement of the software development process, to identify studies, create a classification scheme based on the identified studies, and then to map such studies into the scheme to answer the research questions. Method: Systematic mapping is the selected research methodology for this study. Results: A total of 462 studies are included and classified into four topics with respect to their focus and into three groups based on the publishing date. Five abstractions and 64 attributes were identified, 25 methods/models and 17 contexts were distinguished. Conclusion: capability and performance were the most measured process attributes, while effort and performance were the most measured project attributes. Goal Question Metric and Capability Maturity Model Integration were the main methods and models used in the studies, whereas agile/lean development and small/medium-size enterprise were the most frequently identified research contexts.Ministerio de Economía y Competitividad TIN2013-46928-C3-3-RMinisterio de Economía y Competitividad TIN2016-76956-C3-2- RMinisterio de Economía y Competitividad TIN2015-71938-RED

    Effort Estimation in Agile Software Development: A Systematic Map Study

    Get PDF
    Introduction − Making effort estimation as accurate and suitable for software development projects becomes a fundamental stage to favor its success, which is a difficult task, since the application of these techniques in constant changing agile development projects raises the need to evaluate different methods frequently.  Objectives− The objective of this study is to provide a state of the art on techniques of effort estimation in agile software development (ASD), performance evaluation and the drawbacks that arise in its application.  Method− A systematic mapping was developed involving the creation of research questions to provide a layout of this study, analysis of related words for the implementation of a search query to obtain related studies, application of exclusion, inclusion, and quality criteria to filter nonrelated studies and finally the organization and extraction of the necessary information from each study.   Results− 25 studies were selected; the main findings are: the most applied estimation techniques in agile contexts are: Estimation of Story Points (SP) followed by Planning Poker (PP) and Expert Judgment (EJ). The most frequent solutions supported in computational techniques such as: Naive Bayes, Regression Algorithms and Hybrid System; also, the performance evaluation measures Mean Magnitude of Relative Error (MMRE), Prediction Assessment (PRED) and Mean Absolute Error (MAE) have been found to be the most commonly used. Additionally, parameters such as feasibility, experience, and the delivery of expert knowledge, as well as the constant particularity and lack of data in the process of creating models to be applied to a limited number of environments are the challenges that arise the most when estimating software in agile software development (ASD)    Conclusions− It has been found there is an increase in the number of articles that address effort estimation in agile development, however, it becomes evident the need to improve the accuracy of the estimation by using estimation  techniques supported in machine learning  that have been shown to facilitate and improve the performance of this.  Key Words − Effort Estimation; Agile Software Development; Issues and Challenges; Automatic Learning; Performance Metrics  Introducción − Realizar una estimación de esfuerzo lo más precisa y adecuada para proyectos de desarrollo de software, se ha convertido en pieza fundamental para favorecer el éxito y desarrollo de los mismos, sin embargo, aplicar este tipo de estimación en proyectos de desarrollo ágil, en donde los cambios son constantes, la convierte en una tarea muy compleja de implementar.    Objetivo− El objetivo de este estudio es proveer un estado del arte sobre técnicas de estimación de esfuerzo en desarrollo de software ágil, la evaluación de su desempeño y los inconvenientes que se presentan en su aplicación.    Metodología− Se desarrolló un mapeo sistemático que involucró la creación de preguntas de investigación con el fin de proveer una estructura a seguir, análisis de palabras relacionadas con el tema de investigación para la creación e implementación de una cadena de búsqueda para la identificación de estudios relacionados con el tema, aplicación de criterios de exclusión, inclusión y calidad a los artículos encontrados para poder descartar estudios no relevantes y finalmente la organización y extracción de la información necesaria de cada artículo.     Resultados− De los 25 estudios seleccionados; los principales hallazgos son: las técnicas de estimación más aplicadas en contextos ágiles son: Estimación por medio de Puntos de Historia (SP) seguidos de Planning Poker (PP) y Juicio de Expertos (EJ). Soluciones soportadas en técnicas computacionales como: Naive Bayes, Algoritmos de Regresión y Sistema Híbridos; también se ha encontrado que la Magnitud Media del Error Relativo (MMRE), la Evaluación de la Predicción (PRED) y Error Absoluto Medio (MAE) son las medidas de evaluación de desempeño más usadas. Adicionalmente, se ha encontrado que parámetros como la viabilidad, la experiencia y la entrega de conocimiento de expertos, así como la constante particularidad y falta de datos en el proceso de creación de modelos para aplicarse a un limitado número de entornos son los desafíos que más se presentan al momento de realizar estimación de software en el desarrollo de software ágil (ASD)    Conclusiones− Se ha encontrado que existe un aumento en la cantidad de artículos que abordan la estimación de esfuerzo en el desarrollo ágil, sin embargo, se hace evidente la necesidad de mejorar la precisión de la estimación mediante el uso de técnicas de estimación soportadas en el aprendizaje de máquina que han demostrado que facilita y mejora el desempeño de este.    

    The Unfulfilled Potential of Data-Driven Decision Making in Agile Software Development

    Get PDF
    With the general trend towards data-driven decision making (DDDM), organizations are looking for ways to use DDDM to improve their decisions. However, few studies have looked into the practitioners view of DDDM, in particular for agile organizations. In this paper we investigated the experiences of using DDDM, and how data can improve decision making. An emailed questionnaire was sent out to 124 industry practitioners in agile software developing companies, of which 84 answered. The results show that few practitioners indicated a widespread use of DDDM in their current decision making practices. The practitioners were more positive to its future use for higher-level and more general decision making, fairly positive to its use for requirements elicitation and prioritization decisions, while being less positive to its future use at the team level. The practitioners do see a lot of potential for DDDM in an agile context; however, currently unfulfilled

    The Role of Time Pressure in Software Projects: A Literature Review and Research Agenda

    Get PDF
    The finding that deadlines affect work in organizational settings holds particularly true for software projects, which are usually conducted under time pressure. While the role of time pressure in software projects has been extensively studied, the findings yielded are diverse. Some authors report a positive relationship between time pressure and software project outcomes, while others find it to be negative or to follow an inverted U-shape pattern. Since many aspects concerning time pressure remain unexplained and its relationship with project outcomes is more complex than it might seem at first glance, we synthesize pertinent research to develop a research agenda aimed at improving the understanding in this domain. Our literature review shows a variety of time pressure conceptualizations, research approaches, and research contexts. The results reveal an inconsistent picture of time pressure’s impact on software projects. Our research agenda includes five themes we deem beneficial to consider in future research

    “Best Practice” without Evidence – Agile Software Methodology as Example

    Get PDF
    Despite the essentiality of education, and the widely known unscientific nature of expert opinion, education in general appears to be based on expert opinion. The example analyzed herein is of Agile software methodology, which is deemed a best practice and therefore taught in most IT studies, in Norway and most probably internationally. This is despite that it appears to be a well known fact within its respective field that the Agile methodology lacks scientific justification. A tertiary analysis was conducted to test this well known fact and to serve as basis for exploring what should be considered sufficient evidence for inclusion within official education. The result of the tertiary study is that, indeed, the evidence for the Agile methodology is scarce at best. A method to avoid such mistake is suggested, which could be valuable to science in general. This method entails employing philosophers of science, epistemologists, to counteract potential expert biases and verify the curriculum before it is accepted in official education

    Predictiveness and Effectiveness of Story Points in Agile Software Development

    Get PDF
    Agile Software Development (ASD) is one of the most popular iterative software development methodologies, which takes a different approach from the conventional sequential methods. Agile methods promise a faster response to unanticipated changes during development, typically contrasted with traditional project development, which assumes that software is specifiable and predictable. Traditionally, practitioners and researchers have utilised different Functional Size Measures (FSMs) as the main cost driver to estimate the effort required to develop a project (Software Effort Estimation – SSE). However, FSM methods are not easy to use with ASD. Thus, another measure, namely Story Point (SP), has become popular in this context. SP is a relative unit representing an intuitive mixture of complexity and the required effort of a user requirement. Although recent surveys report on a growing trend toward intelligent effort estimation techniques for ASD, the adoption of these techniques is still limited in practice. Several factors limit the accuracy and adaptability of these techniques. The primary factor is the lack of enough noise-free information at the estimation time, restricting the model’s accuracy and reliability. This thesis concentrates on SEE for ASD from both the technique and data perspectives. Under this umbrella, I first evaluate two prominent state-of-the-art works for SP estimation to understand their strengths and weaknesses. I then introduce and evaluate a novel method for SP estimation based on text clustering. Next, I investigate the relationship between SP and development time by conducting a thorough empirical study. Finally, I explore the effectiveness of SP estimation methods when used to estimate the actual time. To carry out this research, I have curated the TAWOS (Tawosi Agile Web-based Open-Source) dataset, which consists of over half a million issues from Agile, open-source projects. TAWOS has been made publicly available to allow for reproduction and extension in future work
    corecore