Asee peer logo

Exploring Proficiency Testing of Programming Skills in Lower-division Computer Science and Electrical Engineering Courses

Download Paper |


2016 ASEE Annual Conference & Exposition


New Orleans, Louisiana

Publication Date

June 26, 2016

Start Date

June 26, 2016

End Date

August 28, 2016





Conference Session

Assessment & Accreditation in ECE

Tagged Division

Electrical and Computer

Page Count




Permanent URL

Download Count


Request a correction

Paper Authors


Karla Steinbrugge Fant Portland State University

visit author page

Karla Steinbrugge Fant is a Senior Instructor of Computer Science at Portland State University (1990-Current) responsible for introductory and advanced courses in C++, Java, and Data Structures. She supervises all 100-level Computer Science courses, teaches three courses a term for the department, and coordinates programs that provide university credit for high school computer science courses. She was awarded a grant for the redesign of the CS16x courses. She is the founder of GRAPHIK Dimensions Northwest responsible for computer graphics standards and high-resolution graphics.

Previously, she worked as Vice President of Engineering and Director of Marketing at Metheus Corporation where she was responsible for a budget of over $2 million dollars. She managed a team of software, hardware, and microcode engineers creating 1280x1024 and 2kx2k display controllers.

visit author page


Branimir Pejcinovic Portland State University

visit author page

Branimir Pejcinovic received his Ph.D. degree from University of Massachusetts, Amherst. He is a Professor and former Associate Chair for Undergraduate Education at Portland State University, Electrical and Computer Engineering department. In this role he has led department-wide changes in curriculum with emphasis on project- and lab-based instruction and learning. His research interests are in the areas of engineering education, semiconductor device characterization, design and simulation, signal integrity and THz sensors. He is a member of IEEE and ASEE.

visit author page


Phillip Wong Portland State University

visit author page

Phillip Wong received an M.S. degree in electrical engineering from Carnegie Mellon University in 1990. Since then, he has been with Portland State University, Oregon, USA, where he is currently the ECE Lab Coordinator and an instructor.

visit author page

Download Paper |


Many engineering programs have “Introduction to Engineering” course(s) for their entering first-year students. We employ a three course sequence: ECE 101 explores the electrical engineering field; ECE 102 develops problem solving skills and introduces programming; and ECE 103 focuses on intermediate level C programming. In ECE 102, we introduce MATLAB as both a problem solving platform and a programming language.

Mastering logical or algorithmic thinking and applying it to programming is often difficult for novices, yet many could still pass ECE 102 even though their understanding of programming concepts remained rudimentary. This caused serious problems in the more advanced follow-on programming course. Our colleagues in the Computer Science department have dealt with a similar problem by introducing labs followed by competency tests which are used as gateways, i.e., students cannot proceed until they pass the test. Following their lead, we introduced a competency test in ECE 102 for programming skills, which is graded pass/fail.

Our first attempt at competency testing was run as optional “extra credit” for students to replace missing assignments. No special test preparation was offered. Roughly 1/2 of 80 students participated and 1/2 passed the test. The single test at the end of the course required students to write a MATLAB script that solved a given problem and involved the following tasks: 1. getting user input 2. setting up a loop or a selection statement 3. writing and calling a function 4. displaying a result

The intent was to assess the students’ ability to write an elementary program that demonstrated their competency in front of the examiner. While good students finished the test by the time limit, less prepared students struggled with most components.

In a second trial, we made the competency test mandatory and provided extra programming labs for students to practice MATLAB programming. We still observed that many students struggled and required 2-3 times the allocated time to complete the tasks. Furthermore, many required hints from the instructor.

We are preparing a third implementation with these changes: 1. Designing two competency tests instead of one. 2. Providing targeted instruction and practice to students who need more guidance. 3. Simplifying the tests further to emphasize essential concepts. 4. Providing another chance for those who do not pass the first time, but hold firm for those who do not pass on the second attempt.

We believe competency testing is a useful tool in teaching and assessment, but it presents many conceptual and implementation challenges for instructors. In our paper we will discuss our experience in more detail, provide assessment data, and provide guidance to those who are facing similar problems in teaching programming and who would like to implement competency testing.

============ We would prefer to present in a regular session

Fant, K. S., & Pejcinovic, B., & Wong, P. (2016, June), Exploring Proficiency Testing of Programming Skills in Lower-division Computer Science and Electrical Engineering Courses Paper presented at 2016 ASEE Annual Conference & Exposition, New Orleans, Louisiana. 10.18260/p.26857

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2016 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015