The field of software-development effort estimation explores ways of defining effort through prediction approaches. Even though this field has a crucial impact on budgeting and project planning in industry, the number of works classifying and examining currently available approaches is still small. This article, therefore, presents a comprehensive overview of these approaches, and pinpoints research gaps, challenges and trends. A systematic mapping of the literature was designed and performed based on well-established practical guidelines. In total, 120 primary studies were selected, analysed and categorised, after applying a careful filtering process from a sample of 3746 candidate studies to answer six research questions. Over 70% of the selected studies adopted multiple effort estimation approaches; over 45% adopted evaluation research as a research method; over 90% of the participants were students, rather than professionals; most studies had their quality assessed as high, and were most commonly published in journals. Our study benefits practitioners and researchers by providing a body of knowledge about the current literature, serving as a starting point for upcoming studies. This article reports challenges worth investigating, regarding the use of cognitive load and team interaction. 2 Planning This section aims to outline our review protocol. Fig. 1 introduces the adopted systematic mapping process, which is formed by three
The Unified Modeling Language (UML) has become the standard for modeling software. Several surveys on the UML usage have been proposed in recent years. However, none of them explores the UML use in specific regional scope, and thus little is known about the practices and perceptions of UML use from the perspective of practitioners in the Brazilian industry. Objective: This paper reports on a survey focused on identifying the state-of-the-practice of the Brazilian industry for what concerns the UML usage in real-world settings. Method: In total, 222 practitioners from 140 different Information Technology companies have answered an on-line (or printed) questionnaire concerning their UML use experiences, the difficulty in adopting UML and what should be done to increase the UML adoption in practice. Result: The results show that: (1) 60 participants (28.2%) have used UML in their daily work, while 73.2% have not; (2) 55.41% of the surveyed participants did not disagree with the statement that UML is the "lingua franca" in software modeling; (3) 61.26% reported to find that the automatic creation of UML diagrams to represent a big picture of the system under development would be useful to boost UML use. Conclusion: The UML is not often used in the work life of participants. In addition, no relationship was identified between the use of UML and the participant company being a software factory.
Model merging plays a chief role in many software engineering activities, e.g. evolving Unified Modelling Language (UML) models for adding new features. Software developers may evolve UML models using merge relationships. However, given the growing heterogeneity of merge strategies and the UML limitations for expressing merge relationship, it is particularly challenging for them to specify merge relationships. Consequently, developers, end up expressing improperly merge relationships. Today, the UML can neither specify the semantics nor the order in which merge relationships must be performed. Developers are unable to specify the semantics and order in which merge relationships must be performed. This study, therefore, proposes UML2Merge, which is a UML extension for expressing merge relationship. The UML2Merge was evaluated through an empirical study with 10 participants for investigating its effects on the merge effort, the correctness of merge relationships, and the participant's acceptance. The collected data suggest that the UML2Merge is proper to express merge relationships by requiring a low merge effort, producing elevated correctness of merge relationships, and having a high acceptance of the participants. The results are encouraging and show the potential for using UML2Merge to express the evolution of UML models through merge relationships.
Even though existing heuristics and specification-based techniques support composing design models, it is still considered a time-consuming and highly intensive task. In addition, there is a lack of studies exploring the effects of composition techniques on software developers' affective state and development effort. This study reports a pilot study to investigate these effects while developers apply composition techniques to detect and resolve inconsistencies in output-composed models. In this sense, a widely known wearable EEG headset, namely Emotiv EPOC, with 14 channels was used, while developers made use of heuristic-based and specification-based composition techniques to evolve design models. Our results suggest that using heuristic-based techniques produced a higher effect on the developers' affectivity, compared to specification-based techniques. Moreover, the higher the effects on the developers' affectivity, the higher the odds to invest less effort and produce correctly composed design models.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.