Autor*innen mit den meisten Dokumenten
Neueste Veröffentlichungen
- KonferenzbeitragComponent-based CEGAR - Building Software Verifiers from Off-the-Shelf Components(Software Engineering 2023, 2023) Beyer, Dirk; Haltermann, Jan; Lemberger, Thomas; Wehrheim, HeikeSoftware verification tools typically consist of tighly coupled components, thereby precluding the easy integration of off-the-shelf components. We propose to decompose software verification into independent subtasks, each task being implemented by an own component communicating with other components via clearly defined interfaces. We apply this idea of decomposition to one of the most frequently used techniques in software verification: CEGAR. Our decomposition, called component-based CEGAR (C-CEGAR), comprises three components: An abstract model explorer, a feasibility checker and a precision refiner. It allows employing conceptually different components for each task within one instance. Our evaluation shows that C-CEGAR has, compared to a monolithic CEGAR-implementation, a similar efficiency and that the precision in solving verification tasks even increases.
- KonferenzbeitragEditing Support for Software Languages: Implementation Practices in Language Server Protocols (Summary)(Software Engineering 2023, 2023) Barros, Djonathan; Peldszus, Sven; Assunção, Wesley K. G.; Berger, ThorstenWe present our paper published at the 25th International Conference on Model Driven Engineering Languages and Systems (MODELS) [Ba22a]. Effectively using software languages requires effective editing support. Modern IDEs, modeling tools, and code editors typically provide sophisticated support to create, comprehend, or modify instances of particular languages. Unfortunately, building such editing support is challenging. While the engineering of languages is well understood and supported by modern model-driven techniques, there is a lack of engineering principles and best practices for realizing their editing support. We study practices for implementing editing support in so-called language servers—implementations of the language server protocol (LSP). LSP is a recent de facto standard to realize editing support for languages, separated from the editing tools, enhancing the reusability and quality of the editing support. Witnessing the LSP’s popularity, we take this opportunity to analyze the implementations of 30 language servers. We identify concerns that developers need to take into account when developing editing support, and we synthesize implementation practices to address them, based on a systematic analysis of the servers’ source code. We hope that our results shed light on an important technology for software language engineering, that facilitates language-oriented programming and systems development, including model-driven engineering.
- KonferenzbeitragSoftware Engineering 2023 - kompletter Tagungsband(Software Engineering 2023, 2023)
- KonferenzbeitragSynthesizing of Process-Aware Digital Twin Cockpits from Event Logs(Software Engineering 2023, 2023) Bano, Dorina; Michael, Judith; Rumpe, Bernhard; Varga, Simon; Weske, MathiasIn this work, we summarize our article “Process-Aware Digital Twin Cockpit Synthesis from Event Logs” published in the Journal of Computer Languages (COLA). The engineering of digital twins and their user interfaces with explicated processes, namely process-aware digital twin cockpits (PADTCs), is challenging due to the complexity of the systems and the need for information from different disciplines within the engineering process. Therefore, we have investigated how to facilitate their engineering by using already existing data, namely event logs. We present a low-code development approach that reduces the amount of hand-written code needed to derive PADTCs using process mining techniques. We describe what models could be derived from event log data, which generative steps are needed for the engineering of PADTCs, and how process mining could be incorporated into the resulting application. A PADTC prototype is created based on the MIMIC III dataset, which simulates an automated hospital transportation system. Initially, our approach requires no hand-written code and empowers the domain expert to iteratively create PADTC prototypes.
- KonferenzbeitragPeer-Reviewing and Submission Dynamics Around Top Software-Engineering Venues: A Juniors’ Perspective(Software Engineering 2023, 2023) Alchokr, Rand; Krüger, Jacob; Shakeel, Yusra; Saake, Gunter; Leich, ThomasResearch is an intrinsically challenging process full of obstacles. However, these obstacles may be more dominant for a specific group of researchers (such as junior researchers) compared to others. It is the responsibility of the community to pay close attention to those groups that may be struggling for unfair reasons and provide necessary support. Junior researchers are of high importance to the scientific community, and are defined as young researchers who have recently started their research career[ Li19]. Despite their importance, juniors may face impediments when starting their career that hinder their activities and motivation. For instance, collaboration aspects and peer-reviewing models can play a role. Junior researchers without a high reputation (e.g., via their co-authors) may be negatively impacted by reputation biases, and thus could have even more problems with publishing and building their reputation independently. In our study, we investigate what challenges junior researchers perceive when submitting their work to software-engineering venues with a high reputation.
- Konferenzbeitrag5th Workshop on Avionics Systems and Software Engineering (AvioSE’23)(Software Engineering 2023, 2023) Annighoefer, Bjoern; Schweiger, Andreas; Poulaine, StéphaneSystems and software engineering in aerospace is subject to special challenges. For their resolution the AvioSE’23 workshop connects academia and industry with selected scientific presentations of high quality, motivating keynote talks, and an interactive panel discussion.
- Konferenzbeitrag20th Workshop on Automotive Software Engineering (ASE’23)(Software Engineering 2023, 2023) Kugele, Stefan; Grunske, LarsSoftware-based systems play an increasingly important role and enable most innovations in modern cars. This workshop will address various topics related to automotive software development. The participants will discuss appropriate methods, techniques, and tools needed to address the most current challenges for researchers and practitioners.
- KonferenzbeitragAnforderungsmanagement in Enterprise Systems-Projekten(Software Engineering 2023, 2023) Weiss, Christoph; Keckeis, Johannes
- KonferenzbeitragDeepHyperion: Exploring the Feature Space of Deep Learning-based Systems through Illumination Search(Software Engineering 2023, 2023) Zohdinasab, Tahereh; Riccio, Vincenzo; Gambi, Alessio; Tonella, PaoloWe report about recent research on satisfiability solving for variational domains, originally published in 2022 in the Empirical Software Engineering Journal (EMSE) within the special issue on configurable systems[ Yo22]. Incremental SAT solving is an extension of classic SAT solving that enables solving a set of related SAT problems by identifying and exploiting shared terms. However, using incremental solvers effectively is hard since performance is sensitive to the input order of subterms and results must be tracked manually. This paper translates the ordering problem to an encoding problem and automates the use of incremental solving. We introduce variational SAT solving, which differs from incremental solving by accepting all related problems as a single variational input and returning all results as a single variational output. Variational SAT solving automates the interaction with the incremental solver and enables a method to automatically optimize sharing in the input. We formalize a variational SAT algorithm, construct a prototype variational solver, and perform an empirical analysis on two real-world datasets that applied incremental solvers to software evolution scenarios. We show that the prototype solver scales better for these problems than four off-the-shelf incremental solvers while also automatically tracking individual results.
- KonferenzbeitragVariational Satisfiability Solving: Efficiently Solving Lots of Related SAT Problems - Summary(Software Engineering 2023, 2023) Young, Jeffrey M.; Bittner, Paul Maximilian; Walkingshaw, Eric; Thüm, ThomasWe report about recent research on satisfiability solving for variational domains, originally published in 2022 in the Empirical Software Engineering Journal (EMSE) within the special issue on configurable systems[ Yo22]. Incremental SAT solving is an extension of classic SAT solving that enables solving a set of related SAT problems by identifying and exploiting shared terms. However, using incremental solvers effectively is hard since performance is sensitive to the input order of subterms and results must be tracked manually. This paper translates the ordering problem to an encoding problem and automates the use of incremental solving. We introduce variational SAT solving, which differs from incremental solving by accepting all related problems as a single variational input and returning all results as a single variational output. Variational SAT solving automates the interaction with the incremental solver and enables a method to automatically optimize sharing in the input. We formalize a variational SAT algorithm, construct a prototype variational solver, and perform an empirical analysis on two real-world datasets that applied incremental solvers to software evolution scenarios. We show that the prototype solver scales better for these problems than four off-the-shelf incremental solvers while also automatically tracking individual results.