Abstract

In this work, we investigate an optimal assessment strategy to measure student learning in the first-year undergraduate engineering course at X-Department at X University. Specifically, we evaluate and compare challenge-based and competency-based assessment strategies. In the challenge-based approach, the students are required to design a C++-based application that meet the required design objectives. The competency-based assessment involves assessing learning by asking a variety of pointed questions pertaining to a single or a small group of concepts. After studying the performance of 207 students, we found that in the challenge-based assessment, due to the complex nature of the questions that assess numerous concepts simultaneously, students who are not very thorough with even one or two concepts fared very poorly since they were unable to finish the challenge and present a functional prototype of the program. On the other hand, the competency-based assessment allowed for a more balanced approach in which the students’ learning was reflected more accurately by their performance in the various assessments.

Highlights

  • Software is integral to numerous applications in this world

  • The study was conducted with a total of 207 students. 80 students from this group appeared for the challenge-based assessments and the rest appeared for the competency-based assessments

  • We examine two assessment formats in a Level-1 undergraduate engineering course on C++ programming

Read more

Summary

Introduction

Software is integral to numerous applications in this world. In almost every engineering program offered in any university, there is at least one foundational course that focuses on the basic principles of programming. There are numerous programming languages available for this purpose, and the choice is usually based on the utility of the programming language in the other courses that the students have to take as part of their curriculum, towards their degree. The challenge in teaching a programming course at an introductory level can be attributed to a variety of reasons, namely, student characteristics and aptitude for programming, the pedagogical techniques applied to teach the course, and the nature of the programming language itself [3,4,5].

Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call