Matthias Riebisch

dblp:20/2574 · DBLP profile ↗
← Back
21ranked-venue papers
0as first author
6since 2021 · last 2022
0000-0001-9956-5949ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 18 · 5 since 2021Applied, interdisciplinary, general and emerging computing · 2 · 1 since 2021Artificial intelligence and machine learning · 1Systems, architecture and hardware · 1 · 1 since 2021Security and privacy · 1Databases, data management, data science and information retrieval · 1
YearPublicationVenuePosition
2022 Industry Voices on Software Engineering Challenges in Cyber-Physical Production Systems Engineering
abstract
Cyber-Physical Production Systems (CPPSs) are envisioned as next-generation adaptive production systems combining modern production techniques with the latest information technology. A CPPS creates a complex environment between different domains (mechanical, electrical, software engineering), requiring multidisciplinary solutions to tackle growing complexity issues and reduce (maintenance) effort. Software plays an increasingly important role in assuring an effective and efficient operation of CPPSs. However, software engineering methods applied for CPPSs seem to lag behind modern software engineering methods, where tremendous progress has been made in the last years. We initiated the Software Engineering in Cyber-Physical Production Systems Workshop (SECPPS-WS) to analyze and overcome this gap. After two instances with mostly academic participants, we conducted a full-day workshop with nine industry representatives from eight companies that develop and maintain CPPSs. Each industry representative presented their current work and challenges. We collected these challenges and condensed a categorized list of challenges backed by industry statements and literature. This paper presents the resulting list and pointers to (partial) solutions to offer guidance for academia and identify promising research opportunities in this area.
Kevin Feichtinger, Kristof Meixner, Felix Rinker, István Koren, Holger Eichelberger, Tonja Heinemann, Jörg Holtmann, Marco Konersmann, Judith Michael, Eva-Maria Neumann, Jérôme Pfeiffer, Rick Rabiser, Matthias Riebisch, Klaus Schmid
ETFA13
2022 API Deprecation: A Systematic Mapping Study
abstract
Application Programming Interfaces (APIs) are the prevalent interaction method for software modules, components, and systems. As systems and APIs evolve, an API element may be marked as deprecated, indicating that its use is disapproved or that the feature will be removed in an upcoming version. Consequently, deprecation is a means of communication between developers and, ideally, complemented by further documentation, including suggestions for the developers of the API’s clients.API deprecation is a relatively young research area that recently gained traction among researchers. To identify the current state of research as well as to identify open research areas, a meta-study that assesses scientific studies is necessary. Therefore, this paper presents a systematic mapping study on API deprecation to classify the state of the art and identify gaps in the research field. We identified and mapped 36 primary studies into a classification scheme comprising general and API-specific categories.We identified five major gaps in previous research on API deprecation as opportunities for future studies: studying remote APIs, investigating a broader range of static APIs, joining suppliers’ and clients’ views, including humans in studies, and avoiding deprecation.
Leif Bonorden, Matthias Riebisch
SEAA2
2022 An architecture smell knowledge base for managing architecture technical debt
abstract
Many software projects suffer from architecture erosion and architecture technical debt. One challenge is to identify affected parts and prioritize them for refactoring. Architecture smells are indicators of potential architecture technical debt, but architecture smells are ambiguous and their impact is not always clear. To address this, we have built a knowledge base that improves understanding of architecture smells and identifies violated software design principles and affected quality attributes. The design principles help our understanding of what causes architecture smells, while the impaired quality attributes represent the consequences. We conducted a systematic literature review to identify these relations and built an architecture smell ontology. This ontology provides a knowledge base that architects can use to prioritize the smells according to the project's individual quality goals.
Paula Rachow, Matthias Riebisch
TechDebt@ICSE2
2022 Preventing technical debt with the TAP framework for Technical Debt Aware Management
abstract
Technical Debt (TD) is a metaphor for technical problems that are not visible to users and customers but hinder developers in their work, making future changes more difficult. TD is often incurred due to tight project deadlines and can make future changes more costly or impossible. Project Management usually focuses on customer benefits and pays less attention to their IT systems’ internal quality. TD prevention should be preferred over TD repayment because subsequent refactoring and re-engineering are expensive. This paper evaluates a framework focusing on both TD prevention and TD repayment in the context of agile-managed projects. The framework was developed and applied in an IT unit of a publishing house. The unique contribution of this framework is the integration of TD management into project management. The evaluation was performed as a comparative case study based on ticket statistics and two structured surveys. The surveys were conducted in the observed IT unit using the framework and a comparison unit not using the framework. The first survey targeted team members, the second one IT managers. The evaluation shows that in this IT unit the TAP framework led to a raised awareness for the incurrence of TD. Decisions to incur TD are intentional, and TD is repaid timelier. Unintentional TD incurred by unconscious decisions is prevented. Furthermore, better communication and better planning of the project pipeline can be observed. We provide an insight into practitioners’ ways to identify, monitor, prevent and repay TD. The presented framework includes a feasible method for TD prevention despite tight timelines by making TD repayment part of project management.
Marion Wiese, Paula Rachow, Matthias Riebisch, Julian Schwarze
Inf. Softw. Technol.3
2021 Exploring Web Search Engines to Find Architectural Knowledge
abstract
Software engineers need relevant and up-to-date architectural knowledge (AK), in order to make well-founded design decisions. However, finding such AK is quite challenging. One pragmatic approach is to search for AK on the web using traditional search engines (e.g. Google); this is common practice among software engineers. Still, we know very little about what AK is retrieved, from where, and how useful it is. In this paper, we conduct an empirical study with 53 software engineers, who used Google to make design decisions using the Attribute-Driven-Design method. Based on how the subjects assessed the nature and relevance of the retrieved results, we determined how effective web search engines are to find relevant architectural information. Moreover, we identified the different sources of AK on the web and their associated AK concepts.
Mohamed Soliman 0001, Marion Wiese, Matthias Riebisch, Paris Avgeriou
ICSA4
2021 Preventing Technical Debt by Technical Debt Aware Project Management
abstract
Technical Debts (TD) are problems of the internal software quality. They are often contracted due to tight project deadlines, for example quick fixes and workarounds, and can make future changes more costly or impossible. TD prevention should be more important than TD repayment, because subsequent refactoring and reengineering is usually more expensive than building the right solution from the beginning. While there are numerous works on TD repayment, solutions for TD prevention are understudied. This paper evaluates a framework that focuses on both TD prevention and TD repayment. It was developed by and applied in an IT unit of a publishing house. The unique contribution of this framework is the integration of TD management into project management. The evaluation was carried out by a study based on ticket statistics and a structured survey with participants from the observed IT unit and a comparison unit. The evaluation shows that the adoption of this framework leads to a raised awareness for the contraction of TD. This results in benefits like more rational discussions and decisions, TD prevention and timelier repayment of TD tickets.
Marion Wiese, Matthias Riebisch, Julian Schwarze
TechDebt@ICSE2
2019 Message from the General Chair and PC Chairs of ICSA 2019
Paris Avgeriou, Matthias Riebisch, Uwe Zdun
ICSA2
2019 A porting method for coordinated multiplatform evolution
abstract
Abstract Cross‐platform development nowadays is a key issue in software engineering, since software developers have to target multiple platforms in order to reach a larger number of users. Often, software is developed initially for one platform before being extended to multiplatform development. However, most of the existing technical support and methods for cross‐platform development are applicable only to projects that develop a software product from scratch. They do not address the frequent situation that an existing mature software shall be ported rather than being reimplemented for an additional platform. In this article, we present a flexible transformation method from single to multiplatform development that systematically leverages existing and novel tools. For facilitating coordinated evolution of the original and the target platform code, we establish traceability across the two versions and develop a common architecture across both the original and target platform implementations. As an economic advantage, the method allows to keep the original mature application and reduces maintenance redundancies compared with reimplementation. As a validation, the approach has been applied to port two mobile apps and a Java library to new platforms resulting in high portions of commonly used convertible code, structural equivalences across the original and target platform implementation and traceability between them.
Tilmann Stehle, Matthias Riebisch
J. Softw. Evol. Process.2
2018 Back to the Drawing Board - Bringing Security Constraints in an Architecture-centric Software Development Process
abstract
Today, security is still poorly considered in early phases of software engineering. Architects and software engineers still lack knowledge about architectural security design as well as implementing it compliantly. However, a software system that is not designed for security or does not adhere to this design can hardly meet its security requirements. In this paper, we present an approach we are working on. The approach consists of two parts: Firstly, we improve the architecture’s security level through model transformation. Secondly, we derive rules and constraints from the secured architecture in order to check the implementation’s conformance. Through these activities we aim to support architects and software developers in building a secure software system. We plan to evaluate our approach in industrial case studies.
Stefanie Jasser, Katja Tuma, Riccardo Scandariato, Matthias Riebisch
ICISSP4
2018 Improving the Search for Architecture Knowledge in Online Developer Communities
abstract
To make good architecture design decisions, developers need to know suitable architecture solution alternatives. However, with the rapid and continuous increase of solution alternatives (e.g. technologies, patterns, tactics), it is challenging to acquire architecture knowledge and to ensure that this knowledge is up to date. Our goal is to improve how architects search for architecturally relevant information in online developer communities. We developed a new search approach for architecturally relevant information using Stack Overflow as an example of an online developer community. Our search approach differs from a conventional keyword-based search in that it considers semantic information of architecturally relevant concepts in Stack Overflow. We also implemented the search approach as a web-based search engine. To show the effectiveness of the search approach compared to a conventional keyword-based search, we conducted an experiment with 16 practitioners. To ensure realism of the experiment, tasks given to practitioners are based on real scenarios identified in interviews with a different set of practitioners. The experiment showed that the new search approach outperforms a conventional keyword based search.
Mohamed Soliman 0001, Amr Rekaby Salama, Matthias Galster, Olaf Zimmermann, Matthias Riebisch
ICSA5
2018 Architecture enforcement concerns and activities - An expert study
Sandra Schröder, Mohamed Soliman 0001, Matthias Riebisch
J. Syst. Softw.3
2017 Developing an Ontology for Architecture Knowledge from Developer Communities
abstract
Software architecting is a knowledge-intensive activity. However, obtaining and evaluating the quality of relevant and reusable knowledge (and ensuring that this knowledge is up-to-date) requires significant effort. In this paper, we explore how online developer communities (e.g., Stack Overflow), traditionally used by developers to solve coding problems, can help solve architectural problems. We develop an ontology that covers architectural knowledge concepts in Stack Overflow. The ontology provides a description of architecture-relevant information to represent and structure architectural knowledge in Stack Overflow. The ontology is empirically grounded through qualitative analyses of different Stack Overflow posts, as well as inter-coder reliability tests. Our results show that the architecture knowledge ontology in Stack Overflow captures architecture-relevant information and supports achieving practitioners' requirements and concerns.
Mohamed Soliman 0001, Matthias Galster, Matthias Riebisch
ICSA3
2016 Architecture Enforcement Concerns and Activities - An Expert Study
Sandra Schröder, Matthias Riebisch, Mohamed Soliman 0001
ECSA2
2016 Architectural Knowledge for Technology Decisions in Developer Communities: An Exploratory Study with StackOverflow
abstract
Architectural decisions have a big influence on basic properties of a software system, and are difficult to change once implemented. Technology decisions deserve special attention because they are one of the most frequently occurring types of architectural decisions. Architectural knowledge is crucial for good decisions. Current architecture knowledge management approaches try to support architects by offering a rich base of architectural solutions and design decision rules. However, they mostly depend on manually capturing and maintaining the architectural knowledge. In this paper, we utilize the most popular online software development community (StackOverflow) as a source of knowledge for technology decisions to support architecture knowledge management approaches with a more efficient methods for knowledge capturing. We conducted an exploratory study, and followed a qualitative and quantitative content analysis approach. We analysed the posts in this community to identify architecture-relevant and technology-related knowledge, and to classify the posts into different types for the purpose of knowledge structuring. In addition, we evaluated our findings through feedback from practitioners.
Mohamed Soliman 0001, Matthias Galster, Amr Rekaby Salama, Matthias Riebisch
WICSA4
2015 Evaluation across multiple views for variable automation systems
abstract
Automation systems in industry are often software-intensive systems consisting of software and hardware components. During their development several engineers of different disciplines are involved, such as mechanical, electrical and software engineering. Each engineer focuses on specific system aspects to be developed. To enable an efficient development, product lines especially with feature models for variability modeling are promising technologies. In order to reduce the complexity of both feature models and development process, views on feature models can be applied. The use of views for filtering purposes constitutes an established method. However, views also enable further options missing in current approaches, such as evaluations regarding requirements, including non-functional ones. This paper presents an approach for evaluation across multiple views to enable collaborative development for developers who focus on different system aspects. We validate our approach by applying it in an industrial project for the planning of flying saws.
Lothar Hotz, Matthias Riebisch, Olaf Götz, Josef Lackhove
SPLC3
2015 Enriching Architecture Knowledge with Technology Design Decisions
abstract
Decision-making is at the core of software architecture design. However, in order for the architect to take the right design decisions, assistance is required for exploring the architectural knowledge, which encompasses the various architectural solutions, their relationships and distinctions. In the past decades, the number of available technology options has increased significantly, while existing architecture knowledge approaches support technology decisions by representing relations between the different technology solutions, as well as design problems. However, they do not differentiate the candidate technologies according to their offered qualities and drawbacks. Our main goal in this exploratory study is to understand how technology solutions are being considered by the architects during the design process, and how can we enhance existing architecture knowledge concepts to support technology decision making. Our contribution in this paper is differentiating the different technology solutions' features based on a set of architecturally significant aspects, to facilitate considering technologies during the architecture design decisions. In addition, we proposed an extension for existing architecture knowledge models, which characterise the technology design decisions, and their reasoning. We evaluated our results through real examples from practitioners. Moreover, we conducted interviews with experts to validate our proposed concepts.
Mohamed Soliman 0001, Matthias Riebisch, Uwe Zdun
WICSA2
2014 Combining Architectural Design Decisions and Legacy System Evolution
Sebastian Gerdes, Steffen Lehnert, Matthias Riebisch
ECSA3
2014 Modeling the Interactions between Decisions within Software Architecture Knowledge
Mohamed Soliman 0001, Matthias Riebisch
ECSA2
2010 Impact Evaluation for Quality-Oriented Architectural Decisions regarding Evolvability
Stephan Bode, Matthias Riebisch
ECSA2
2007 Classifying architectural constraints as a basis for software quality assessment
Simon Giesecke, Wilhelm Hasselbring, Matthias Riebisch
Adv. Eng. Informatics3
2005 An approach for reverse engineering of design patterns
Ilka Philippow, Detlef Streitferdt, Matthias Riebisch, Sebastian Naumann
Softw. Syst. Model.3