Auflistung nach Autor:in "Egyed, Alexander"
1 - 10 von 11
Treffer pro Seite
Sortieroptionen
- KonferenzbeitragAnalysis and Propagation of Feature Revisions in Preprocessor-based Software Product Lines(Software Engineering 2024 (SE 2024), 2024) Michelon, Gabriela K.; Assunção, Wesley; Grünbacher, Paul; Egyed, Alexander
- KonferenzbeitragAutomated Process-Centric Quality Constraints Checking for Quality Assurance in Safety-critical Systems(Software Engineering 2022, 2022) Mayr-Dorn, Christoph; Vierhauser, Michael; Bichler, Stefan; Keplinger, Felix; Cleland-Huang, Jane; Egyed, Alexander; Mehofer, ThomasThis abstract summarizes the work published as an ICSE 2021 research track paper ''Supporting Quality Assurance with Automated Process-Centric Quality Constraints Checking'' available at https://doi.org/10.1109/ICSE43902.2021.00118 . We propose an approach that, on the one hand, assists in checking compliance with traceability requirements but, on the other hand, allows engineers to temporarily deviate from the prescribed software engineering process. Through the observation of developer activities in the form of changes to engineering artifacts in tools such as Jira or Jama, we build up a representation of the ongoing process progress. This tracking in the background does not force the software developer to work only on activities as defined in a process description. At the same time, it enables us to provide timely feedback to the developer on whether tasks fulfill all QA criteria. This approach lifts the burden off QA engineers in manually checking QA constraints, often a time-consuming, tedious, and error-prone task where feedback reaches developers usually very late. We evaluate our approach by applying it to two different case studies; one open source community system and a safety-critical system in the air-traffic control domain. Results from the analysis show that trace links are often corrected or completed after the fact and thus timely and automated constraint checking support has significant potential on reducing rework.
- ConferencePaperAutomated Reuse of Test Cases for Highly Configurable Software Systems(Software Engineering 2021, 2021) Fischer, Stefan; Michelon, Gabriela Karoline; Ramler, Rudolf Ramler; Linsbauer, Lukas; Egyed, AlexanderIn this work, we report about our research results initially published in the journal Empirical Software Engineering, volume 25, issue 6, pp. 5295–5332, November 2020, https://doi.org/10.1007/s10664-020-09884-x. We performed experiments on test reusability across configurations of highly configurable software systems. First, we used manually written tests for specific configurations of three configurable systems and investigated how changing configuration options affects these tests. Subsequently, we applied an approach developed for automated reuse, ECCO (Extraction and Composition for Clone-and-Own), to automatically generate tests for new configurations from the existing, manually written tests. The experiments showed that our generated tests had a higher or equal success rate compared to direct reuse and they generally achieved a higher code coverage. It can be concluded that automating the reuse of tests for configurable software can substantially reduce the effort for adapting existing tests and it supports a rigorous testing process.
- KonferenzbeitragDeveloping and Evolving a DSL-based Approach for Runtime Monitoring of Systems of Systems(Software Engineering and Software Management 2019, 2019) Rabiser, Rick; Thanhofer-Pilisch, Jürgen; Vierhauser, Michael; Grünbacher, Paul; Egyed, AlexanderThis is a summary of an article [Ra18] published in the Automated Software Engineering Journal in 2018 describing our experiences in developing and evolving a domain-specific language- based approach for runtime monitoring of systems of systems.
- KonferenzbeitragDo Developers Benefit from Recommendations when Repairing Inconsistent Design Models? a Controlled Experiment(Software Engineering 2024 (SE 2024), 2024) Marchezan, Luciano; Assunção, Wesley; Michelon, Gabriela; Egyed, Alexander
- KonferenzbeitragDo developers benefit from requirements traceability when evolving and maintaining a software system?(Software Engineering 2016, 2016) Mäder, Patrick; Egyed, AlexanderSoftware traceability is a required component of many software development processes. Advocates of requirements traceability cite advantages like easier program comprehension and support for software maintenance (i.e., software change). However, despite its growing popularity, there exists no published evaluation about the usefulness of requirements traceability. It is important, if not crucial, to investigate whether the use of requirements traceability can significantly support development tasks to eventually justify its costs. We thus conducted a controlled experiment with 71 subjects re-performing real maintenance tasks on two third-party development projects: half of the tasks with and the other half without traceability. Subjects sketched their task solutions on paper to focus on the their ability to solving the problems rather than their programming skills. Our findings show that subjects with traceability performed on average 24\% faster on a given task and created on average 50\% more correct solutions - suggesting that traceability not only saves effort but can profoundly improve software maintenance quality.
- KonferenzbeitragA DSL-based approach for event-based monitoring of systems of systems(Software Engineering 2016, 2016) Vierhauser, Michael; Rabiser, Rick; Grünbacher, Paul; Egyed, Alexander
- KonferenzbeitragEnhancing clone-and-own with systematic reuse for developing software variants(Software Engineering 2016, 2016) Fischer, Stefan; Linsbauer, Lukas; Lopez-Herrejon, Roberto E.; Egyed, Alexander
- KonferenzbeitragExperiences on Traceability and Consistency Checking across Engineering Tools in an Automation Solution Company(Software Engineering und Software Management 2018, 2018) Demuth, Andreas; Kretschmer, Roland; Tröls, Michael; Kanakis, Georgios; Maes, Davy; Egyed, AlexanderThe engineering of systems is unimaginable without software tools. Engineers use them to capture and analyze engineering problems; specify, implement, test, and maintain engineering solutions, and manage engineering processes. Yet, there is a gap between the capabilities of independently working engineers and the needs of a collaborative engineering team. The existing tool landscape emphasizes the former. Most engineering tools are single-user applications – often of excellent quality but limited in that they support the works of individual engineers and not that of a group of engineers. And herein lies one of the most fundamental problems of software and systems engineering. Engineers know well the engineering knowledge they capture but they often lack awareness of the many implications their work has on other engineers and/or other engineering domains. This is a problem because in today’s engineering projects, companies continuously have to adapt their systems to changing customer or market requirements. This requires a flexible, iterative development process in which different parts of the system under construction are built and updated concurrently. However, concurrent engineering is quite problematic in domains where different engineering domains and different engineering tools come together. In this paper, we discuss experiences with Van Hoecke Automation, a leading company in the areas of production automation and product processing, in maintaining the consistency between electrical models and the corresponding software controller when both are subject to continuous change. The paper discusses how we let engineers describe the relationships between electrical model and software code in form of links and consistency rules; and how through continuous consistency checking our approach then notified those engineers of the erroneous impact of changes in either electrical model or code.
- KonferenzbeitragA flexible operation-based infrastructure for collaborative model-driven engineering(Modellierung 2024, 2024) Herac, Edvin; Marchezan, Luciano; Assunção, Wesley; Haas, Rainer; Egyed, AlexanderCurrent engineering practices to create complex systems rely on highly interdisciplinary teams, potentially globally distributed, working with heterogeneous artifacts. For instance, in a robotics project, collaboration from multiple engineers across different domains such as mechanical, electronic, and software is required. However, achieving proper collaboration to correctly and efficiently develop complex systems is not a trivial activity. The artifacts developed in each domain, usually represented as models, use different structures (e.g., metamodels) and are managed in different tools, but somehow related to each other.