M. Ben Ghalia

The University of Texas Rio Grande Valley (UNITED STATES)
The software MATLAB has becoming one of the most used programming languages in engineering educational programs and in the industry. Several support packages have been developed to allow the interfacing of MATLAB with various hardware. This has made MATLAB a well sought after programming language option for engineers who work in areas such as robotics, image processing, data acquisition, and rapid control prototyping. In our electrical engineering undergraduate program at the University of Texas Rio Grande Valley, located in South Central Region of USA, we developed a MATLAB programming course for second year university students. The course has a lecture component and a computer laboratory component. The lecture covers the main concepts of MATLAB programming. The laboratory hands-on computer-based sessions allow students to apply the programming concepts by writing and testing MATLAB programs to solve engineering problems. These activities are designed to help students develop the necessary MATLAB programming skills that they can use in undergraduate research, capstone design projects, and other electrical engineering courses.

Most of the skills acquired in MATLAB programming take place in the computer laboratory. Hence, it is crucial for the laboratory curriculum and instruction model to be effective to ensure the attainments of the course learning outcomes. After having offered the course for a number of years, we realized that students often find it difficult to write MATLAB programs for complex problems. Moreover, students who take this course have completed only one entry level programming course in C++ and most have not had any background in computer programming in their secondary education. Hence, some considerations have been taken to innovate the computer laboratory model to ensure students acquire the necessary skills in MATLAB programming. We developed a new model for the laboratory hands-on experience. In the new model students are engaged in an activity that consists of a programming tutorial that shows the main steps for developing and writing a MATLAB program to solve a specific problem. The activity is designed to cover one or more programming concepts discussed in the lecture. After completion of the activity, students are given an assignment that covers the same concepts addressed in the activity. Students work on the assignment with minimal assistance from the instructor. The objective of this laboratory model is to allow students to first experience and reflect on the activity and develop their skills to generalize the acquired knowledge to a new problem given in the assignment that follows the activity.

This paper discusses the new pedagogical model developed for the computer laboratory and provides a number of examples of activities and assignments. The paper also discusses the degree of success achieved using this pedagogical model and the level of students’ mastery of the MALTAB programming concepts. To situate this paper within the context of existing literature, a number of important initiatives in introducing MATLAB programming undertaken by various engineering education programs are reviewed and discussed.