Skip to main content

Module

CSC2031 : Security and Programming Paradigms

  • Offered for Year: 2020/21
  • Module Leader(s): Dr John Mace
  • Lecturer: Dr Charles Morisset
  • Owning School: Computing
  • Teaching Location: Newcastle City Campus
Semesters
Semester 1 Credit Value: 20
ECTS Credits: 10.0

Aims

To explore different security challenges and programming paradigms. All computer scientist graduates should have a good understanding of the issues and practicalities of security and the adoption of various programming paradigms when designing systems and resolving problems. This module gives students first-hand experience of using a range of modern programming paradigms and implementing mechanisms which help address key security issues related to software applications and associated data.

Outline Of Syllabus

This module explores several security topics using different programming paradigms. We will consider the characteristics and implications of prevalent programming paradigms; the imperative paradigm including structured, procedural and object-oriented programming; the declarative paradigm including functional, logic and database query programming; as well as other common paradigms such as scripting. The security topics include input validation, code injection, access control, authentication and quality of code. We will investigate existing code including reverse engineering to enable more secure development.

Teaching Methods

Please note that module leaders are reviewing the module teaching and assessment methods for Semester 2 modules, in light of the Covid-19 restrictions. There may also be a few further changes to Semester 1 modules. Final information will be available by the end of August 2020 in for Semester 1 modules and the end of October 2020 for Semester 2 modules.

Teaching Activities
Category Activity Number Length Student Hours Comment
Structured Guided LearningLecture materials40:151:00Introduction via online video, with topics, assessment, activities, programming tool etc
Structured Guided LearningLecture materials40:151:00Weekly online message
Structured Guided LearningLecture materials201:0020:00Lecture-based materials, practical-based videos, podcast, quizzes and reading materials.
Guided Independent StudyAssessment preparation and completion401:0040:00Lecture follow-up
Guided Independent StudyAssessment preparation and completion101:0010:00Practical/lab report to accompany programming-based coursework.
Guided Independent StudyAssessment preparation and completion401:0040:00Programming-based coursework
Scheduled Learning And Teaching ActivitiesPractical41:306:00PiP in computer lab with practical teaching and drop-in surgery. Online equivalent provided
Structured Guided LearningStructured non-synchronous discussion51:005:00Non-sync discussion board with Q & A forum around lecture materials & assessments
Structured Guided LearningStructured non-synchronous discussion40:151:00Discussion board on module content and delivery
Scheduled Learning And Teaching ActivitiesWorkshops31:304:30PiP underpining and enrichment sessions
Scheduled Learning And Teaching ActivitiesDrop-in/surgery40:302:00PiP support with lecture/assessment material & drop-in surgery activities.
Guided Independent StudyIndependent study169:3069:30Background reading
Total200:00
Teaching Rationale And Relationship

Teaching will follow a blended learning approach where a mix of online and face-to-face lecture type activities (circumstances permitting) will present the basic material, followed by substantial practical time during which the students will develop the skills to apply the techniques introduced through the lecture material.

Assessment Methods

Please note that module leaders are reviewing the module teaching and assessment methods for Semester 2 modules, in light of the Covid-19 restrictions. There may also be a few further changes to Semester 1 modules. Final information will be available by the end of August 2020 in for Semester 1 modules and the end of October 2020 for Semester 2 modules.

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

Other Assessment
Description Semester When Set Percentage Comment
Practical/lab report1M20Practical/lab report of around 1000 words
Computer assessment1M80Programming-based coursework
Assessment Rationale And Relationship

This is practical subject area being taught using a blended learning approach and merits assessment via coursework components.

Reading Lists

Timetable