Auflistung nach Autor:in "Kehrer, Timo"
1 - 10 von 33
Treffer pro Seite
Sortieroptionen
- ZeitschriftenartikelAssessing the Quality of Model Differencing Engines(Softwaretechnik-Trends: Vol. 32, No. 4, 2012) Pietsch, Pit; Yazdi, Hamed; Kelter, Udo; Kehrer, TimoPit Pietsch, Hamed Shariat Yazdi, Udo Kelter, Timo Kehrer
- TextdokumentBerechnung und Propagation von Modelländerungen auf der Basis von Editieroperationen(Ausgezeichnete Informatikdissertationen 2015, 2015) Kehrer, TimoModellbasierte Softwareentwicklung hat sich in verschiedensten Applikationsdomänen fest etabliert. Größtenteils visuelle Modelle wie bspw. diverse Varianten verschiedener Modelltypen der UML werden hierbei zum integralen Bestandteil aller Phasen modellbasierter Entwicklungsprozesse. Modelle unterliegen somit kontinuierlichen Änderungen und existieren im Laufe ihrer Evolution in zahlreichen Versionen und Varianten. In der Praxis zeigt sich sehr deutlich, dass die gleichen grundlegenden Werkzeugfunktionen für das Versionsmanagement von Modellen benötigt werden, die man von klassischen Repository-Systemen für textuelle Dokumente gewohnt ist. Qualitativ hochwertige und für ein breites Spektrum unterschiedlicher Modelltypen einsetzbare Differenz-, Patchund Mischwerkzeuge sind jedoch nicht verfügbar. Einen umfassenden und generischen Lösungsansatz beschreibt die hier zusammengefasste Dissertation. Diverse Zusammenarbeiten mit anderen Wissenschaftlern und der Industrie zeigen das große Interesse an der Arbeit und belegen ferner die breite Anwendbarkeit der entwickelten Konzepte und Techniken.
- KonferenzbeitragClassifying Edits to Variability in Source Code - Summary(Software Engineering 2023, 2023) Bittner, Paul Maximilian; Tinnes, Christof; Schultheiß, Alexander; Viegener, Sören; Kehrer, Timo; Thüm, ThomasWe report about recent research on edit classification in configurable software, originally published at the 30th Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) 2022 [Bi22]. For highly configurable software systems, such as the Linux kernel, maintaining and evolving variability information along changes to source code poses a major challenge. While source code itself may be edited, also feature-to-code mappings may be introduced, removed, or changed. In practice, such edits are often conducted ad-hoc and without proper documentation. To support the maintenance and evolution of variability, it is desirable to understand the impact of each edit on the variability. We propose the first complete and unambiguous classification of edits to variability in source code by means of a catalog of edit classes. This catalog is based on a scheme that can be used to build classifications that are complete and unambiguous by construction. To this end, we introduce a complete and sound model for edits to variability. In about 21.5 ms per commit, we validate the correctness, relevance, and suitability of our classification by classifying each edit in 1.7 million commits in the change histories of 44 open-source software systems automatically.
- KonferenzbeitragContrasting Dedicated Model Transformation Languages vs. General Purpose Languages: A Historical Perspective on ATL vs. Java based on Complexity and Size - Extended Abstract(Software Engineering 2022, 2022) Höppner, Stefan; Kehrer, Timo; Tichy, MatthiasModel transformations are one key concept of model-driven engineering, and model transformation languages (MTLs) emerged with its popularity about 15 to 20 years ago. MTLs claim to ease model transformation development by abstracting from recurring transformation aspects and hiding complex semantics behind simple and intuitive syntax. Nonetheless, MTLs are rarely adopted in practice, there is still no empirical evidence for the claim of easier development, and the argument of abstraction deserves a fresh look in the light of modern general-purpose languages (GPLs) which have undergone a significant evolution in the last two decades. In our SoSyM paper, we report on a study in which we compare the complexity and size of model transformations written in three different languages, namely (i) the Atlas Transformation Language (ATL), (ii) Java SE5 (2004-2009), and (iii) Java SE14 (2020); the Java transformations are derived from an ATL specification using a translation schema we developed. Based on the results of these comparisons, we discuss the concrete advancements in newer Java versions. We also discuss to which extent new language advancements justify writing transformations in a GPL rather than a dedicated MTL. We further indicate potential avenues for future research on the comparison of MTLs and GPLs.
- ZeitschriftenartikelCVSM 2013 Challenge: Recognizing High-level Edit Operations in Evolving Models(Softwaretechnik-Trends: Vol. 33, No. 2, 2013) Kehrer, Timo; Gerth, ChristianTimo Kehrer Software Engineering Group University of Siegen kehrer@informatik.uni-siegen.de Abstract
- ZeitschriftenartikelDetection of High-Level Changes in Evolving Java Software(Softwaretechnik-Trends: Vol. 33, No. 2, 2013) Kehrer, Timo; Pietsch, Kehrer; Shariat Yazdi, Hamed; Kelter, UdoTimo Kehrer, Pit Pietsch, Hamed Shariat Yazdi, Udo Kelter Praktische Informatik Universit¨ at Siegen {kehrer,pietsch,shariatyazdi,kelter}@informatik.uni-siegen.de Abstract
- KonferenzbeitragExperiences with Using a Pre-Trained Programming Language Model for Reverse Engineering Sequence Diagrams(Softwaretechnik-Trends Band 43, Heft 2, 2023) Greiner, Sandra; Maier, Nicolas; Kehrer, TimoReverse engineering software models from program source code has been extensively studied for decades. Still, most model-driven reverse engineering approaches cover only single programming languages and cannot be transferred to others easily. Large pre-trained AI transformer models which were trained on several programming languages promise to translate source code from one language into another (e.g., Java to Python). Thus, we fine-tuned such a pre-trained model (CodeT5) to extract sequence diagrams from Java code and examined whether it can perform the same task for Python without additional training.
- ZeitschriftenartikelExtensible Debuggers for Extensible Languages(Softwaretechnik-Trends: Vol. 33, No. 2, 2013) Pavletic, Domenik; Raza, Syed Aoun; Voelter, Markus; Kolb, Bernd; Kehrer, TimoDomenik Pavletic1 , Syed Aoun Raza1 , Markus Voelter2 , Bernd Kolb1 , and Timo Kehrer3 itemis AG, {pavletic,raza,kolb}@itemis.de independent/itemis AG, voelter@acm.org 3 University of Siegen, Germany kehrer@informatik.uni-siegen.de
- KonferenzbeitragFeature Trace Recording - Summary(Software Engineering 2022, 2022) Bittner, Paul Maximilian; Schultheiß, Alexander; Thüm, Thomas; Kehrer, Timo; Young, Jeffrey M.; Linsbauer, LukasIn this work, we report about recent research on Feature Trace Recording, originally published at the Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) 2021. Tracing requirements to their implementation is crucial to all stakeholders of a software development process. When managing software variability, requirements are typically expressed in terms of features, a feature being a user-visible characteristic of the software. While feature traces are fully documented in software product lines, ad-hoc branching and forking, known as clone-and-own, is still the dominant way for developing multi-variant software systems in practice. Retroactive migration to product lines suffers from uncertainties and high effort because knowledge of feature traces must be recovered but is scattered across teams or even lost. We propose a semi-automated methodology for recording feature traces proactively, during software development when the necessary knowledge is present. To support the ongoing development of previously unmanaged clone-and-own projects, we explicitly deal with the absence of domain knowledge for both existing and new source code. We evaluate feature trace recording by replaying code edit patterns from the history of two real-world product lines. Our results show that feature trace recording reduces the manual effort to specify traces.
- KonferenzbeitragA Formal Framework for Incremental Model Slicing(Software Engineering and Software Management 2019, 2019) Taentzer, Gabriele; Kehrer, Timo; Pietsch, Christopher; Kelter, UdoWe report about a recently developed “Formal Framework for Incremental Model Slicing”, published in [Ta18]. A model slice of a model is a submodel comprising a selected model part, called slicing criterion. In addition to classical use cases from the field of program understanding, model slicing is also motivated by specifying submodels of interest to be further processed more efficiently. Since slicing criteria are often modified during software development tasks, such slices often need to be updated. A slice update can be performed by creating the new slice from scratch or by incrementally updating the existing slice. We present a formal framework for defining model slicers that support incremental slice updates. This framework abstracts from the behavior of concrete slicers as well as from the concrete model modification approach. Incremental slice updates are shown to be equivalent to non-incremental ones. Furthermore, we present a framework instantiation based on the concept of edit scripts defining application sequences of model transformation rules, along with two two concrete model slicers implemented based on this instantiation.