Skip to main content


CSC2031 : Security Programming

  • Offered for Year: 2024/25
  • Module Leader(s): Dr John Mace
  • Owning School: Computing
  • Teaching Location: Newcastle City Campus

Your programme is made up of credits, the total differs on programme to programme.

Semester 1 Credit Value: 20
ECTS Credits: 10.0
European Credit Transfer System


All computer scientist graduates should have a fundamental understanding of security when designing and implementing modern day software applications. This module explores key security challenges faced by these applications and the security techniques commonly used to manage them. Students will gain first-hand experience in employing secure software practices and implementing security mechanisms to help address those challenges.

Outline Of Syllabus

1. Security Foundations
2. Authentication
3. Access Control
4. Cryptography
5. Software Security
6. Web Security

Teaching Methods

Teaching Activities
Category Activity Number Length Student Hours Comment
Guided Independent StudyAssessment preparation and completion81:008:00Exam revision
Scheduled Learning And Teaching ActivitiesLecture221:0022:00Traditional face-to-face lectures.
Guided Independent StudyAssessment preparation and completion551:0055:00Programming based coursework
Structured Guided LearningLecture materials21:002:00Non-synchronous lecture material to support lectures
Guided Independent StudyAssessment preparation and completion12:002:00Examination
Scheduled Learning And Teaching ActivitiesPractical222:0044:00Practical learning with demonstrator support & drop-in surgery.
Structured Guided LearningStructured non-synchronous discussion111:0011:00Non-synchronous online discussion board with Q & A forum around lecture materials and assessment
Guided Independent StudyIndependent study451:0045:00Background reading
Guided Independent StudyIndependent study111:0011:00Lecture follow-up
Teaching Rationale And Relationship

Traditional face-to-face lectures will present the fundamental and theoretical material to facilitate the intended knowledge outcomes. These will be followed by substantial practical time to enable students to develop the intended skills outcomes through implementing the techniques introduced in the lectures together with supporting asynchronous online material.

Assessment Methods

The format of resits will be determined by the Board of Examiners

Description Length Semester When Set Percentage Comment
Digital Examination1201A40N/A
Other Assessment
Description Semester When Set Percentage Comment
Computer assessment1M60Programming-based coursework
Formative Assessments

Formative Assessment is an assessment which develops your skills in being assessed, allows for you to receive feedback, and prepares you for being assessed. However, it does not count to your final mark.

Description Semester When Set Comment
Written Examination1MCanvas quiz to understand level of student learning and provide feedback to help prepare students for digital exam.
Assessment Rationale And Relationship

This is both a theoretical and practical subject area and therefore merits assessment via digital examination and coursework components.

The digital examination is appropriate to assess both theoretical understanding and problem-solving skills under time-constraint that students would experience in industry. The digital assessment enables realistic programming problems to bet set and software skills to be assessed.

The computer assessment coursework is appropriate to assess the understanding of code using different programming languages as well as software skills to implement security solutions and solve programming errors. The computer assessment enables the setting of realistic programming problems by providing an pre-existing application to be expanded and extended using software skills.

The formative assessment is appropriate to understand the level of student understanding of taught practical and theoretical aspects, adapt teaching and revisit teaching material as necessary, and provide constructive feedback to allow students to improve the quality of their computer assessment coursework and help prepare them for the digital exam

Reading Lists