Secure Software Engineering – CSCI 611

CG • Section 8WK • 11/08/2019 to 04/16/2020 • Modified 07/27/2021

Course Description

This course is primarily concerned with how to write secure software, including common pitfalls in major languages.

For information regarding prerequisites for this course, please refer to the Academic Course Catalog.

Rationale

From social interaction, education, and communication to business, transportation, and government and everything in between, society depends on complex software systems. The consequences of a failure in a software system can be severe, and reliable functionality and security are critical. A course in secure software engineering will equip the students with the knowledge and skills necessary to develop and operate dependable and secure software systems.

Measurable Learning Outcomes

Upon successful completion of this course, the student will be able to:

  1. Explain why security is a software issue.
  2. Detail the principles and practices of secure software design.
  3. Describe the principles and practices of secure software coding and testing.
  4. Integrate biblical principles within the field of secure software engineering.

Course Assignment

Textbook readings and lecture presentations/notes

Course Requirements Checklist

After reading the Course Syllabus and Student Expectations, the student will complete the related checklist found in the Course Overview.

Discussions (3)

Discussion boards are collaborative learning experiences. Therefore, the student is required to provide a thread in response to the provided prompt for each discussion. Each thread must be 350–400 words and demonstrate course-related knowledge. In addition to the thread, the student is required to reply to 1 other classmate’s thread. The reply must be 250 words.

Lab Assignments (5)

The student will complete labs associated with the course material. Each lab will have specific instructions for tasks, along with deliverables, to be completed in the virtual lab environment.

Quizzes (8)

Six quizzes will cover the Learn material for the module in which they are assigned. Each of these quizzes will be open-book/open-notes, contain 6 multiple-choice, 6 true/false, and 1 short answer questions, and have a 1-hour time limit.

The Quiz: Mid-Term will cover the Learn material for Modules 1–4. The Quiz: Mid-Term will be open-book/open-notes, contain 15 true/false and multiple choice questions and 5 short answer questions, and have a 2-hour time limit.

The Quiz: Final will cover all of the Learn material for the course. The Quiz: Final will be open-book/open-notes, contain 20 true/false and multiple choice questions and 7 short answer questions, and have a 2-hour and 45-minute time limit.​