89 research outputs found

    Building Stronger Bridges: Strategies for Improving Communication and Collaboration Between Industry and Academia in Software Engineering

    Get PDF
    Background: The software engineering community has expressed growing concern regarding the need for more connections between research and practice. Despite the large amount of knowledge researchers generate, its impact on real-world practice is uncertain. Meanwhile, practitioners in industry often struggle to access and utilize relevant research outcomes that could inform and enhance their work. Collaboration between industry and academia is seen as a potential solution to bridge this gap, ensuring that research remains relevant and applicable in real-world contexts.Objective: This research aims to explore challenges in communication and collaboration between industry and to design, evaluate, and implement strategies that foster this collaboration. Methodology: The design science paradigm inspires this research, as we aim to obtain knowledge about industry-academia communication and collaboration by studying challenges and solutions in context. The thesis includes case studies; some are exploratory, while others focus on evaluating specific strategies.Results: In terms of problem understanding, we identified challenges that impact communication and collaboration, such as different expectations, perspectives, and ways of working. Furthermore, we pinpointed factors facilitating communication, including long-term projects, research relevance, and practitioners' involvement.Regarding how to improve communication and collaboration, we investigated two strategies. The first strategy involves using the SERP-taxonomy approach in a project on software vulnerability management in IoT systems. The second strategy involves the proposal of interactive rapid reviews, conducted in close collaboration with practitioners. We share the lessons from conducting two reviews (one in testing machine learning systems and the other in software component selection). The benefits of conducting interactive rapid reviews include mutual understanding, the development of networks, and increased motivation for further studies.Conclusion: The thesis emphasizes the importance of industry-academia collaboration as a key aspect in closing gaps between research and practice. The strategies discussed provide tools to understand industry-academia partnerships better and support future collaborations

    Data Mining and Machine Learning for Software Engineering

    Get PDF
    Software engineering is one of the most utilizable research areas for data mining. Developers have attempted to improve software quality by mining and analyzing software data. In any phase of software development life cycle (SDLC), while huge amount of data is produced, some design, security, or software problems may occur. In the early phases of software development, analyzing software data helps to handle these problems and lead to more accurate and timely delivery of software projects. Various data mining and machine learning studies have been conducted to deal with software engineering tasks such as defect prediction, effort estimation, etc. This study shows the open issues and presents related solutions and recommendations in software engineering, applying data mining and machine learning techniques

    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

    Definition of a support infrastructure for replicating and aggregating families of software engineering experiments

    Get PDF
    Experimental software engineering includes several processes, the most representative being run experiments, run replications and synthesize the results of multiple replications. Of these processes, only the first is relatively well established in software engineering. Problems of information management and communication among researchers are one of the obstacles to progress in the replication and synthesis processes. Software engineering experimentation has expanded considerably over the last few years. This has brought with it the invention of experimental process support proposals. However, few of these proposals provide integral support, including replication and synthesis processes. Most of the proposals focus on experiment execution. This paper proposes an infrastructure providing integral support for the experimental research process, specializing in the replication and synthesis of a family of experiments. The research has been divided into stages or phases, whose transition milestones are marked by the attainment of their goals. Each goal exactly matches an artifact or product. Within each stage, we will adopt cycles of successive approximations (generateand- test cycles), where each approximation includes a diferent viewpoint or input. Each cycle will end with the product approval

    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

    Exploring grounded theory perspectives of cognitive load in software engineering

    Get PDF

    An Empirical Simulation-based Study of Real-Time Speech Translation for Multilingual Global Project Teams

    Get PDF
    ABSTRACT Context: Real-time speech translation technology is today available but still lacks a complete understanding of how such technology may affect communication in global software projects. Goal: To investigate the adoption of combining speech recognition and machine translation in order to overcome language barriers among stakeholders who are remotely negotiating software requirements. Method: We performed an empirical simulation-based study including: Google Web Speech API and Google Translate service, two groups of four subjects, speaking Italian and Brazilian Portuguese, and a test set of 60 technical and non-technical utterances. Results: Our findings revealed that, overall: (i) a satisfactory accuracy in terms of speech recognition was achieved, although significantly affected by speaker and utterance differences; (ii) adequate translations tend to follow accurate transcripts, meaning that speech recognition is the most critical part for speech translation technology. Conclusions: Results provide a positive albeit initial evidence towards the possibility to use speech translation technologies to help globally distributed team members to communicate in their native languages

    Towards Understanding Motivation in Software Engineering

    Get PDF
    ABSTRACT Understanding motivation of software engineers has important implications for industrial practice. Motivation is a complex construct that seems to be affected by diverse environmental conditions and is likely to be moderated by personality and individual values, beliefs, and needs. Although research on motivation in software engineering has made important scientific progress, the majority of the methods adopted quantitative approaches, towards generalizable statements. Given the complexity of the human behavior, contextualized and explanatory theories are needed to account for this diversity. This article describes a research agenda of a PhD project that aims to build explanatory theories of motivation in software organizations. As research approach, it brings together qualitative evidence-based empirical methods such as systematic literature review, case studies and meta-ethnography. Research phases, current status, threats to validity and future plans are described in details but, since it is an ongoing work, it claims for feedback from the community in order to improve the general research consistency and credibility
    • …
    corecore