CSC2031 : Security Programming
- Offered for Year: 2024/25
- 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 |
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. Authentication
3. Access Control
4. Cryptography
5. Software Security
6. Web Security
Teaching Methods
Teaching Activities
Category | Activity | Number | Length | Student Hours | Comment |
---|---|---|---|---|---|
Scheduled Learning And Teaching Activities | Lecture | 22 | 1:00 | 22:00 | Traditional face-to-face lectures. |
Guided Independent Study | Assessment preparation and completion | 55 | 1:00 | 55:00 | Programming based coursework |
Structured Guided Learning | Lecture materials | 2 | 1:00 | 2:00 | Non-synchronous lecture material to support lectures |
Guided Independent Study | Assessment preparation and completion | 1 | 2:00 | 2:00 | Examination |
Guided Independent Study | Assessment preparation and completion | 12 | 1:00 | 12:00 | Exam revision |
Scheduled Learning And Teaching Activities | Practical | 10 | 2:00 | 20:00 | Practical learning with demonstrator support & drop-in surgery. |
Structured Guided Learning | Structured non-synchronous discussion | 11 | 1:00 | 11:00 | Non-synchronous online discussion board with Q & A forum around lecture materials and assessment |
Guided Independent Study | Independent study | 15 | 1:00 | 15:00 | Lecture follow-up |
Guided Independent Study | Independent study | 61 | 1:00 | 61:00 | Background reading |
Total | 200:00 |
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
Exams
Description | Length | Semester | When Set | Percentage | Comment |
---|---|---|---|---|---|
Digital Examination | 120 | 1 | A | 40 | N/A |
Other Assessment
Description | Semester | When Set | Percentage | Comment |
---|---|---|---|---|
Computer assessment | 1 | M | 60 | Programming-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 Examination | 1 | M | Canvas 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
Timetable
- Timetable Website: www.ncl.ac.uk/timetable/
- CSC2031's Timetable