Computer Science Topics for Software Engineers

Undergraduate | 2026

Course page banner
area/catalogue icon
Area/Catalogue
COMP 3001
Course ID icon
Course ID
200135
Level of study
Level of study
Undergraduate
Unit value icon
Unit value
6
Course level icon
Course level
3
Study abroad and student exchange icon
Inbound study abroad and exchange
Inbound study abroad and exchange
The fee you pay will depend on the number and type of courses you study.
Yes
University-wide elective icon
University-wide elective course
Yes
Single course enrollment
Single course enrolment
Yes
alt
Note:
Course data is interim and subject to change

Course overview

The course equips students with essential computer science knowledge required for addressing practical software engineering challenges. Students will acquire proficiency in linear algebra, set theory, set operations, first-order logic, formal languages, finite automata, Turing machines, and computational complexity. Additionally, students will develop practical skills for applying these formal concepts to solve real-world software engineering problems.

Course learning outcomes

  • Apply propositional logic and algebra in the development of robust code
  • Apply automata and language theory to improve the quality and reliability of code
  • Apply computational theory to describe a model and capability of a software algorithm

Prerequisite(s)

Corequisite(s)

N/A

Antirequisite(s)

N/A