Software Engineering Educational Experience in Building an Intelligent Tutoring System
- URL: http://arxiv.org/abs/2310.05472v3
- Date: Wed, 18 Dec 2024 16:54:32 GMT
- Title: Software Engineering Educational Experience in Building an Intelligent Tutoring System
- Authors: Zhiyu Fan, Yannic Noller, Ashish Dandekar, Abhik Roychoudhury,
- Abstract summary: This paper discusses the Intelligent Tutoring System architecture, our teaching concept in the SE course, and our experience with the built ITS.
This SE course envisions building a full-fledged Intelligent Tutoring System to provide automated, real-time feedback for novice students in programming courses over multiple years.
- Score: 10.935408461248173
- License:
- Abstract: The growing number of students enrolling in Computer Science (CS) programmes is pushing CS educators to their limits. This poses significant challenges to computing education, particularly the teaching of introductory programming and advanced software engineering (SE) courses. First-year programming courses often face overwhelming enrollments, including interdisciplinary students who are not CS majors. The high teacher-to-student ratio makes it challenging to provide timely and high-quality feedback. Meanwhile, software engineering education comes with inherent difficulties like acquiring industry partners and the dilemma that such software projects are often under or over-specified and one-time efforts within one team or one course. To address these challenges, we designed a novel foundational SE course. This SE course envisions building a full-fledged Intelligent Tutoring System (ITS) of Programming Assignments to provide automated, real-time feedback for novice students in programming courses over multiple years. Each year, SE students contribute to specific short-running SE projects that improve the existing ITS implementation, while at the same time, we can deploy the ITS for usage by students for learning programming. This project setup builds awareness among SE students about their contribution to a "to-be-deployed" software project. In this multi-year teaching effort, we have incrementally built an ITS that is now deployed in various programming courses. This paper discusses the Intelligent Tutoring System architecture, our teaching concept in the SE course, our experience with the built ITS, and our view of future computing education.
Related papers
- Establishing Software Engineering Design Competence with Soft Skills [5.829545587965401]
An engineering design course has been developed for senior level students enrolled in the software engineering program in Canada.
The goals of the course are to provide a realistic design experience, introduce students to industry culture, improve their time management skills, challenge them technically and intellectually, improve their communication skills, raise student level of professionalism, hone their soft skills, and raise awareness of human factors in software engineering.
arXiv Detail & Related papers (2024-08-07T02:20:20Z) - Bridging Gaps, Building Futures: Advancing Software Developer Diversity and Inclusion Through Future-Oriented Research [50.545824691484796]
We present insights from SE researchers and practitioners on challenges and solutions regarding diversity and inclusion in SE.
We share potential utopian and dystopian visions of the future and provide future research directions and implications for academia and industry.
arXiv Detail & Related papers (2024-04-10T16:18:11Z) - Introducing High School Students to Version Control, Continuous
Integration, and Quality Assurance [0.0]
Two high school students volunteered in our lab at Wayne State University where I'm a graduate research assistant and Ph.D. student in computer science.
The students had taken AP Computer Science but had no prior experience with software engineering or software testing.
This paper documents our experience devising a group project to teach the requisite software engineering skills to implement automated tests.
arXiv Detail & Related papers (2023-10-05T21:44:11Z) - Building an Effective Automated Assessment System for C/C++ Introductory
Programming Courses in ODL Environment [0.0]
Traditional ways of assessing students' work are becoming insufficient in terms of both time and effort.
In distance education environment, such assessments become additionally more challenging in terms of hefty remuneration for hiring large number of tutors.
We identify different components that we believe are necessary in building an effective automated assessment system.
arXiv Detail & Related papers (2022-05-24T09:20:43Z) - Enabling Automated Machine Learning for Model-Driven AI Engineering [60.09869520679979]
We propose a novel approach to enable Model-Driven Software Engineering and Model-Driven AI Engineering.
In particular, we support Automated ML, thus assisting software engineers without deep AI knowledge in developing AI-intensive systems.
arXiv Detail & Related papers (2022-03-06T10:12:56Z) - Lifelong Learning Metrics [63.8376359764052]
The DARPA Lifelong Learning Machines (L2M) program seeks to yield advances in artificial intelligence (AI) systems.
This document outlines a formalism for constructing and characterizing the performance of agents performing lifelong learning scenarios.
arXiv Detail & Related papers (2022-01-20T16:29:14Z) - Using Machine Learning to Predict Engineering Technology Students'
Success with Computer Aided Design [50.591267188664666]
We show how data combined with machine learning techniques can predict how well a particular student will perform in a design task.
We found that our models using early design sequence actions are particularly valuable for prediction.
Further improvements to these models could lead to earlier predictions and thus provide students feedback sooner to enhance their learning.
arXiv Detail & Related papers (2021-08-12T20:24:54Z) - Data Science for Engineers: A Teaching Ecosystem [59.00739310930656]
We describe an ecosystem for teaching data science to engineers at the Faculty of Physical and Mathematical Sciences, Universidad de Chile.
This initiative has been motivated by the increasing demand for DS qualifications both from academic and professional environments.
By sharing our teaching principles and the innovative components of our approach to teaching DS, we hope our experience can be useful to those developing their own DS programmes and ecosystems.
arXiv Detail & Related papers (2021-01-14T14:17:57Z) - Machine Learning for Software Engineering: A Systematic Mapping [73.30245214374027]
The software development industry is rapidly adopting machine learning for transitioning modern day software systems towards highly intelligent and self-learning systems.
No comprehensive study exists that explores the current state-of-the-art on the adoption of machine learning across software engineering life cycle stages.
This study introduces a machine learning for software engineering (MLSE) taxonomy classifying the state-of-the-art machine learning techniques according to their applicability to various software engineering life cycle stages.
arXiv Detail & Related papers (2020-05-27T11:56:56Z) - Teaching Software Engineering for AI-Enabled Systems [7.01053472751897]
This course teaches software-engineering skills to students with a background in machine learning.
We describe the course and our infrastructure and share experience and all material from teaching the course for the first time.
arXiv Detail & Related papers (2020-01-18T15:24:17Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.