skip to main content


Title: Frequent, Timed Coding Tests for Training and Assessment of Full-Stack Web Development Skills: An Experience Report
This experience report describes the use of frequent, timed coding tests in a project-intensive software engineering course in which students first learn full-stack web development using Ruby on Rails and then apply their skills in a team project. The goal of the skills tests was twofold: (1) to help motivate students to engage in distributed practice and, thus, gain adequate coding skills to be an effective team member during the team project and (2) to accurately assess whether students had acquired the requisite skills and, thereby, catch deficiencies early, while there was still time to address them. Regarding the first goal, although several students indicated that the tests motivated them to engage in substantial practice coding, it was ultimately inconclusive as to the extent of the tests' impact on students' distributed practice behavior and on their preparation for the project. Regarding the second goal, the skills testing approach was indeed considerably more effective than graded homework assignments for assessing coding skill and detecting struggling students early. Lessons learned from our experiences included that students had significant concerns about the strict time limit on the tests, that the tests caused a spike in mid-semester withdrawals from the course that disproportionately impacted students from underrepresented groups, and that detecting struggling students was one thing, but effectively helping them catch up was a whole other challenge.  more » « less
Award ID(s):
1822816
PAR ID:
10344619
Author(s) / Creator(s):
Date Published:
Journal Name:
SIGCSE '21: Proceedings of the 52nd ACM Technical Symposium on Computer Science Education
Page Range / eLocation ID:
24-30
Format(s):
Medium: X
Sponsoring Org:
National Science Foundation
More Like this
  1. Sacristán, A.I. ; Cortés-Zavala, J.C. ; Ruiz-Arias, P.M. (Ed.)
    Collective Argumentation Learning and Coding (CALC) is a project focused on providing teachers with strategies to engage students in collective argumentation in mathematics, science, and coding. Collective argumentation can be characterized by any instance where multiple people (teachers and students) work together to establish a claim and provide evidence to support it (Conner et al., 2014b). Collective argumentation is an effective approach for promoting critical and higher order thinking and supporting students’ ability to articulate and justify claims. The goal of the CALC project is to help elementary school teachers extend the use of collective argumentation from teaching mathematics and science to teaching coding. Doing so increases the probability that teachers will integrate coding in regular classroom instruction, making it accessible to all students. This project highlighted Gloria (pseudonym), a fourth-grade teacher from Cohort 1 because of the extent to which she went from fear of coding to fluent implementation. Initially, Gloria was comfortable engaging her students in argumentation, explaining they already used it in mathematics with Cognitively Guided Instruction (CGI). However, she was “terrified” about learning to code because she didn’t view herself as proficient with technology. She was willing to overcome her fear of coding because she saw the value in providing her students with coding experiences that would help them develop the necessary skills for our increasingly technological society. In the course of three months, Gloria’s instruction progressed from using simple coding activities to more sophisticated coding platforms. This progression in her coding instruction paralleled the change in her personal feelings about coding as she moved from “terrified” to “comfortable with it”. 
    more » « less
  2. Working in teams has been recognized as an essential 21st-century skill. Introducing teamwork in the undergraduate classroom is crucial as it allows the students to work with individuals with diverse skillsets and learn from one another. It is important to note that just creating a team and allowing the students to work does not foster teamwork skills. Inculcating teamwork skills requires a consciousness on the part of the instructor and the teaching assistants. Pedagogies such as cooperative learning have been recognized as effective in helping students develop teamwork skills. We introduced a joint reflection on action approach to developing teamwork skills among novice students as part of a sophomore-level systems analysis and design course. In this evidence-based practice paper, we report on students’ reflections regarding their perceptions of teamwork. This study approaches the following research questions: What are students' reflections about the role of communication while working in teams in a cooperative project-based learning environment? The guiding pedagogical framework for this course is cooperative learning. The course requires the students to work in teams in a semester-long software development project. To elicit reflection on action about their teamwork experience. Specifically, we exposed students to concrete experiences as part of their teamwork interactions, which became the basis for observations and reflections. For this, the semester-long project was complemented with one reflection-on-action activity. In the activity, students were asked to watch a video of secrets of successful teamwork and were asked to reflect on their perceptions about the role of communication within teams. The students’ reflections on the activity were analyzed using qualitative inductive thematic analysis to understand the students’ perceptions regarding teamwork and communication within teams. 
    more » « less
  3. Working in teams has been recognized as an essential 21st-century skill. Introducing teamwork in the undergraduate classroom is crucial as it allows the students to work with individuals with diverse skillsets and learn from one another. It is important to note that just creating a team and allowing the students to work does not foster teamwork skills. Inculcating teamwork skills requires a consciousness on the part of the instructor and the teaching assistants. Pedagogies such as cooperative learning have been recognized as effective in helping students develop teamwork skills. We introduced a joint reflection on action approach to developing teamwork skills among novice students as part of a sophomore-level systems analysis and design course. In this evidence-based practice paper, we report on students’ reflections regarding their perceptions of teamwork. This study approaches the following research questions: What are students' reflections about the role of communication while working in teams in a cooperative project-based learning environment? The guiding pedagogical framework for this course is cooperative learning. The course requires the students to work in teams in a semester-long software development project. To elicit reflection on action about their teamwork experience. Specifically, we exposed students to concrete experiences as part of their teamwork interactions, which became the basis for observations and reflections. For this, the semester-long project was complemented with one reflection-on-action activity. In the activity, students were asked to watch a video of secrets of successful teamwork and were asked to reflect on their perceptions about the role of communication within teams. The students’ reflections on the activity were analyzed using qualitative inductive thematic analysis to understand the students’ perceptions regarding teamwork and communication within teams. 
    more » « less
  4. There is growing evidence of the effectiveness of project-based learning (PBL) in preparing students to solve complex problems. In PBL implementations in engineering, students are treated as professional engineers facing projects centered around real-world problems, including the complexity and uncertainty that influence such problems. Not only does this help students to analyze and solve an authentic real-world task, promoting critical thinking, but also students learn from each other, learning valuable communication and teamwork skills. Faculty play an important part by assuming non-conventional roles (e.g., client, senior professional engineer, consultant) to help students throughout this instructional and learning approach. Typically in PBLs, students work on projects over extended periods of time that culminate in realistic products or presentations. In order to be successful, students need to learn how to frame a problem, identify stakeholders and their requirements, design and select concepts, test them, and so on. Two different implementations of PBL projects in a fluid mechanics course are presented in this paper. This required, junior-level course has been taught since 2014 by the same instructor. The first PBL project presented is a complete design of pumped pipeline systems for a hypothetical plant. In the second project, engineering students partnered with pre-service teachers to design and teach an elementary school lesson on fluid mechanics concepts. With the PBL implementations, it is expected that students: 1) engage in a deeper learning process where concepts can be reemphasized, and students can realize applicability; 2) develop and practice teamwork skills; 3) learn and practice how to communicate effectively to peers and to those from other fields; and 4) increase their confidence working on open-ended situations and problems. The goal of this paper is to present the experiences of the authors with both PBL implementations. It explains how the projects were scaffolded through the entire semester, including how the sequence of course content was modified, how team dynamics were monitored, the faculty roles, and the end products and presentations. Students' experiences are also presented. To evaluate and compare students’ learning and satisfaction with the team experience between the two PBL implementations, a shortened version of the NCEES FE exam and the Comprehensive Assessment of Team Member Effectiveness (CATME) survey were utilized. Students completed the FE exam during the first week and then again during the last week of the semester in order to assess students’ growth in fluid mechanics knowledge. The CATME survey was completed mid-semester to help faculty identify and address problems within team dynamics, and at the end of the semester to evaluate individual students’ teamwork performance. The results showed that no major differences were observed in terms of the learned fluid mechanics content, however, the data showed interesting preliminary observations regarding teamwork satisfaction. Through reflective assignments (e.g., short answer reflections, focus groups), student perceptions of the PBL implementations are discussed in the paper. Finally, some of the challenges and lessons learned from implementing both projects multiple times, as well as access to some of the PBL course materials and assignments will be provided. 
    more » « less
  5. Abstract

    Interdisciplinary teams are on the rise as scientists attempt to address complex environmental issues. While the benefits of team science approaches are clear, researchers often struggle with its implementation, particularly for new team members. The challenges of large projects often weigh on the most vulnerable members of a team: trainees, including undergraduate students, graduate students, and post‐doctoral researchers. Trainees on big projects have to navigate their role on the team, with learning project policies, procedures, and goals, all while also training in key scientific tasks such as co‐authoring papers. To address these challenges, we created and participated in a project‐specific, graduate‐level team science course. The purposes of this course were to: (1) introduce students to the goals of the project, (2) build trainees' understanding of how big projects operate, and (3) allow trainees to explore how their research interests dovetailed with the overall project. Additionally, trainees received training regarding: (1) diversity, equity & inclusion, (2) giving and receiving feedback, and (3) effective communication. Onboarding through the team science course cultivated psychological safety and a collaborative student community across disciplines and institutions. Thus, we recommend a team science course for onboarding students to big projects to help students establish the skills necessary for collaborative research. Project‐based team science classes can benefit student advancement, enhance the productivity of the project, and accelerate the discovery of solutions to ecological issues by building community, establishing a shared project vocabulary, and building a workforce with collaborative skills to better answer ecological research questions.

     
    more » « less