Compulsory modules

Programming Fundamentals (15 credits)

The aims of this module are to:

  • Map fundamental computer science concepts to their realisation in a modern programming
    language.
  • Explain the execution of individual instructions in a modern programming language.
  • Explain how a version control repository supports software development.

Database Systems (15 credits)

The aims of this module are to:

  • Develop students' ability to reason about data
  • Engage in the full lifecycle of a database including abstract modelling, concrete realisation, CRUD interaction, and privilege allocation.

Algorithms and Data Structures (15 credits)

The aims of this module are to:

  • Enable students to reason about computational complexity in the context any given computational problem.
  • Equip students to interact with the libraries of a modern programming language, in order to harness appropriate algorithms and data structures in the solution of a computational problem.
  • Develop students' ability to read and construct pseudo code.

Software Engineering (15 credits)

The aims of this module are to:

  • introduce the tools, techniques, terminology and objectives of modern software engineering practice.
  • compare and contrast the significant characteristics and features of modern software engineering paradigms.
  • provide an environment for students to collaborate on a software engineering development.