一句话:提出结合持续集成与面向切面编程的教学框架,提升JDBC数据库访问编程的反馈、作业管理与最佳实践采用。
数据库访问编程是软件工程教育的重要部分,JDBC教学面临学生需要大量反馈、人数增加导致作业管理与评分负担重、以及引入工业实践的需求。本文构建了一个结合持续集成(Travis CI、GitHub)与面向切面编程(AOP)的框架,基于constructive alignment和自动化形成性评估,并创新性地用AOP将分散的JDBC最佳实践模块化,同时支持数据库集成测试与作业自动管理评分。在53名学生的课程中应用后,结果表明该框架能激励学生采用JDBC最佳实践、简化作业管理与评分、帮助学生熟悉工业工具,并提升成绩。
Database access programming is a noteworthy component of Software Engineering (SE) education on databases that students are expected to acquire during training for their careers. In our university, we cover such an education in a course that emphasizes the use of the JDBC API to access databases. This paper presents our experiences in developing and running a framework to enhance the learning experience of database access programming, which is motivated by several factors. First, our students face great demands on acquiring JDBC acknowledge, and providing them with constructive feedback serves a critical role. Second, the increasing number of students leads to high efforts in managing and grading their assignments. Finally, we consider of strategic importance to bring modern industrial SE techniques into the classroom, so that students obtain a better experience with industry practices. Our framework draws upon constructive alignment and automated formative assessment, combining Continuous Integration (CI) and Aspect Oriented Programming (AOP). We include an innovative application of AOP, a programming technique that aims to modularize inherently scattered functionality into single functional units, to help students adopt well-established JDBC best practices. We also use well-known industrial software tools (Travis CI and GitHub) to manage and grade students' assignments and support automated integration testing with databases. The findings of this study, applied to a class of 53 students, suggest positive effects, such as motivate students to implement JDBC best practices, streamline the management and grading of their assignments, help them get familiar with industrial tools, or improve their grades.
DOI 原文 ·
@inproceedings{paperbot6281,
title = {Enhancing the Learning of Database Access Programming using Continuous Integration and Aspect Oriented Programming},
author = {Beatriz Perez},
booktitle = {ICSE},
year = {2021},
doi = {10.1109/icse-seet52601.2021.00032}
}