Using Software Engineering Design Principles as Tools for Freshman Students Learning Academic Article in Scopus uri icon

abstract

  • © 2020 IEEE.In this innovative practice work-in-progress paper, the software engineering design principles that are used for Programming Fundamentals, and Object-Oriented Programming courses, within a -recently renewed curriculum- software engineering program, are reviewed and discussed as tools to introduce first-year students into the engineering design skills learning pathway of the Engineering Accreditation Commission of the Accreditation Board for Engineering and Technology, ABET. Special attention is paid to highly abstract concepts such as high cohesion, low coupling, Keep it Short and Simple, Don't Repeat Yourself, Single Responsibility Principle, among other object-oriented design principles. The aim of such exercise is two-fold: (i) to address how design principles can be used to guide students' learning process, and (ii) to support pedagogical decision making for the software engineering program. The outtake of the whole research planned by the authors is as follows. On the one hand, design principles are discussed and analyzed, from the first-year programming courses perspective, aiming a pedagogical path planning for student outcomes attainment within a Project-Based-Learning approach. On the other hand, the discussion on how the program takes advantage of assessment and evaluation processes, can be useful for programs and faculty concerned with fulfilling the continuous improvement criterion, as defined by ABET. The presented work-in-progress focuses on reflection about design principles and establishing a link among them, with the engineering design process. In this way, this paper separates from similar works that may focus on design principles by itself, without the mentioned intentionality. Reported qualitative results are focused on conducted experiences so far within our software engineering program.

publication date

  • October 21, 2020