Auflistung nach Autor:in "Berger, Thorsten"
1 - 10 von 18
Treffer pro Seite
Sortieroptionen
- KonferenzbeitragBehavior Trees and State Machines in Robotics Applications(Software Engineering 2024 (SE 2024), 2024) Ghzouli, Razan; Berger, Thorsten; Broch Johnsen, Einar; Wasowski, Andrzej; Dragule, Swaib
- KonferenzbeitragEine dienste- und komponentenbasierte Architektur zur elektronischen Durchführung von Prüfungen und zum Management von Lehrveranstaltungen(INFORMATIK 2006 – Informatik für Menschen, Band 1, 2006) Berger, Thorsten; Wollersheim, Heinz-WernerDie Erziehungswissenschaftliche Fakultät setzt erfolgreich eTesting zur Abwicklung von Klausuren unter Examensbedingungen und eine Portalapplikation zur Verwaltung von Lehrveranstaltungen ein. Der Artikel stellt die entwickelten Systeme vor. Nach einer kurzen Darstellung der Ausgangssituation werden vor allem Anforderungen und die Gesamtarchitektur des Systems skizziert. Der letzte Teil gibt eine Auswertung der Erfahrungen beim Einsatz von eTesting wieder.
- 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.
- KonferenzbeitragEffects of Explicit Feature Traceability on Program Comprehension(Software Engineering 2020, 2020) Krüger, Jacob; Çalıklı, Gül; Berger, Thorsten; Leich, Thomas; Saake, GunterThis abstract is based on our paper with the homonymous title published at the Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) 2019.
- KonferenzbeitragEfficiency of Projectional Editing(Software Engineering und Software Management 2018, 2018) Berger, Thorsten; Voelter, Markus; Jensen, Hans Peter; Dangprasert, Taweesap; Siegmund, JanetPublished at International Symposium on the Foundations of Software Engineering (FSE) 2016. Projectional editors are editors where a user's editing actions directly change the abstract syntax tree without using a parser. They promise essentially unrestricted language composition as well as flexible notations, which supports aligning languages with their respective domain and constitutes an essential ingredient of model-driven development. Such editors have existed since the 1980s and gained widespread attention with the Intentional Programming paradigm, which used projectional editing at its core. However, despite the benefits, programming still mainly relies on editing textual code, where projectional editors imply a very different --typically perceived as worse --editing experience, often seen as the main challenge prohibiting their widespread adoption. We present an experiment of code-editing activities in a projectional editor, conducted with 19 graduate computer-science students and industrial developers. We investigate the effects of projectional editing on editing efficiency, editing strategies, and error rates --each of which we also compare to conventional, parser-based editing. We observe that editing is efficient for basic-editing tasks, but that editing strategies and typical errors differ. More complex tasks require substantial experience and a better understanding of the abstract-syntax-tree structure—then, projectional editing is also efficient. We also witness a tradeoff between fewer typing mistakes and an increased complexity of code editing.
- ConferencePaperAn Empirical Analysis of the Costs of Clone- and Platform-Oriented Software Reuse(Software Engineering 2021, 2021) Krüger, Jacob; Berger, ThorstenIn this extended abstract, we summarize our paper with the homonymous title published at the Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE) 2020.
- KonferenzbeitragFeatRacer: Locating Features Through Assisted Traceability (Summary)(Software Engineering 2024 (SE 2024), 2024) Mukelabai, Mukelabai; Hermann, Kevin; Berger, Thorsten; Steghöfer, Jan-Philipp
- KonferenzbeitragIntention-Based Integration of Software Variants(Software Engineering 2020, 2020) Lillack, Max; Stanciulescu, Stefan; Hedman, Wilhelm; Berger, Thorsten; Wasowski, AndrzejCloning is a simple way to create new variants of a system. While cheap at first, it increases maintenance cost in the long term. Eventually, the cloned variants need to be integrated into a configurable platform. Such an integration is challenging: it involves merging the usual code improvements between the variants, and also integrating the variable code (features) into the platform. As such, variant integration differs from traditional software merging, which does not produce or organize configurable code, but creates a single system that cannot be configured into variants. In practice, variant integration requires fine-grained code edits, performed in an exploratory manner, in multiple iterations. Unfortunately, little tool support exists for integrating cloned variants. In this work, we show that fine-grained code edits needed for integration can be alleviated by a small set of integration intentions—domain-specific actions declared over code snippets controlling the integration. Developers can interactively explore the integration space by declaring (or revoking) intentions on code elements. We contribute the intentions (e.g., 'keep functionality' or 'keep as a configurable feature') and the IDE tool INCLINE, which implements the intentions and five editable views that visualize the integration process and allow declaring intentions producing a configurable integrated platform. In a series of experiments, we evaluated the completeness of the proposed intentions, the correctness and performance of INCLINE, and the benefits of using intentions for variant integration. The experiments show that INCLINE can handle complex integration tasks, that views help to navigate the code, and that it consistently reduces mistakes made by developers during variant integration.
- KonferenzbeitragModel Transformation Languages under a Magnifying Glass: A Controlled Experiment with Xtend, ATL, and QVT(Software Engineering and Software Management 2019, 2019) Hebig, Regina; Seidl, Christoph; Berger, Thorsten; Pedersen, John Kook; Wasowski, AndrzejIn Model-Driven Software Development, models are processed automatically to support the creation, build, and execution of systems. A large variety of dedicated model-transformation languages exists, promising to efficiently realize the automated processing of models. To investigate the actual benefit of using such specialized languages, we performed a large-scale controlled experiment in which 78 subjects solved 231 individual tasks using three languages. The experiment sheds light on commonalities and differences between model transformation languages (ATL, QVT-O) and on benefits of using them in common development tasks (comprehension, change, and creation) against a modern general-purpose language (Xtend). The results of our experiment show no statistically significant benefit of using a dedicated transformation language over a modern general-purpose language. However, we were able to identify several aspects of transformation programming where domain-specific transformation languages do appear to help, including copying objects, context identification, and conditioning the computation on types.
- KonferenzbeitragPersönliche semantische Strukturierung und Annotierung von Lernmaterialien(Workshop Proceedings der Tagungen Mensch & Computer 2008, DeLFI 2008 und Cognitive Design 2008, 2008) Riechert, Thomas; Berger, ThorstenZur Verbesserung von Lernerfolgen kommt dem Personal Knowledge Management im Rahmen von E-Learning-Szenarien eine steigende Bedeutung zu. Während derzeit größtenteils Lernmaterialien bereitgestellt werden, die von Lehrenden mit Metainformationen annotiert und strukturiert worden sind, stellt ein häufiges Problem die nutzerzentrierte, kollaborative und semantische Strukturierung der Materialien dar. In diesem Kontext skizziert der Beitrag einen leichtgewichtigen und auf semantischen Wikis basierenden Ansatz, präsentiert die prototypische Implementierung, beschreibt den Anwendungsfall und gibt einen Ausblick auf die weitere Entwicklung.