Module Catalogue 2025/26

CSC2031 : Security Programming

CSC2031 : Security Programming

  • Offered for Year: 2025/26
  • Module Leader(s): Dr John Mace
  • Teaching Assistant: Mr Behrad Samari
  • Owning School: Computing
  • Teaching Location: Newcastle City Campus
Semesters

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
Pre-requisite

Modules you must have done previously to study this module

Pre Requisite Comment

N/A

Co-Requisite

Modules you need to take at the same time

Co Requisite Comment

N/A

Aims

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. Flask Web Applications.
3. Web Application Security.
4. User Registration.
5. User Authentication.

Learning Outcomes

Intended Knowledge Outcomes

To be able to:

• Understand the fundamental principles of security.
• Understand the key security challenges faced by software applications.
• Reason about appropriate security techniques used to manage those security challenges.
• Select suitable programming practices when implementing security mechanisms.

Intended Skill Outcomes

To be able to:

• Implement solutions to key security issues using appropriate programming practices.
• Read and understand code written using different programming languages.
• Expand and extend existing software applications.
• Understand and problem solve programming errors.

Teaching Methods

Teaching Activities
Category Activity Number Length Student Hours Comment
Structured Guided LearningLecture materials112:0022:00Lecture follow-up with review of lecture materials and recordings.
Guided Independent StudyAssessment preparation and completion881:0088:00Summative Portfolio and Computer Assessment courseworks.
Scheduled Learning And Teaching ActivitiesLecture221:0022:00Lectures (in person).
Guided Independent StudyAssessment preparation and completion60:303:00Formative Canvas quiz on theoretical elements.
Scheduled Learning And Teaching ActivitiesPractical122:0024:00Practical learning with demonstrator support & drop-in surgery.
Structured Guided LearningStructured non-synchronous discussion121:0012:00Non-synchronous online discussion board with Q & A forum around lecture materials and assessment.
Guided Independent StudyIndependent study291:0029:00Background reading to reinforce and strengthen knowledge.
Total200:00
Teaching Rationale And Relationship

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.

Reading Lists

Assessment Methods

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

Other Assessment
Description Semester When Set Percentage Comment
Computer assessment1M60Single programming-based exercise.
Portfolio1M40Set of short programming-based exercises.
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
Computer assessment1MCanvas quiz on theoretical elements.
Assessment Rationale And Relationship

This is a largely practical subject area and therefore merits summative assessment via digital programming-based coursework coupled with formative assessment of underpinning security theory via a Canvas-based quiz.

The summative portfolio component will assess students’ programming and problem-solving skills when choosing and implementing software-based solutions in different programming languages to several stand-alone real-world security challenges. Students will be expected to select and submit a number of their solutions for assessment.

The summative computer assessment coursework will assess students’ programming best-practices and skills when implementing and combining security solutions within a larger single web-based computer application scenario.

The formative Canvas quiz assessment will assess students’ understanding of the underpinning lecture material including the fundamental principles of security, the key security challenges faced by software applications, appropriate security techniques used to manage those security challenges and suitable programming practices when implementing security mechanisms.

Timetable

Past Exam Papers

General Notes

N/A

Welcome to Newcastle University Module Catalogue

This is where you will be able to find all key information about modules on your programme of study. It will help you make an informed decision on the options available to you within your programme.

You may have some queries about the modules available to you. Your school office will be able to signpost you to someone who will support you with any queries.

Disclaimer

The information contained within the Module Catalogue relates to the 2025 academic year.

In accordance with University Terms and Conditions, the University makes all reasonable efforts to deliver the modules as described.

Modules may be amended on an annual basis to take account of changing staff expertise, developments in the discipline, the requirements of external bodies and partners, staffing changes, and student feedback. Module information for the 2026/27 entry will be published here in early-April 2026. Queries about information in the Module Catalogue should in the first instance be addressed to your School Office.