Endre søk
Link to record
Permanent link

Direct link
BETA
Publikasjoner (10 av 24) Visa alla publikasjoner
Badampudi, D., Britto, R. & Unterkalmsteiner, M. (2019). Modern code reviews: Preliminary results of a systematic mapping study. In: PROCEEDINGS OF EASE 2019 - EVALUATION AND ASSESSMENT IN SOFTWARE ENGINEERING: . Paper presented at 23rd Evaluation and Assessment in Software Engineering Conference, EASE Copenhagen, 14 April 2019 through 17 April 2019 (pp. 340-345). Association for Computing Machinery
Åpne denne publikasjonen i ny fane eller vindu >>Modern code reviews: Preliminary results of a systematic mapping study
2019 (engelsk)Inngår i: PROCEEDINGS OF EASE 2019 - EVALUATION AND ASSESSMENT IN SOFTWARE ENGINEERING, Association for Computing Machinery , 2019, s. 340-345Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

Reviewing source code is a common practice in a modern and collaborative coding environment. In the past few years, the research on modern code reviews has gained interest among practitioners and researchers. The objective of our investigation is to observe the evolution of research related to modern code reviews, identify research gaps and serve as a basis for future research. We use a systematic mapping approach to identify and classify 177 research papers. As preliminary result of our investigation, we present in this paper a classification scheme of the main contributions of modern code review research between 2005 and 2018. © 2019 Association for Computing Machinery.

sted, utgiver, år, opplag, sider
Association for Computing Machinery, 2019
Emneord
Contemporary code review, Modern code reviews, Source code review, Mapping, Software engineering, Classification scheme, Code review, Collaborative coding, Research gaps, Research papers, Source-code reviews, Systematic mapping, Systematic mapping studies, Codes (symbols)
HSV kategori
Identifikatorer
urn:nbn:se:bth-17893 (URN)10.1145/3319008.3319354 (DOI)000493383400036 ()2-s2.0-85064735561 (Scopus ID)9781450371452 (ISBN)
Konferanse
23rd Evaluation and Assessment in Software Engineering Conference, EASE Copenhagen, 14 April 2019 through 17 April 2019
Tilgjengelig fra: 2019-05-21 Laget: 2019-05-21 Sist oppdatert: 2019-11-14bibliografisk kontrollert
Britto, R., Šmite, D., Damm, L.-O. & Börstler, J. (2019). Performance Evolution of Newcomers in Large-Scale Distributed Software Projects: An Industrial Case Study. In: Proceedings - 2019 ACM/IEEE 14th International Conference on Global Software Engineering, ICGSE 2019: . Paper presented at 14th ACM/IEEE International Conference on Global Software Engineering, ICGSE, Montreal, 25 May 2019 through 26 May 2019 (pp. 1-11). Institute of Electrical and Electronics Engineers Inc., Article ID 8807643.
Åpne denne publikasjonen i ny fane eller vindu >>Performance Evolution of Newcomers in Large-Scale Distributed Software Projects: An Industrial Case Study
2019 (engelsk)Inngår i: Proceedings - 2019 ACM/IEEE 14th International Conference on Global Software Engineering, ICGSE 2019, Institute of Electrical and Electronics Engineers Inc. , 2019, s. 1-11, artikkel-id 8807643Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

Large-scale distributed software projects with long life cycles often involve a considerable amount of complex legacy code. The combination of scale and distribution challenges and the difficulty in acquiring knowledge about massive amounts of complex legacy code may make the onboarding of new developers/teams problematic. These problems may lead to extended periods of low performance. The primary objective of this paper is to investigate the performance evolution of offshore newcomers onboarded in a large-scale globally distributed project and how it relates to the employed onboarding strategy. To achieve our objective, we conducted a case study in Ericsson. We identified that the following aspects in the onboarding strategy employed in the investigated case seem to be related to the unexpectedly low performance evolution: i) the distance to mentors; ii) the used formal training approach, which did not fit the sociocultural background of the newcomers; iii) allocation of large and distributed tasks in the early stages of the onboarding process; and iv) team instability. We conclude that the onboarding of newcomers in globally distributed projects must be planned well ahead and should consider avoiding the aspects mentioned above. © 2019 IEEE.

sted, utgiver, år, opplag, sider
Institute of Electrical and Electronics Engineers Inc., 2019
Emneord
developer onboarding, global software engineering, large scale software development, performance, Life cycle, Offshore oil well production, Distributed projects, Distributed software, Industrial case study, Onboarding, Performance evolutions, Primary objective, Software design
HSV kategori
Identifikatorer
urn:nbn:se:bth-18673 (URN)10.1109/ICGSE.2019.00000 (DOI)9781538691960 (ISBN)
Konferanse
14th ACM/IEEE International Conference on Global Software Engineering, ICGSE, Montreal, 25 May 2019 through 26 May 2019
Tilgjengelig fra: 2019-09-19 Laget: 2019-09-19 Sist oppdatert: 2019-09-19bibliografisk kontrollert
Oliveira, P. A., Santos Neto, P., Britto, R., Rabêlo, R. D., Braga, R. & Souza, M. (2018). CIaaS: computational intelligence as a service with Athena. Computer languages, systems & structures, 54, 95-118
Åpne denne publikasjonen i ny fane eller vindu >>CIaaS: computational intelligence as a service with Athena
Vise andre…
2018 (engelsk)Inngår i: Computer languages, systems & structures, ISSN 1477-8424, E-ISSN 1873-6866, Vol. 54, s. 95-118Artikkel i tidsskrift (Fagfellevurdert) Published
Abstract [en]

Computational Intelligence (CI) is a sub-branch of Artificial Intelligence (AI) that focus on studying adaptive mechanisms to enable intelligent behavior in complex environments. CI techniques have been successful in solving complex problems in many different knowledge areas. However, despite their usefulness, developing solutions based on CI techniques is not a trivial activity, since it involves the codification/adaptation of algorithms to specific context and problems. In this paper, we present and validate through a quasi-experiment a new paradigm to develop CI-based solutions using a more mature version of Athena (2.0): Computational Intelligence as a Service (CIaaS). Using this tool, both researchers and practitioners can design and evaluate CI-based solutions by dragging and dropping components in a visual environment, in a cloud-based platform. The results of the quasi-experiment suggest that our approach can help researchers to design and evaluate CI-based systems in a simple, reliable and fast way. © 2018 Elsevier Ltd

sted, utgiver, år, opplag, sider
Elsevier Ltd, 2018
Emneord
Computational intelligence, Tool, Visual programming, Computer programming, Tools, Adaptive mechanism, Cloud based platforms, Complex environments, Developing solutions, Intelligent behavior, Quasi-experiments, Visual environments, Artificial intelligence
HSV kategori
Identifikatorer
urn:nbn:se:bth-16333 (URN)10.1016/j.cl.2018.04.003 (DOI)000454970200005 ()
Tilgjengelig fra: 2018-06-07 Laget: 2018-06-07 Sist oppdatert: 2019-01-28bibliografisk kontrollert
Usman, M., Britto, R., Damm, L.-O. & Börstler, J. (2018). Effort Estimation in Large-Scale Software Development: An Industrial Case Study. Information and Software Technology, 99, 21-40
Åpne denne publikasjonen i ny fane eller vindu >>Effort Estimation in Large-Scale Software Development: An Industrial Case Study
2018 (engelsk)Inngår i: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 99, s. 21-40Artikkel i tidsskrift (Fagfellevurdert) Published
Abstract [en]

Context: Software projects frequently incur schedule and budget overruns. Planning and estimation are particularlychallenging in large and globally distributed projects. While software engineering researchers have beeninvestigating effort estimation for many years to help practitioners to improve their estimation processes, there is littleresearch about effort estimation in large-scale distributed agile projects.Objective: The main objective of this paper is three-fold: i) to identify how effort estimation is carried out in largescaledistributed agile projects; ii) to analyze the accuracy of the effort estimation processes in large-scale distributedagile projects; and iii) to identify the factors that impact the accuracy of effort estimates in large-scale distributed agileprojects.Method: We performed an exploratory longitudinal case study. The data collection was operationalized througharchival research and semi-structured interviews.Results: The main findings of this study are: 1) underestimation is the dominant trend in the studied case, 2) reestimationat the analysis stage improves the accuracy of the effort estimates, 3) requirements with large size/scopeincur larger effort overruns, 4) immature teams incur larger effort overruns, 5) requirements developed in multi-sitesettings incur larger effort overruns as compared to requirements developed in a collocated setting, and 6) requirementspriorities impact the accuracy of the effort estimates.Conclusion: Effort estimation is carried out at quotation and analysis stages in the studied case. It is a challengingtask involving coordination amongst many different stakeholders. Furthermore, lack of details and changes in requirements,immaturity of the newly on-boarded teams and the challenges associated with the large-scale add complexitiesin the effort estimation process.

sted, utgiver, år, opplag, sider
Elsevier, 2018
Emneord
ffort estimation; Large-scale software development; Global and agile software development
HSV kategori
Identifikatorer
urn:nbn:se:bth-15193 (URN)10.1016/j.infsof.2018.02.009 (DOI)000432767900003 ()
Forskningsfinansiär
Knowledge Foundation
Tilgjengelig fra: 2017-09-22 Laget: 2017-09-22 Sist oppdatert: 2018-06-07bibliografisk kontrollert
Britto, R., Cruzes, D., Šmite, D. & Šāblis, A. (2018). Onboarding Software Developers and Teams in Three Globally Distributed Legacy Projects: A Multi-Case Study. Journal of Software: Evolution and Process, 30(4), Article ID e1921.
Åpne denne publikasjonen i ny fane eller vindu >>Onboarding Software Developers and Teams in Three Globally Distributed Legacy Projects: A Multi-Case Study
2018 (engelsk)Inngår i: Journal of Software: Evolution and Process, ISSN 2047-7473, E-ISSN 2047-7481, Vol. 30, nr 4, artikkel-id e1921Artikkel i tidsskrift (Fagfellevurdert) Published
Abstract [en]

Onboarding is the process of supporting new employees regarding their social and performance adjustment to their new job. Software companies have faced challenges with recruitment and onboarding of new team members and there is no study that investigates it in a holistic way. In this paper, we conducted a multi-case study to investigate the onboarding of software developers/teams, associated challenges, and areas for further improvement in three globally distributed legacy projects. We employed Bauer's model for onboarding to identify the current state of the onboarding strategies employed in each case. We learned that the employed strategies are semi-formalized. Besides, in projects with multiple sites, some functions are executed locally and the onboarding outcomes may be hard to control. We also learned that onboarding in legacy projects is especially challenging and that decisions to distribute such projects across multiple locations shall be approached carefully. In our cases, the challenges to learn legacy code were further amplified by the project scale and the distance to the original sources of knowledge. Finally, we identified practices that can be used by companies to increase the chances of being successful when onboarding software developers and teams in globally distributed legacy projects.

sted, utgiver, år, opplag, sider
John Wiley & Sons, 2018
Emneord
Global software development, Global software engineering, Legacy, Onboarding
HSV kategori
Identifikatorer
urn:nbn:se:bth-15195 (URN)10.1002/smr.1921 (DOI)000430299400004 ()
Forskningsfinansiär
Knowledge Foundation
Tilgjengelig fra: 2017-09-22 Laget: 2017-09-22 Sist oppdatert: 2018-05-04bibliografisk kontrollert
Josyula, J., Panamgipalli, S., Usman, M., Britto, R. & Ali, N. b. (2018). Software Practitioners' Information Needs and Sources: A Survey Study. In: Proceedings - 2018 9th International Workshop on Empirical Software Engineering in Practice, IWESEP 2018: . Paper presented at 9th International Workshop on Empirical Software Engineering in Practice (IWESEP), DEC 04, 2018, Nara, JAPAN (pp. 1-6). IEEE
Åpne denne publikasjonen i ny fane eller vindu >>Software Practitioners' Information Needs and Sources: A Survey Study
Vise andre…
2018 (engelsk)Inngår i: Proceedings - 2018 9th International Workshop on Empirical Software Engineering in Practice, IWESEP 2018, IEEE , 2018, s. 1-6Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

Software engineering practitioners have information needs to support strategic, tactical and operational decision-making. However, there is scarce research on understanding which information needs exist and how they are currently fulfilled in practice. This study aims to identify the information needs, the frequency of their occurrence, the sources of information used to satisfy the needs, and the perception of practitioners regarding the usefulness of the sources currently used. For this purpose, a literature review was conducted to aggregate the current state of understanding in this area. We built on the results of the literature review and developed further insights through in-depth interviews with 17 practitioners. We further triangulated the findings from these two investigations by conducting a web-based survey (with 83 completed responses). Based on the results, we infer that information regarding product design, product architecture and requirements gathering are the most frequently faced needs. Software practitioners mostly use blogs, community forums, product documentation, and discussion with colleagues to address their information needs.

sted, utgiver, år, opplag, sider
IEEE, 2018
Serie
International Workshop on Empirical Software Engineering in Practice, ISSN 2333-519X
Emneord
evidence-based software engineering, EBSE, Information retrieval, knowledge sharing
HSV kategori
Identifikatorer
urn:nbn:se:bth-17830 (URN)10.1109/IWESEP.2018.00009 (DOI)000462914400001 ()978-1-7281-0439-3 (ISBN)
Konferanse
9th International Workshop on Empirical Software Engineering in Practice (IWESEP), DEC 04, 2018, Nara, JAPAN
Tilgjengelig fra: 2019-04-18 Laget: 2019-04-18 Sist oppdatert: 2019-06-28bibliografisk kontrollert
Šmite, D., Britto, R. & Van Solingen, R. (2017). Calculating the extra costs and the bottom-line hourly cost of offshoring. In: Proceedings - 2017 IEEE 12th International Conference on Global Software Engineering, ICGSE 2017: . Paper presented at 12th IEEE International Conference on Global Software Engineering, ICGSE, Buenos Aires (pp. 96-105). Institute of Electrical and Electronics Engineers Inc.
Åpne denne publikasjonen i ny fane eller vindu >>Calculating the extra costs and the bottom-line hourly cost of offshoring
2017 (engelsk)Inngår i: Proceedings - 2017 IEEE 12th International Conference on Global Software Engineering, ICGSE 2017, Institute of Electrical and Electronics Engineers Inc. , 2017, s. 96-105Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

Offshoring software development activities to a remote site in another country continues to be one of the key strategies to save development cost. However, the assumed economic benefits of offshoring are often questionable, due to a large number of hidden costs and too simple cost calculations. This study is a continuation of our work on calculating the true hourly cost that includes the extra direct and indirect costs on top of the salary-based hourly rates. We collected data from an empirical case study conducted in a large international corporation. This corporation develops software-intensive systems and has offshored its ongoing product development from Sweden to a recently on-boarded captive company site in India. In this paper, we report a number of extra costs and their impact on the resulting hourly cost as well as the bottom-line cost per work unit. Our analysis includes quantitative data from corporate archives, and expert-based estimates gathered through focus groups and workshops with company representatives from both the onshore and the offshore sites. Our findings show that there is additional cost that can be directly or at least strongly attributed to the transfer of work, working on a distance, and immaturity of the offshore site. Consideration of extra costs increases the hourly cost several times, while the performance gaps between the mature sites and the immature site leads to an even higher difference. As a result, two years after on-boarding of the offshore teams, the mature teams in high-cost locations continue to be 'cheaper' despite the big salary differences, and the most positive hypothetical scenario, in which the company could break even, is unrealistic. The implications of our findings are twofold. First, offshoring of complex ongoing products does not seem to lead to short-term bottom-line economic gains, and may not even reach breakeven within five years. Second, offshoring in the studied case can be justified but merely when initiated for other reasons than cost. © 2017 IEEE.

sted, utgiver, år, opplag, sider
Institute of Electrical and Electronics Engineers Inc., 2017
Serie
International Conference on Global Software Engineering
Emneord
Case study, Empirical, Extra cost, Global software development, Hidden cost, Large-scale software development, Offshore cost, Offshoring, Software transfer, Compensation (personnel), Economics, Outsourcing, Software design, Software engineering, Wages, Direct and indirect costs, Empirical case studies, Hidden costs, International corporation, Off-shoring, Software intensive systems, Costs
HSV kategori
Identifikatorer
urn:nbn:se:bth-15100 (URN)10.1109/ICGSE.2017.12 (DOI)000412758200014 ()2-s2.0-85027711232 (Scopus ID)9781538615874 (ISBN)
Konferanse
12th IEEE International Conference on Global Software Engineering, ICGSE, Buenos Aires
Forskningsfinansiär
Knowledge Foundation, 2012/0200
Tilgjengelig fra: 2017-09-01 Laget: 2017-09-01 Sist oppdatert: 2018-01-16bibliografisk kontrollert
Filho, J., Rocha, L. S., Andrade, R. & Britto, R. (2017). Preventing erosion in exception handling design using static-architecture conformance checking. In: Rogerio de Lemos R.,Lopes A. (Ed.), Lecture Notes Computer Science: . Paper presented at 11th European Conference on Software Architecture, ECSA, Canterbury (pp. 67-83). Springer Verlag, 10475
Åpne denne publikasjonen i ny fane eller vindu >>Preventing erosion in exception handling design using static-architecture conformance checking
2017 (engelsk)Inngår i: Lecture Notes Computer Science / [ed] Rogerio de Lemos R.,Lopes A., Springer Verlag , 2017, Vol. 10475, s. 67-83Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

Exception handling is a common error recovery technique employed to improve software robustness. However, studies have reported that exception handling is commonly neglected by developers and is the least understood and documented part of a software project. The lack of documentation and difficulty in understanding the exception handling design can lead developers to violate important design decisions, triggering an erosion process in the exception handling design. Architectural conformance checking provides means to control the architectural erosion by periodically checking if the actual architecture is consistent with the planned one. Nevertheless, available approaches do not provide a proper support for exception handling conformance checking. To fulfill this gap, we propose ArCatch: an architectural conformance checking solution to deal with the exception handling design erosion. ArCatch provides: (i) a declarative language for expressing design constraints regarding exception handling; and (ii) a design rule checker to automatically verify the exception handling conformance. To evaluate the usefulness and effectiveness of our approach, we conducted a case study, in which we evaluated an evolution scenario composed by 10 versions of an existing web-based Java system. Each version was checked against the same set of exception handling design rules. Based on the results and the feedback given by the system’s architect, the ArCatch proved useful and effective in the identification of existing exception handling erosion problems and locating its causes in the source code. © 2017, Springer International Publishing AG.

sted, utgiver, år, opplag, sider
Springer Verlag, 2017
Emneord
Architecture conformance checking, Exception handling design, Exception handling erosion, Software architecture, Conformance checking, Declarative Languages, Design constraints, Design decisions, Design rule checker, Exception handling, Software robustness, Static architecture, Erosion
HSV kategori
Identifikatorer
urn:nbn:se:bth-15220 (URN)10.1007/978-3-319-65831-5_5 (DOI)000455330300005 ()2-s2.0-85028990770 (Scopus ID)9783319658308 (ISBN)
Konferanse
11th European Conference on Software Architecture, ECSA, Canterbury
Tilgjengelig fra: 2017-09-29 Laget: 2017-09-29 Sist oppdatert: 2019-06-27bibliografisk kontrollert
Usman, M., Britto, R., Börstler, J. & Mendes, E. (2017). Taxonomies in software engineering: A Systematic mapping study and a revised taxonomy development method. Information and Software Technology, 85, 43-59
Åpne denne publikasjonen i ny fane eller vindu >>Taxonomies in software engineering: A Systematic mapping study and a revised taxonomy development method
2017 (engelsk)Inngår i: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 85, s. 43-59Artikkel i tidsskrift (Fagfellevurdert) Published
Abstract [en]

Context: Software Engineering (SE) is an evolving discipline with new subareas being continuously developed and added. To structure and better understand the SE body of knowledge, taxonomies have been proposed in all SE knowledge areas. Objective: The objective of this paper is to characterize the state-of-the-art research on SE taxonomies. Method: A systematic mapping study was conducted, based on 270 primary studies. Results: An increasing number of SE taxonomies have been published since 2000 in a broad range of venues, including the top SE journals and conferences. The majority of taxonomies can be grouped into the following SWEBOI(knowledge areas: construction (19.55%), design (19.55%), requirements (15.50%) and maintenance (11.81%). Illustration (45.76%) is the most frequently used approach for taxonomy validation. Hierarchy (53.14%) and faceted analysis (39.48%) are the most frequently used classification structures. Most taxonomies rely on qualitative procedures to classify subject matter instances, but in most cases (86.53%) these procedures are not described in sufficient detail. The majority of the taxonomies (97%) target unique subject matters and many taxonomy-papers are cited frequently. Most SE taxonomies are designed in an ad-hoc way. To address this issue, we have revised an existing method for developing taxonomies in a more systematic way. Conclusion: There is a strong interest in taxonomies in SE, but few taxonomies are extended or revised. Taxonomy design decisions regarding the used classification structures, procedures and descriptive bases are usually not well described and motivated. (C) 2017 The Authors. Published by Elsevier B.V.

sted, utgiver, år, opplag, sider
ELSEVIER SCIENCE BV, 2017
Emneord
Taxonomy, Classification, Software engineering, Systematic mapping study
HSV kategori
Identifikatorer
urn:nbn:se:bth-15161 (URN)10.1016/j.infsof.2017.01.006 (DOI)000397553500003 ()
Tilgjengelig fra: 2017-09-21 Laget: 2017-09-21 Sist oppdatert: 2018-02-09bibliografisk kontrollert
Silva, D., Rabelo, R., Campanha, M., Neto, P. S., Oliveira, P. A. & Britto, R. (2016). A hybrid approach for test case prioritization and selection. In: 2016 IEEE Congress on Evolutionary Computation, CEC 2016: . Paper presented at 2016 IEEE Congress on Evolutionary Computation, CEC 2016, Vancouver (pp. 4508-4515). IEEE
Åpne denne publikasjonen i ny fane eller vindu >>A hybrid approach for test case prioritization and selection
Vise andre…
2016 (engelsk)Inngår i: 2016 IEEE Congress on Evolutionary Computation, CEC 2016, IEEE, 2016, s. 4508-4515Konferansepaper, Publicerat paper (Fagfellevurdert)
Abstract [en]

Software testing consists in the dynamic verification of the behavior of a program on a set of test cases. When a program is modified, it must be tested to verify if the changes did not imply undesirable effects on its functionality. The rerunning of all test cases can be impossible, due to cost, time and resource constraints. So, it is required the creation of a test cases subset before the test execution. This is a hard problem and the use of standard Software Engineering techniques could not be suitable. This work presents an approach for test case prioritization and selection, based in relevant inputs obtained from a software development environment. The approach uses Software Quality Function Deployment (SQFD) to deploy the features relevance among the system components, Mamdani fuzzy inference systems to infer the criticality of each class and Ant Colony Optimization to select test cases. An evaluation of the approach is presented, using data from simulations with different number of tests.

sted, utgiver, år, opplag, sider
IEEE, 2016
Emneord
Ant colony optimization, Computer software selection and evaluation, Fuzzy inference, Quality function deployment, Software design, Software engineering, Testing, Verification, Dynamic verifications, Engineering techniques, Mamdani fuzzy inferences, Resource Constraint, Software development environment, System components, Test case prioritization, Undesirable effects, Software testing
HSV kategori
Identifikatorer
urn:nbn:se:bth-13794 (URN)10.1109/CEC.2016.7744363 (DOI)000390749104091 ()2-s2.0-85008245202 (Scopus ID)9781509006229 (ISBN)
Konferanse
2016 IEEE Congress on Evolutionary Computation, CEC 2016, Vancouver
Tilgjengelig fra: 2017-01-20 Laget: 2017-01-20 Sist oppdatert: 2018-01-13bibliografisk kontrollert
Organisasjoner
Identifikatorer
ORCID-id: ORCID iD iconorcid.org/0000-0002-7220-9570