4.5 Article

Development of service-oriented architectures using model-driven development: A mapping study

Journal

INFORMATION AND SOFTWARE TECHNOLOGY
Volume 62, Issue -, Pages 42-66

Publisher

ELSEVIER
DOI: 10.1016/j.infsof.2015.02.006

Keywords

Service-oriented architecture; Model-driven development; SOA; MDD; State of the art; Mapping study

Funding

  1. Spanish MICINN project [TIN2013-44641-P]

Ask authors/readers for more resources

Context: Model-Driven Development (MDD) and Service-Oriented Architecture (SOA) are two challenging research areas in software engineering. MDD is about improving software development whilst SOA is a service-based conceptual development style, therefore investigating the available proposals in the literature to use MDD when developing SOA may be insightful. However, no studies have been found with this purpose. Objective: This work aims at assessing the state of the art in MDD for SOA systems. It mainly focuses on: what are the characteristics of MDD approaches that support SOA; what types of SOA are supported; how do they handle non-functional requirements. Method: We conducted a mapping study following a rigorous protocol. We identified the representative set of venues that should be included in the study. We applied a search string over the set of selected venues. As result, 129 papers were selected and analysed (both frequency analysis and correlation analysis) with respect to the defined classification criteria derived from the research questions. Threats to validity were identified and mitigated whenever possible. Results: The analysis allows us to answer the research questions. We highlight: (1) predominance of papers from Europe and written by researchers only; (2) predominance of top-down transformation in software development activities; (3) inexistence of consolidated methods; (4) significant percentage of works without tool support; (5) SOA systems and service compositions more targeted than single services and SOA enterprise systems; (6) limited use of metamodels; (7) very limited use of NFRs; and (8) limited application in real cases. Conclusion: This mapping study does not just provide the state of the art in the topic, but also identifies several issues that deserve investigation in the future, for instance the need of methods for activities other than software development (e.g., migration) or the need of conducting more real case studies. (C) 2015 Elsevier B.V. All rights reserved.

Authors

I am an author on this paper
Click your name to claim this paper and add it to your profile.

Reviews

Primary Rating

4.5
Not enough ratings

Secondary Ratings

Novelty
-
Significance
-
Scientific rigor
-
Rate this paper

Recommended

Article Computer Science, Software Engineering

Strategies to manage quality requirements in agile software development: a multiple case study

Pertti Karhapaa, Woubshet Behutiye, Pilar Rodriguez, Markku Oivo, Dolors Costal, Xavier Franch, Sanja Aaramaa, Michal Choras, Jari Partanen, Antonin Abherve

Summary: This study examined how companies using agile methods manage quality requirements (QRs) and identified proactive, reactive, and interactive strategies they employ. It also revealed 40 challenges and nine contextual elements that influence QR management practice choices. The findings were used to construct a theoretical model linking context, QR management practices, and challenges.

EMPIRICAL SOFTWARE ENGINEERING (2021)

Article Computer Science, Software Engineering

Dealing with Non-Functional Requirements in Model-Driven Development: A Survey

David Ameller, Xavier Franch, Cristina Gomez, Silverio Martinez-Fernandez, Joao Araujo, Stefan Biffl, Jordi Cabot, Vittorio Cortellessa, Daniel Mendez Fernandez, Ana Moreira, Henry Muccini, Antonio Vallecillo, Manuel Wimmer, Vasco Amaral, Wolfgang Bohm, Hugo Bruneliere, Loli Burgueno, Miguel Goulao, Sabine Teufl, Luca Berardinelli

Summary: Practitioners perceive managing NFRs in MDD as complex with little tool support. Productivity and maintainability are expected to be supported types of NFRs when MDD is adopted. Companies adapt MDD to deal with NFRs, but manual changes to generated code compromise maintainability. Despite this, practitioners believe the benefits of MDD outweigh the extra effort required for manual adaptations. Further research and conceptual work is needed to lower the barrier of integrating a broad spectrum of NFRs in practice.

IEEE TRANSACTIONS ON SOFTWARE ENGINEERING (2021)

Article Computer Science, Software Engineering

Software Engineering for AI-Based Systems: A Survey

Silverio Martinez-Fernandez, Justus Bogner, Xavier Franch, Marc Oriol, Julien Siebert, Adam Trendowicz, Anna Maria Vollmer, Stefan Wagner

Summary: AI-based systems are increasingly prevalent in society, but there is limited knowledge on software engineering approaches for building, operating, and maintaining these systems. Through a systematic mapping study, we identified the state-of-the-art knowledge and challenges in software engineering for AI-based systems, and classified the approaches according to different areas. Our results have valuable implications for researchers, practitioners, and educators.

ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY (2022)

Article Computer Science, Software Engineering

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

Lidia Lopez, Xavier Burgues, Silverio Martinez-Fernandez, Anna Maria Vollmer, Woubshet Behutiye, Pertti Karhapaa, Xavier Franch, Pilar Rodriguez, Markku Oivo

Summary: Despite the vast knowledge and standards, measuring quality requirements in agile and rapid software development (ARSD) still lacks consensus. Different measurement models show similarities, indicating a potential for building a common framework for quality measurement in ARSD.

JOURNAL OF SYSTEMS AND SOFTWARE (2022)

Article Computer Science, Software Engineering

How do Practitioners Perceive the Relevance of Requirements Engineering Research?

Xavier Franch, Daniel Mendez, Andreas Vogelsang, Rogardt Heldal, Eric Knauss, Marc Oriol, Guilherme H. Travassos, Jeffrey C. Carver, Thomas Zimmermann

Summary: Practitioners generally perceive Requirements Engineering (RE) research as essential or worthwhile, but there is still a higher percentage of non-positive ratings. Factors influencing perception of relevance include research's links to industry, research methods, and respondents' roles. Positive perceptions are mainly related to problem relevance and solution soundness, while negative perceptions are more varied.

IEEE TRANSACTIONS ON SOFTWARE ENGINEERING (2022)

Article Computer Science, Software Engineering

A Study About the Knowledge and Use of Requirements Engineering Standards in Industry

Xavier Franch, Martin Glinz, Daniel Mendez, Norbert Seyff

Summary: This article investigates the knowledge and use of standards and related artifacts in Requirements Engineering (RE) by conducting a questionnaire-based online survey. The results indicate that the knowledge and use of standards in RE are less widespread than expected, and cultural and organizational factors impede their adoption.

IEEE TRANSACTIONS ON SOFTWARE ENGINEERING (2022)

Article Computer Science, Software Engineering

Use and Misuse of the Term Experiment in Mining Software Repositories Research

Claudia Ayala, Burak Turhan, Xavier Franch, Natalia Juristo

Summary: The importance of Mining Software Repositories (MSR) in Software Engineering (SE) has created opportunities and challenges for empirical research. However, researchers in MSR struggle to classify their empirical methods within the existing SE empirical body of knowledge. This study analyzes MSR literature and finds that 19% of the papers claiming to be experiments are actually observational studies, using the term in a misleading way. Among the remaining papers, only one refers to a genuine controlled experiment while the others are experiments with limited control. These findings suggest that MSR researchers overlook the limitations of their experiments, compromising the interpretation of their results.

IEEE TRANSACTIONS ON SOFTWARE ENGINEERING (2022)

Article Computer Science, Software Engineering

Improved Management of Issue Dependencies in Issue Trackers of Large Collaborative Projects

Mikko Raatikainen, Quim Motger, Clara Marie Luders, Xavier Franch, Lalli Myllyaho, Elina Kettunen, Jordi Marco, Juha Tiihonen, Mikko Halonen, Tomi Mannisto

Summary: Issue trackers like Jira are widely used in software engineering for managing issues, but they often overlook the dependencies between issues. This study aims to develop solutions for better management of dependent issues in an issue tracker. By following the Design Science methodology, the study identifies drawbacks, proposes a solution, and evaluates it in the context of The Qt Company's Jira.

IEEE TRANSACTIONS ON SOFTWARE ENGINEERING (2023)

Article Computer Science, Software Engineering

Web API evolution patterns: A usage-driven approach

Rediana Koci, Xavier Franch, Petar Jovanovic, Alberto Abello

Summary: This paper investigates the relationship between the evolution of Application Programming Interfaces (APIs) and consumers' needs, and introduces a process mining pattern-based method to support providers in the evolution of APIs by analyzing consumers' behavior recorded in API usage logs. The method proposes that the changes in API should primarily be driven by usage patterns observed from consumers. The effectiveness of the method is validated through its application on two real-world APIs from the education and health domains.

JOURNAL OF SYSTEMS AND SOFTWARE (2023)

Article Computer Science, Information Systems

The state-of-practice in requirements specification: an extended interview study at 12 companies

Xavier Franch, Cristina Palomares, Carme Quer, Panagiota Chatzipetrou, Tony Gorschek

Summary: This article discusses the core activity of requirements specification in the requirements engineering phase of software development projects. It examines the state of practice in requirements specification, including the use of tools, templates or guidelines, the structure of requirement documents, and the challenges faced by practitioners. The findings show that despite the proposals from academia for improving requirements specification, practitioners still rely mainly on natural language and general-purpose tool support.

REQUIREMENTS ENGINEERING (2023)

Proceedings Paper Computer Science, Information Systems

Integrating Adaptive Mechanisms into Mobile Applications Exploiting User Feedback

Quim Motger, Xavier Franch, Jordi Marco

Summary: Mobile applications have become essential in daily life, but users struggle to fully utilize their potential. The proposal suggests using chatbots for user interaction and integrating semi-automatic adaptation mechanisms to enhance user experience.

RESEARCH CHALLENGES IN INFORMATION SCIENCE (RCIS 2021) (2021)

Proceedings Paper Computer Science, Software Engineering

Applying Transfer Learning to Sentiment Analysis in Social Media

Ariadna de Arriba, Marc Oriol, Xavier Franch

Summary: This paper introduces a method of using sentiment analysis to automatically obtain user sentiment feedback and proposes research on improving sentiment analysis results through transfer learning. The impact of different machine learning models and transfer learning techniques on sentiment analysis results was studied through experiments.

29TH IEEE INTERNATIONAL REQUIREMENTS ENGINEERING CONFERENCE WORKSHOPS (REW 2021) (2021)

Proceedings Paper Computer Science, Software Engineering

Data-Driven Agile Requirements Elicitation through the Lenses of Situational Method Engineering

Xavier Franch, Aron Henriksson, Jolita Ralyte, Jelena Zdravkovic

Summary: The ubiquity of digitalization has resulted in a significant amount of digital data being generated continuously in organizations and society. This has led to a growing interest in considering digital data as new sources for requirements elicitation in the requirements engineering community. However, the volume, dynamics, and variety of data have made iterative requirements elicitation more continuous, unstructured, and complex, which current agile methods are unable to manage systematically and efficiently. Therefore, there is a need to support software evolution by enabling a synergy of stakeholder-driven requirements elicitation and management with data-driven approaches, through the extension of agile requirements elicitation using situational method engineering.

29TH IEEE INTERNATIONAL REQUIREMENTS ENGINEERING CONFERENCE (RE 2021) (2021)

Proceedings Paper Automation & Control Systems

Merging Datasets for Emotion Analysis

Ariadna de Arriba, Marc Oriol, Xavier Franch

Summary: The study aims to investigate whether merging compatible datasets improves emotion analysis using machine learning techniques, and the results indicate that combining datasets can enhance the performance of ML models, particularly when optimizing the balance of the resulting dataset.

2021 36TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING WORKSHOPS (ASEW 2021) (2021)

Article Computer Science, Information Systems

Why and how bug blocking relations are breakable: An empirical study on breakable blocking bugs

Hao Ren, Yanhui Li, Lin Chen, Yuming Zhou, Changhai Nie

Summary: This study aims to explore the breakable blocking bugs (BBBs) through quantitative and qualitative analysis. The analysis reveals that BBBs have higher levels of involvement, longer fix time, and more complex source code compared to other bugs. The study also identifies four reasons for breaking blocking relationships between bugs and three measures adopted by developers to break these relationships.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Vulnerability detection based on federated learning

Chunyong Zhang, Tianxiang Yu, Bin Liu, Yang Xin

Summary: This paper proposes a vulnerability detection framework based on federated learning (VDBFL), which combines code property graph, graph neural networks, and convolutional neural networks to detect vulnerability code. The experimental results show that this method outperforms other vulnerability detection methods.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Collaborative software design and modeling in virtual reality

Martin Stancek, Ivan Polasek, Tibor Zalabai, Juraj Vincur, Rodi Jolak, Michel Chaudron

Summary: The aim of this research is to support distributed software design activities in Virtual Reality (VR). Using design science research methodology, a tool for collaborative design in VR is designed and evaluated. The efficiency of collaboration and recall of design information when using VR software design environment compared to non-VR environment are evaluated. Furthermore, the perceptions and preferences of users are collected to explore the opportunities and challenges of using VR software design environment.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Improving domain-specific neural code generation with few-shot meta-learning

Zhen Yang, Jacky Wai Keung, Zeyu Sun, Yunfei Zhao, Ge Li, Zhi Jin, Shuo Liu, Yishu Li

Summary: This paper presents MetaCoder, a meta-learning code generation approach that efficiently extracts general-purpose knowledge from large-scale source languages and rapidly adapts to domain-specific scenarios.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Automated code-based test case reuse for software product line testing

Pilsu Jung, Seonah Lee, Uicheon Lee

Summary: This study proposes an automated code-based approach (ActSPL) for reusing SPL test cases by utilizing source code and test cases. The results show that ActSPL achieves high precision and recall, and significantly reduces the time required for testing a new product.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Understanding the implementation issues when using deep learning frameworks

Chao Liu, Runfeng Cai, Yiqun Zhou, Xin Chen, Haibo Hu, Meng Yan

Summary: This paper conducts an empirical study on the implementation issues of deep learning frameworks, focusing on relevant questions on Stack Overflow. The study identifies various implementation issues and constructs a taxonomy, revealing that data processing, model setting, model training, and model prediction are the most common categories. The paper also provides suggestions for future research and aims to help developers and researchers understand these issues better.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Genetic model-based success probability prediction of quantum software development projects

Muhammad Azeem Akbar, Arif Ali Khan, Mohammad Shameem, Mohammad Nadeem

Summary: This study identifies key variables in quantum software development (QSD) and develops a model for predicting the success probability of QSD projects. The results show that as the QSD process matures, project success probability significantly increases and costs are notably reduced. The developed prediction model can help practitioners focus on key areas for successful implementation of QSD projects.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Developer and End-User Perspectives on Addressing Human Aspects in Mobile eHealth Apps

Md. Shamsujjoha, John Grundy, Hourieh Khalajzadeh, Qinghua Lu, Li Li

Summary: This paper investigates the challenges and benefits of incorporating human aspects into eHealth app development and usage from the perspectives of developers and end-users. The study used a mixed-method approach and gathered data from online surveys and interviews. The findings suggest that addressing human aspects throughout the app development life-cycle is beneficial for more effective eHealth apps.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Understanding how early-stage researchers leverage socio-technical affordances for distributed research

Yuchao Jiang, Boualem Benatallah, Marcos Baez

Summary: This paper reports on interviews and surveys with early-stage researchers (ESRs) and explores the potential of online research communities in supporting ESRs to learn from diverse perspectives and experiences. The results reveal the limited adoption of research communities for learning and identify unmet needs in their design. Design implications for future socio-technical systems are provided to support the development of research skills.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Deep learning-based software bug classification

Jyoti Prakash Meher, Sourav Biswas, Rajib Mall

Summary: Accurate bug classification is important for speeding up bug triage, code inspection, and repair tasks. To improve classification, this study proposes a novel bug classification approach based on deep learning. The approach includes building a bug taxonomy with eight bug classes using keywords, annotating a large set of bug resolution reports, and utilizing attention-based classification techniques. Experimental results show that the proposed technique outperforms existing methods in terms of F1-Score by an average of 16.88% on the considered dataset.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Software Engineering for Systems-of-Systems and Software Ecosystems

Rodrigo Santos, Eleni Constantinou, Pablo Antonino, Jan Bosch

Summary: In the last decade, software engineering has faced challenges beyond technical aspects. The field now considers technological, organizational, and social aspects together in research and practice to handle complexity and provide solutions to the industry's demands. Systems-of-systems (SoS) and software ecosystems (SECO) have emerged as topics of interest, bringing together researchers and practitioners to understand how to manage and engineer software-intensive systems in modern, complex, distributed, dynamic, and open environments.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Article Computer Science, Information Systems

Stratified random sampling for neural network test input selection

Zhuo Wu, Zan Wang, Junjie Chen, Hanmo You, Ming Yan, Lanjun Wang

Summary: In this paper, a statistical method called Stratified random Sampling with Optimum Allocation (SSOA) is proposed to provide an unbiased estimation of model accuracy with the smallest estimation variance. The unlabeled test set is first divided into strata based on predictive confidences. Then, two stratum accuracy variance estimation methods are designed to allocate the given budget to each stratum based on the optimum allocation strategy. Multiple experiments are conducted to evaluate the effectiveness and stability of SSOA by comparing it with baseline methods.

INFORMATION AND SOFTWARE TECHNOLOGY (2024)

Review Computer Science, Information Systems

The consolidation of game software engineering: A systematic literature review of software engineering for industry-scale computer games

Jorge Chueca, Javier Veron, Jaime Font, Francisca Perez, Carlos Cetina

INFORMATION AND SOFTWARE TECHNOLOGY (2024)