Implementation of Security Modules with Model-Eliciting Activities in Computer Science Courses

Security is a critical aspect in the design, development, and testing of software systems.Due to the increasing need for security-related skills within software systems and engineering, there is a growing demand for these skills to be taught at the university level.A series of 41 security modules was developed to assess the impact of these modules on teaching critical cyber security topics to students.This paper presents the implementation and outcomes of the first set of six security modules in a Freshman level course.This set consists of five modules presented in lectures as well as a sixth module emphasizing encryption and decryption used as the semester project for the course.Each module is a collection of concepts related to cyber security.The individual cyber security concepts are presented with a general description of a security issue to avoid, sample code with the security issue written in the Java programming language, and a second version of the code with an effective solution.The set of these modules was implemented in Computer Science I during the Fall 2019 semester.Incorporating each of the concepts in these modules into lectures depends on both the topic covered and the approach to resolving the related security issue.Students were introduced to computing concepts related to both the security issue and the appropriate solution to fully grasp the overall concept.After presenting the materials to students, continual review with students is also essential.This reviewal process requires exploring usecases for the programming mechanisms presented as solutions to the security issues discussed.In addition to the security modules presented in lectures, students were given a hands-on approach to understanding the concepts through Model-Eliciting Activities (MEAs).MEAs are openended, problem-solving activities in which groups of three to four students work to solve realistic complex problems in a classroom setting.The semester project related to encryption and decryption was implemented into the course as an MEA.To assess the effectiveness of incorporating security modules with the MEA project into the curriculum of Computer Science I, two sections of the course were used as a control group and a treatment group.The treatment group included the security modules in lectures and the MEA project while the control group did not.To measure the overall effectiveness of incorporating security modules with the MEA project, both the instructor's effectiveness as well as the student's attitudes and interest were measured.For instructors, the primary question to address was to what extent do instructors change their attitudes towards student learning and their teaching practices because of the implementation of cyber security modules through MEAs.For students, the primary question to address was how the inclusion of security modules with the MEA project improved their understanding of the course materials and their interests in computer science.After implementing security modules with the MEA project, students showed a better understanding of cyber security concepts and a greater interest in broader computer science concepts.The instructor's beliefs about teaching, learning, and assessment shifted from teacher-centered to student-centered, during his experience with the security modules and MEA.