Algorithms and Programming course, Porto Polytechnic

Description of the course

The course focuses on the learning of algorithms and programming concepts. The course is part of the Civil Engineering program and aims to provide students with basic understanding of programming using Visual Basic® for Application with a focus on applications in Civil Engineering.

Students start by learning to use spreadsheets as they help in solving engineering related problems. For example, civil engineers can use these kinds of tools to estimate costs or do structural calculations. The tools allow the easy creation of charts, graphs and reports. Macros and VBA programming capabilities of the ME® application can be helpful in simplifying or automating these tasks. Applications such as AutoCad® use Visual Basic® as one of their intrinsic module development languages and learning VBA can facilitate the transition to Visual Basic®.

As a result of the ICT-INOV project, the course has been updated to include design thinking principles. Students deploy design thinking to introduce discuss potential problems in the area that might be solved using programming.

Description of the participants

The course is part of the 1st year of studies at the Department of Civil Engineering of the Porto Polytechnic. The ICT-INOV methodology is being deployed in the 1st semester of the 2022 – 2023 academic year. A total of 64 students were involved in the process. ICT-INOV was further deployed on the 1st semester of the 2023 – 2024 academic year. A total of 75 students were involved in the process. ICT-INOV will be further deployed in the following academic years, reaching additional groups of students.

Gamified design thinking activities

A learning activity based on design thinking was specifically designed for the course. The objective of the learning activity was to challenge students to reflect on current issues of Civil Engineering and how they could be solved through programming. The activity is directly in line with course objectives, which are integrate emerging pedagogies with state-of-the-art ICT for better addressing specific educational goals in broad learning contexts.

On the first part of the activity students discussed potential problems as a class. Different problems were analyzed, and a single problem was selected. Issues relating to the solution of the problem were also discussed in group. Students then worked in groups of up to 2 individuals to propose a programmatic solution. The ICT-INOV educational platform provides instructors with flexibility on structuring learning activities based on well-accepted design thinking steps. The activity was structured as follows.

Step 1. Problem identification.

Students were instructed to research potential problems, understand if they could be solved with programmatic solutions and assess if those solutions could be created by the students. In addition, students researched existing related solutions.

Step 2. Selecting and understanding the problem.

Students selected a challenge to focus on based on the previous identification. They discussed specific issues of the problem.

Step 3. Forming groups.

Students were divided in teams of 2 and encouraged to select a team name a logo for team building purposes. This activity provided teams with a sense of identify and affiliation. It also helped them express their interest and goals.

Step 4. Point of view.

Students were challenged to redefine their original problem, considering the results of their research in the previous steps, which helped them develop an understanding of the problem from the user’s point of view.

Step 5. Prototype and test.

Students were challenged to solve the problem and deploy the solutions on the ICT-INOV educational platform for posting their projects before they presented their solutions to the entire class.