SearcharxivSearch

arXiv subjects

Iris Groher

Publications and source records attributed to Iris Groher.

8 recordsLinked to original sources

Extending Decision Maps for Sustainable Safety and Security in Self-Adaptive Systems

Sustainability refers to a system's ability to maintain its functionality and endure over time. Hence, sustainability is a highly desirable property of software systems, including Self-Adaptive Systems (SASs). SASs can change (adapt) their behavior at runtime to continue achieving their objectives despite external or internal impacts. SASs' intended long-term system behavior can be expressed through a sustainability-driven visual modeling notation called Decision Maps (DMs). Although DMs have been proven helpful, they lack adequate modeling support for safety and security concerns. We address this limitation by extending the current notation for sustainability-driven modeling of SASs to better accommodate the unique characteristics of safety and security scenarios. First, we introduce an additional modeling dimension to account for safety incidents. Second, we adopt a fine-grained divide-and-conquer approach, modeling from distinct temporal security viewpoints ("security modes") to address security. We employ the extended DM notation in a real-world use case scenario provided by our industry partner to assess its feasibility and suitability for practitioners. Our results indicate that our modeling notation helps capture security and safety scenarios more accurately and provides holistic support for the self-adaptation life cycle phases.

cs.SE

On the JI-RADAR: Uncovering Sustainability Tool Support for Requirements Engineering

Context: Software-intensive systems are integral to nearly all facets of modern society [1]. Consequently, both their sustainability and their role in facilitating sustainable processes must be established by design [2], [3]. Software sustainability is defined as "the preservation of the long-term and beneficial use of software, and its appropriate evolution, in a context that continuously changes" [2]. RE Problem & Motivation: Regulatory initiatives increasingly require (software) organizations to integrate sustainability into their day-to-day business and operational processes. The United Nations 2030 Agenda formulated 17 Sustainable Development Goals (SDGs) [6], while the EU passed the Corporate Sustainability Reporting Directive (CSRD), which requires companies to publish and audit sustainability-related information [7]. Regulations and laws require organizations in the software development sector to disclose both qualitative and quantitative sustainability metrics, among other obligations [1]. Consequently, integrating sustainability reporting processes into the software development life cycle becomes increasingly important. RE processes often lack systematic methods to elicit, analyze, and prioritize sustainability requirements alongside functional and non-functional requirements, and studies indicate that tool support for this integration remains limited [4]. To address this gap, we introduce JI-RADAR, which supports stakeholders involved in system design (e.g., developers, requirements engineers, project managers, and usability engineers) [5] by providing practical tools to integrate sustainability into the RE process. We extend the widely used Atlassian Jira platform [8] by implementing a ready-to-use plugin that can be directly adopted in industrial practice.

cs.SE

Design and Deployment of a Course-Aware AI Tutor in an Introductory Programming Course

Large Language Models (LLMs) have become part of how students solve programming tasks, offering immediate explanations and even full solutions. Previous work has highlighted that novice programmers often heavily rely on LLMs, thereby neglecting their own problem-solving skills. To address this challenge, we designed a course-specific online Python tutor that provides retrieval-augmented, course-aligned guidance without generating complete solutions. The tutor integrates a web-based programming environment with a conversational agent that offers hints, Socratic questions, and explanations grounded in course materials. Students used the system during self-study to work on homework assignments, and the tutor also supported questions about the broader course material. We collected structured student feedback and analyzed interaction logs to investigate how they engaged with the tutor's guidance. We observed that students used the tutor primarily for conceptual understanding, implementation guidance, and debugging, and perceived it as a course-aligned, context-aware learning support that encourages engagement rather than direct solution copying.

cs.CY

Bringing AI into the Classroom: A Structured Approach for Integrating AI into Software Engineering Education

The recent emergence of generative AI and Large Language Models (LLMs), particularly following the release of ChatGPT in late 2022, has significantly impacted both academic research and industrial practice. This development has vast potential to impact educational practices across various domains, particularly within computer science and software engineering courses. Unfortunately, there is still a lack of actionable guidance on how to integrate AI technology coherently into computer science curricula. In this paper, we therefore introduce the concept of AI-Blueprints, a structured approach to integrating AI-related topics and activities into various computer science courses. We describe our approach and outline a structured process for creating new blueprints. Our vision is to provide these blueprints as open educational resources, allowing educators to adapt and integrate AI into diverse courses and topics. As a preliminary validation, we conducted semi-structured interviews with six university-level educators, collecting feedback on how our blueprints could help to integrate AI topics into existing courses. Based on this feedback, we lay out plans for future research and expanding our AI-Blueprint concept.

cs.CY

A Survey on Feedback Types in Automated Programming Assessment Systems

With the recent rapid increase in digitization across all major industries, acquiring programming skills has increased the demand for introductory programming courses. This has further resulted in universities integrating programming courses into a wide range of curricula, including not only technical studies but also business and management fields of study. Consequently, additional resources are needed for teaching, grading, and tutoring students with diverse educational backgrounds and skills. As part of this, Automated Programming Assessment Systems (APASs) have emerged, providing scalable and high-quality assessment systems with efficient evaluation and instant feedback. Commonly, APASs heavily rely on predefined unit tests for generating feedback, often limiting the scope and level of detail of feedback that can be provided to students. With the rise of Large Language Models (LLMs) in recent years, new opportunities have emerged as these technologies can enhance feedback quality and personalization. To investigate how different feedback mechanisms in APASs are perceived by students, and how effective they are in supporting problem-solving, we have conducted a large-scale study with over 200 students from two different universities. Specifically, we compare baseline Compiler Feedback, standard Unit Test Feedback, and advanced LLM-based Feedback regarding perceived quality and impact on student performance. Results indicate that while students rate unit test feedback as the most helpful, AI-generated feedback leads to significantly better performances. These findings suggest combining unit tests and AI-driven guidance to optimize automated feedback mechanisms and improve learning outcomes in programming education.

cs.SE

Towards Integrating Emerging AI Applications in SE Education

Artificial Intelligence (AI) approaches have been incorporated into modern learning environments and software engineering (SE) courses and curricula for several years. However, with the significant rise in popularity of large language models (LLMs) in general, and OpenAI's LLM-powered chatbot ChatGPT in particular in the last year, educators are faced with rapidly changing classroom environments and disrupted teaching principles. Examples range from programming assignment solutions that are fully generated via ChatGPT, to various forms of cheating during exams. However, despite these negative aspects and emerging challenges, AI tools in general, and LLM applications in particular, can also provide significant opportunities in a wide variety of SE courses, supporting both students and educators in meaningful ways. In this early research paper, we present preliminary results of a systematic analysis of current trends in the area of AI, and how they can be integrated into university-level SE curricula, guidelines, and approaches to support both instructors and learners. We collected both teaching and research papers and analyzed their potential usage in SE education, using the ACM Computer Science Curriculum Guidelines CS2023. As an initial outcome, we discuss a series of opportunities for AI applications and further research areas.

cs.SE

Towards a Success Model for Automated Programming Assessment Systems Used as a Formative Assessment Tool

The assessment of source code in university education is a central and important task for lecturers of programming courses. In doing so, educators are confronted with growing numbers of students having increasingly diverse prerequisites, a shortage of tutors, and highly dynamic learning objectives. To support lecturers in meeting these challenges, the use of automated programming assessment systems (APASs), facilitating formative assessments by providing timely, objective feedback, is a promising solution. Measuring the effectiveness and success of these platforms is crucial to understanding how such platforms should be designed, implemented, and used. However, research and practice lack a common understanding of aspects influencing the success of APASs. To address these issues, we have devised a success model for APASs based on established models from information systems as well as blended learning research and conducted an online survey with 414 students using the same APAS. In addition, we examined the role of mediators intervening between technology-, system- or self-related factors, respectively, and the users' satisfaction with APASs. Ultimately, our research has yielded a model of success comprising seven constructs influencing user satisfaction with an APAS.

cs.SE

Sustainability in Software Product Lines: Report on Discussion Panel at SPLC 2014

Sustainability (defined as 'the capacity to keep up') encompasses a wide set of aims: ranging from energy efficient software products (environmental sustainability), reduction of software development and maintenance costs (economic sustainability), to employee and end-user wellbeing (social sustainability). In this report we explore the role that sustainability plays in software product line engineering (SPL). The report is based on the 'Sustainability in Software Product Lines' panel held at SPLC 2014.

cs.SE