Many engineering disciplines require problem-solving skills, which cannot be learned by memorization alone. Open-ended textual exercises allow students to acquire these skills. Students can learn ...from their mistakes when instructors provide individual feedback. However, grading these exercises is often a manual, repetitive, and time-consuming activity. The number of computer science students graduating per year has steadily increased over the last decade. This rise has led to large courses that cause a heavy workload for instructors, especially if they provide individual feedback to students. This article presents CoFee, a framework to generate and suggest computer-aided feedback for textual exercises based on machine learning. CoFee utilizes a segment-based grading concept, which links feedback to text segments. CoFee automates grading based on topic modeling and an assessment knowledge repository acquired during previous assessments. A language model builds an intermediate representation of the text segments. Hierarchical clustering identifies groups of similar text segments to reduce the grading overhead. We first demonstrated the CoFee framework in a small laboratory experiment in 2019, which showed that the grading overhead could be reduced by 85%. This experiment confirmed the feasibility of automating the grading process for problem-solving exercises. We then evaluated CoFee in a large course at the Technical University of Munich from 2019 to 2021, with up to 2, 200 enrolled students per course. We collected data from 34 exercises offered in each of these courses. On average, CoFee suggested feedback for 45% of the submissions. 92% (Positive Predictive Value) of these suggestions were precise and, therefore, accepted by the instructors.
This special issue highlights the critical role of industry–academia collaboration in ensuring the practical relevance of the curriculum. The overall aim is to prepare software engineering students ...to be adaptable, ethical, and forward-thinking professionals in an artificial intelligence-influenced technological landscape.
This study explores the integration of large language models (LLMs), like ChatGPT, to improve attention deficit hyperactivity disorder (ADHD) treatments. Utilizing the Delphi method for its ...systematic forecasting capabilities, we gathered a panel of child ADHD therapy experts. These experts interacted with our custom ChatGPT through a specialized interface, thus engaging in simulated therapy scenarios with behavioral prompts and commands. Using empirical tests and expert feedback, we aimed to rigorously evaluate ChatGPT's effectiveness in therapy settings to integrate AI into healthcare responsibly. We sought to ensure that AI contributes positively and ethically to therapy and patient care, thus filling a gap in ADHD treatment methods. Findings show ChatGPT's empathy, adaptability, and communication strengths, thereby highlighting its potential to significantly improve ADHD care. The study points to ChatGPT's capacity to transform therapy practices through personalized and responsive patient care. However, it also notes the need for enhancements in privacy, cultural sensitivity, and interpreting nonverbal cues for ChatGPT's effective healthcare integration. Our research advocates for merging technological innovation with a comprehensive understanding of patient needs and ethical considerations, thereby aiming to pioneer a new era of AI-assisted therapy. We emphasize the ongoing refinement of AI tools like ChatGPT to meet ADHD therapy and patient care requirements more effectively.
Large language models represent a significant advancement in the field of AI. The underlying technology is key to further innovations and, despite critical views and even bans within communities and ...regions, large language models are here to stay. This commentary presents the potential benefits and challenges of educational applications of large language models, from student and teacher perspectives. We briefly discuss the current state of large language models and their applications. We then highlight how these models can be used to create educational content, improve student engagement and interaction, and personalize learning experiences. With regard to challenges, we argue that large language models in education require teachers and learners to develop sets of competencies and literacies necessary to both understand the technology as well as their limitations and unexpected brittleness of such systems. In addition, a clear strategy within educational systems and a clear pedagogical approach with a strong focus on critical thinking and strategies for fact checking are required to integrate and take full advantage of large language models in learning settings and teaching curricula. Other challenges such as the potential bias in the output, the need for continuous human oversight, and the potential for misuse are not unique to the application of AI in education. But we believe that, if handled sensibly, these challenges can offer insights and opportunities in education scenarios to acquaint students early on with potential societal biases, criticalities, and risks of AI applications. We conclude with recommendations for how to address these challenges and ensure that such models are used in a responsible and ethical manner in education.
•Current Research and Applications of Large Language Models in Education•Opportunities and Challenges Related to the Use of Language Models in Education from Teacher and Student Perspective•Opportunities of Using Large Language Models for Innovative Educational Technologies•Key Challenges, Risks, and Mitigation Strategies Related to the Application of Large Language Models in Education•Further Issues and Discussion Related to User Interfaces, Fair Access, Ethical and Responsible Use for such Technologies
There is an acknowledged need for teaching realistic software development in project courses. The design space for such courses is wide, ranging from single-semester to two-semester courses, from ...single-client to multicustomer courses, from local to globally distributed courses, and from toy projects to projects with real clients. The challenge for a nontrivial project course is how to make the project complex enough to enrich students' software engineering experience, yet realistic enough to have a teaching environment that does not unduly burden students or the instructor. We describe a methodology for project courses that is realizable for instructors, improves students' skills, and leads to viable results for industry partners. In particular, recent advances in release management and collaboration workflows reduce the effort of students and instructors during delivery and increase the quality of the deliverables. To enable release and feedback management, we introduce Rugby, an agile process model based on Scrum that allows reacting to changing requirements. To improve early communication, we use Tornado, a scenario-based design approach that emphasizes the use of informal models for the interaction between clients and students. The combination of Rugby and Tornado allows students to deal with changing requirements, produce multiple releases, and obtain client feedback through the duration of the course. We describe our experience with more than 300 students working on 40 projects with external clients over a 4-year period. In the latest instance of our course, the students have produced more than 7000 builds with 600 releases for eleven clients. In an evaluation of the courses, we found that the introduction of Rugby and Tornado significantly increased students' technical skills, especially with respect to software engineering, usability engineering, and configuration management, as well as their nontechnical skills such as communication with the client, teamwork, presentation, and demo management. Finally, we discuss how other instructors can adapt the course concept.
Introduction to Programming using Interactive Learning Krusche, Stephan; Berrezueta-Guzman, Jonnathan
2023 IEEE 35th International Conference on Software Engineering Education and Training (CSEE&T),
2023-Aug.
Conference Proceeding
Odprti dostop
Interactive learning has been highly successful in computer science education, leading to improved planning and execution of programming courses. This is accomplished through the amalgamation of ...exercises equipped with real-time feedback mechanisms, fostering an environment conducive to iterative performance enhancement. Communication portals facilitate knowledge sharing between students and instructors, while computer-based exams alleviate the instructors' workload.This paper focuses on the implementation of interactive learning in a programming course for first-year computer science students. The course, attended by an aggregate of 70 students, predominantly inexperienced in programming, is detailed, along with the digital resources employed during its development, implementation, and evaluation. This paper contributes to demonstrating the effectiveness of this methodology which showcase promising outcomes in a performance comparison between two courses with varying student numbers. The propitious outcomes emanating from this analysis undergird the proposition for extending this interactive learning methodology to a broader spectrum of computer science curricular offerings.
The demands placed on software engineers have increased dramatically since Mary Shaw asked1 for universities to educate computer scientists in different roles pertaining to software engineering 23 ...years ago. Since her roadmap paper in 2000, software systems have increased in complexity, size, and criticality as well. The aim of this special issue was to solicit, review, and publish original high-quality research to prepare the next generation of software engineers for these challenges. Priority was given to high-impact papers that address education in the areas of secure software, agile software engineering, gamification, and particularly industry/university collaboration.
Large language models, such as ChatGPT, possess the potential to revolutionize educational practices across various domains. Nonetheless, the deployment of these models can inadvertently foster ...academic dishonesty due to their facile accessibility. In practical courses like programming, where hands-on experience is crucial for learning, relying solely on ChatGPT can hinder students' ability to engage with the exercises, consequently impeding the attainment of learning outcomes.This paper conducts an experimental analysis of GPT 3.5 and GPT 4, gauging their proficiencies and constraints in resolving a compendium of 22 programming exercises. We discern and categorize exercises based on ChatGPT's ability to furnish viable solutions, alongside those that remain unaddressed. Moreover, an evaluation of the malleability of the solutions proposed by ChatGPT is undertaken. Subsequently, we propound a series of recommendations aimed at curtailing undue dependence on ChatGPT, thereby fostering authentic competency development in programming. The efficaciousness of these recommendations is underpinned by their integration into the design and delivery of an examination as part of the corresponding course.
Continuous delivery is a set of practices and principles to release software faster and more frequently. While it helps to bridge the gap between developers and operations for software in production, ...it can also improve the communication between developers and customers in the development phase, i.e. before software is in production. It shortens the feedback cycle and developers ideally use it right from the beginning of a software development project. In this paper we describe the implementation of a customized continuous delivery workflow and its benefits in a multi-customer project course in summer 2013. Our workflow focuses on the ability to deliver software with only a few clicks to the customer in order to obtain feedback as early as possible. This helps developers to validate their understanding about requirements, which is especially helpful in agile projects where requirements might change often. We describe how we integrated this workflow and the role of the release manager into our project-based organization and how we introduced it using different teaching methods. Within three months 90 students worked in 10 different projects with real customers from industry and delivered 490 releases. After the project course we evaluated our approach in an online questionnaire and in personal interviews. Our findings and observations show that participating students understood and applied the concepts and are convinced about the benefits of continuous delivery.
Plagiarism Detection and its Effect on the Learning Outcomes Berrezueta-Guzman, Jonnathan; Paulsen, Markus; Krusche, Stephan
2023 IEEE 35th International Conference on Software Engineering Education and Training (CSEE&T),
2023-Aug.
Conference Proceeding
Odprti dostop
The consistent effort and autonomous problem-solving required in programming instruction presents unique educational challenges, with plagiarism being a significant factor negatively correlated with ...independent programming performance. The prevalence of digital communication and information exchange further complicates this issue.This research paper aims to investigate and discern patterns of plagiarism among first-year computer science undergraduates. To investigate the research questions, we conducted three controlled experiments. The first experiment demonstrated that students were more likely to commit plagiarism when provided with the opportunity to do so. The second experiment corroborated this, showing a tendency for plagiarism among students who had not previously been exposed to any plagiarism mitigation strategies. The third experiment revealed that early awareness of plagiarism mitigation strategies leads to enhanced student performance, indicating that awareness of these measures acts as a stimulant for autonomous learning.