Computer Science involves the study of all aspects of computers: their technology, algorithms and programming, underlying theory, and their application.

The Bachelor of Computer Science (BCompSc) is a focussed programme of computing papers - see the Prescriptions for the BCompSc for the required papers.

Computer Science is available as a first major for the Bachelor of Computing and Mathematical Sciences with Honours (BCMS(Hons)) and the Bachelor of Science (BSc). Computer Science was available as a first major for the Bachelor of Science (Technology) (BSc(Tech)). Computer Science may also be included as a second major or minor in other undergraduate degrees, subject to approval of the Division in which the student is enrolled.

To complete Computer Science as a single major for the BCMS(Hons), BSc or the BSc(Tech), students must gain 135 points from papers listed for Computer Science, including 105 points above 100 level, and 45 points above 200 level.

BCMS(Hons) and BSc students must complete COMPX101 or ENGEN103, COMPX102, COMPX201, COMPX202, COMPX234, COMPX225 or COMPX216, COMPX361, and at least 15 points from List B. Students in the BCMS(Hons) will also need to take at least 60 points in the subject of Computer Science at 500 level, including COMPX520.

BSc(Tech) students must complete COMPX101 or ENGEN103, COMPX102, COMPX201, COMPX202, COMPX203, COMPX204, COMPX301 or COMPX361 and at least 15 points from List B.

To complete Computer Science as part of a double major for the BCMS(Hons), BSc or other undergraduate degree, students must gain 120 points from papers listed for Computer Science, including 90 points above 100 level, and 30 points above 200 level. Students must complete COMPX101 or ENGEN103, COMPX102, COMPX201, COMPX202, COMPX234, COMPX225 or COMPX216, COMPX361 and 15 points from List B. Students in the BCMS(Hons) will also need to take at least 60 points in the subject of their first major at 500 level including COMPX520 if Computer Science is the first major.

The List B papers are: COMPX301, COMPX304, COMPX307, COMPX310, COMPX322, COMPX323, COMPX341, COMPX349, and ENGEE319.

To complete a minor in Computer Science, students must complete 60 points from the papers listed for Computer Science. Students must complete COMPX101 and COMPX102. At least 30 points must be above 100 Level. CSMAX170, COMPX251, COMPX252 and CSMAX270 cannot be counted towards the minor. The minor in Computer Science is not available in the BCompSc.

Note:

There will be no new enrolments in the following programmes: BSc(Tech) in Computer Science, BCMS(Hons) in Computer Science, BCompSc with a specified programme in Embedded Systems, and BCompSc with a specified programme in Data Analytics. Students enrolled in these programmes previously should consult the Division of Health, Engineering, Computing and Science for programme advice.

Other qualifications

Prescriptions for:

Computer Science papers

100 Level 200 Level 300 Level 500 Level 800 Level 900 Level
Code and paper title Points
COMPX101 Introduction to Programming right arrow

This paper introduces computer programming in C# - the exciting challenge of creating software and designing artificial worlds within the computer...

15 25A (Hamilton) & 25A (Online) & 25B (Hamilton) & 25B (Hamilton Waikato College) & 25B (Secondary School - Unistart) & 25X (Hainan University, Haikou China) & 25X (Hangzhou City University, Hangzhou China)
COMPX102 Object-Oriented Programming right arrow

This paper builds on introductory programming experience, and assumes a knowledge of basic programming techniques, which it expands on particularly...

15 25B (Hamilton) & 25B (Secondary School - Unistart) & 25B (Tauranga) & 25C (Hamilton Waikato College) & 25H (Hamilton) & 25X (Hainan University, Haikou China) & 25X (Hangzhou City University, Hangzhou China)
COMPX151 Exploring Innovative Technologies right arrow

This laboratory-based paper introduces a range of innovative technologies with applications across all disciplines. The hands-on laboratory programme...

15 25A (Hamilton) & 25B (Hamilton)
COMPX161 Introduction to the Web right arrow

This paper introduces the core Web technologies of HTML, CSS and JavaScript. Students will learn how to combine these technologies with design...

15 25B (Hamilton) & 25B (Hamilton Waikato College) & 25I (Hangzhou City University, Hangzhou China) & 25X (Hangzhou City University, Hangzhou China)
COMPX171 Introduction to Digital Professional Skills right arrow

This paper centres on Digital Professional Skills essential to succeed in a Digital and ICT Career. In this paper, students will be introduced to...

15 25B (Tauranga)
CSMAX170 Foundations in Computing and Mathematical Sciences right arrow

The objective of this paper is to provide students with the academic foundations for computing and mathematical sciences. The paper will cover the...

15 No occurrences
CSMAX175 Introduction to Cyber Security right arrow

This paper provides an introduction to Cyber Security through the exploration of concepts such as digital information, digital identities, digital...

15 25A (Hamilton) & 25A (Hamilton Waikato College) & 25A (Tauranga) & 25X (Hainan University, Haikou China)
DATAX111 Statistics for Science right arrow

An introductory paper in statistics that uses Microsoft Excel. Topics include the collection and presentation of data, hypothesis testing, confidence...

15 25B (Hamilton) & 25B (Tauranga) & 25C (Hamilton Waikato College)
DATAX121 Introduction to Statistical Methods right arrow

An introductory paper in statistics that uses R. Topics include the collection and presentation of data, hypothesis testing, confidence intervals...

15 25A (Hamilton) & 25A (Secondary School - Unistart) & 25G (Online) & 25X (Hainan University, Haikou China)
DIGIB101 The World of Digital Business right arrow

Information and communications technologies are fundamentally changing business operations. This paper introduces all aspects associated with the...

15 25B (Hamilton) & 25VB (National Economics University, Vietnam)
DSIGN125 Introduction to Communication Design Production right arrow

This paper enables students to perform basic computing operations and to operate software packages for the manipulation of visual images and text for...

15 25A (Hamilton) & 25A (Online) & 25A (Secondary School - Unistart) & 25X (Hangzhou City University, Hangzhou China)
ENGEN103 Engineering Computing right arrow

This paper introduces computer programming in languages such as the MATLAB and Python languages. It provides the basis for the programming skills...

15 25A (Hamilton) & 25A (Tauranga) & 25G (Hamilton) & 25X (Hainan University, Haikou China)
ENGEN111 Electricity for Engineers right arrow

Concepts underlying electricity such as current, voltage and power will be introduced, and apply these concepts to analyse electrical energy systems.

15 25B (Hamilton) & 25B (Tauranga) & 25X (Hamilton)
INDIP101 English for Academic Purposes right arrow

This module is part of a suite of four modules designed to develop English language skills for academic purposes as well as cultivate the study...

0 25A (Hamilton) & 25C (Hamilton)
INDIP102 Positive Learning Practices right arrow

This module is part of a suite of four modules designed to develop English language skills for academic purposes as well as cultivate the study...

0 25A (Hamilton) & 25C (Hamilton) & 25W (Hamilton)
INDIP103 Academic Skills and Practices right arrow

This module is part of a suite of four modules designed to develop English language skills for academic purposes as well as cultivate the study...

0 25A (Hamilton) & 25B (Hamilton)
INDIP104 Critical Reflection right arrow

This module is part of a suite of modules designed to develop English language skills for academic purposes as well as cultivate the study skills...

0 25B (Hamilton) & 25C (Hamilton)
MATHS135 Discrete Structures right arrow

An introduction to a number of the structures of discrete mathematics with wide applicability in areas such as: computer logic, analysis of...

15 25B (Hamilton) & 25B (Secondary School - Unistart) & 25B (Tauranga) & 25C (Hamilton Waikato College) & 25X (Hainan University, Haikou China)
MATHS165 General Mathematics right arrow

An introduction to algebra, calculus, and their applications for students without NCEA Level 3 Mathematics. Students who meet the prerequisites of...

15 25A (Hamilton) & 25B (Hamilton Waikato College)
MATHS168 Preparatory Mathematics right arrow

This paper covers basic algebraic concepts, along with an introduction to statistics and calculus. It is intended for those who wish to improve their...

15 25A (Hamilton) & 25A (Hamilton Waikato College) & 25B (Hamilton) & 25JS (Hamilton)
MGSYS101 Digital Business and Supply Chain Management right arrow

This paper explores the dual concepts of digital business and supply chain management. The interactive lectures help in developing critical thinking...

15 25A (Hamilton) & 25A (Tauranga) & 25B (Hamilton) & 25VA (Internet National Economics University, Vietnam) & 25X (Hangzhou City University, Hangzhou China)
Code and paper title Points
COMPX201 Data Structures and Algorithms right arrow

This paper covers object-oriented software development in Java focusing on abstract data types and dynamic data structures, while introducing design...

15 25A (Hamilton) & 25A (Tauranga) & 25X (Hainan University, Haikou China) & 25X (Hangzhou City University, Hangzhou China)
COMPX202 Mobile Computing and Software Architecture right arrow

This paper continues object-oriented software development in Java, but also touching on alternative approaches. It introduces software development...

15 25B (Hamilton) & 25B (Tauranga) & 25X (Hainan University, Haikou China) & 25X (Hangzhou City University, Hangzhou China)
COMPX203 Computer Systems right arrow

This paper provides an overview of the operation of computer systems. The central theme is the way in which the hardware and software co-operate to...

15 No occurrences
COMPX204 Practical Networking and Cyber Security right arrow

This paper provides an overview of the technologies and protocols involved in computer communications and cyber security. Practical work includes...

15 No occurrences
COMPX216 Artificial Intelligence right arrow

This paper provides an introduction to artificial intelligence, including techniques for knowledge representation and reasoning, searching and...

15 25A (Hamilton) & 25A (Tauranga) & 25X (Hainan University, Haikou China)
COMPX221 Programming for Creative Industries right arrow

A fundamental grounding in object-oriented programming that uses Processing software to creative visual outputs for creative industries.

15 25A (Hamilton)
COMPX222 Web Development right arrow

This paper provides a broad overview of the principles and technologies used in Web Applications, with practical experience of client-side and...

15 25X (Hangzhou City University, Hangzhou China)
COMPX225 Introduction to Databases and Web Development right arrow

This paper provides a broad overview of the principles and technologies used in creating Web Applications, with practical experience of client-side...

15 25B (Hamilton) & 25B (Tauranga) & 25X (Hainan University, Haikou China)
COMPX230 Computer Hardware and Microprocessors right arrow

A study of microprocessors, starting with how to design and realise a microprocessor using a hardware description language, and further, how the...

15 25B (Hamilton)
COMPX234 Systems and Networks right arrow

A study on principles of operating systems and networking and how they are applied to existing systems. It begins with the principles of operating...

15 25A (Hamilton) & 25A (Tauranga) & 25X (Hainan University, Haikou China)
COMPX235 Cybersecurity Engineering right arrow

A study of cyber security principles supported by relevant examples and hands-on work to develop cyber security skills.

15 25B (Hamilton)
COMPX241 Software Engineering Design 1 right arrow

This paper covers object-oriented software development in Java focusing on abstract data types and dynamic data structures, while introducing design...

15 25A (Hamilton)
COMPX242 Software Engineering Design 2 right arrow

This paper continues object-oriented software development in Java introducing design methodologies in software architecture, detailed design, design...

15 25B (Hamilton) & 25B (Tauranga)
COMPX251 Applied Computing Tools 1 right arrow

This paper enables students to widen their experience of computer software using an intensive laboratory programme. Students select from a variety of...

15 25A (Hamilton) & 25B (Hamilton) & 25H (Hamilton) & 25X (Hangzhou City University, Hangzhou China)
COMPX252 Applied Computing Tools 2 right arrow

This paper provides an opportunity to explore several software applications in depth. It is based on an intensive laboratory programme, where...

15 25A (Hamilton) & 25B (Hamilton) & 25H (Hamilton)
COMPX271 Introduction to Software Development Methodologies right arrow

This paper focuses on current software development and IT Operations employed to improve software delivery, quality, and efficiency. In this paper...

15 25B (Tauranga)
COMPX278 Technology and Complex Problems right arrow

This paper centres on Complex Problem Solving in Context (e.g., within real world scenarios). In this paper, students will learn how to identify...

15 25H (Hamilton)
COMPX290 Directed Study right arrow

A directed study involving the design, implementation and testing of the solution to a hardware and/or software engineering problem and production of...

15 25X (Hamilton) & 25X (Tauranga)
CSMAX270 Cultural Perspectives for Computing and Mathematical Sciences right arrow

The paper provides students with an understanding of scientific and culture-specific perspectives on issues in computing and mathematical sciences...

15 25B (Hamilton) & 25B (Tauranga)
Code and paper title Points
COMPX301 Design and Analysis of Algorithms right arrow

This course is for students interested in the art and science of computer programming. It is concerned with advanced data structures and their...

15 25A (Hamilton)
COMPX304 Advanced Networking and Cyber Security right arrow

An advanced study of networking, leading to an introduction to cybersecurity. The networking component in the paper provides an in-depth, real-world...

15 25A (Hamilton)
COMPX307 Principles of Programming Languages right arrow

The design, implementation and use of programming languages, in particular the use of functional languages to implement imperative languages will be...

15 25B (Hamilton)
COMPX310 Machine Learning right arrow

This paper introduces Machine Learning (ML) which is the science of making predictions. ML algorithms strive to be fast and highly accurate, while...

15 25B (Hamilton) & 25X (Hainan University, Haikou China)
COMPX318 Mobile Computing and the Internet of Things right arrow

This paper teaches how to develop software for mobile devices and its interaction with the Internet of Things

15 25X (Hangzhou City University, Hangzhou China)
COMPX322 Advanced Web Development right arrow

This paper covers a range of topics relating to the development of web applications. These include the latest developments in HTML, CSS and...

15 25A (Hamilton) & 25A (Tauranga) & 25X (Hangzhou City University, Hangzhou China)
COMPX323 Advanced Database Concepts right arrow

This paper provides an introduction to the advanced features of database management systems. Students will learn to use and manipulate advanced...

15 25A (Hamilton)
COMPX324 User Experience Design right arrow

An introduction to the field of user experience - where students develop skills and techniques for the design and evaluation of interfaces for...

15 25B (Hamilton) & 25B (Tauranga) & 25X (Hangzhou City University, Hangzhou China)
COMPX326 Computer Vision right arrow

This paper provides an introduction to modern computer vision techniques based on deep learning methods.

15 25A (Hamilton)
COMPX328 Natural Language Processing right arrow

This paper provides an introduction to modern natural language processing techniques based on deep learning methods.

15 25A (Hamilton)
COMPX341 Software Engineering Methods right arrow

Software Engineering is the systematic design, construction, testing and maintenance of software systems. The various processes (and engineering...

15 25A (Hamilton)
COMPX344 Applied Computational Methods right arrow

This paper explores numerical methods with applications to real world problems. A verity of classes of problems will be introduced, and appropriate...

15 25X (Hainan University, Haikou China)
COMPX349 Embedded Systems right arrow

15 25B (Hamilton)
COMPX361 Logic and Computation right arrow

The syllabus includes: further development of predicate logic with application to program verification; mathematical induction including structural...

15 25B (Hamilton) & 25B (Tauranga) & 25X (Hainan University, Haikou China)
COMPX367 Computational Mathematics right arrow

Introduces numerical methods for solving various mathematical problems.

15 25B (Hamilton)
COMPX371 Computer Science Work Placement right arrow

This paper provides a full-immersion, authentic work experience that is relevant to a student's study, in a professional workplace.

30 25X (Hamilton)
COMPX374 Software Engineering Industry Project right arrow

Students work in small groups to engineer a prototype for a medium-sized software project. Following established software engineering design...

15 25B (Hamilton) & 25B (Tauranga)
COMPX390 Directed Study right arrow

A directed study involving the design, implementation and testing of the solution to a hardware and/or software engineering problem and production of...

15 25A (Hamilton) & 25A (Tauranga) & 25B (Hamilton) & 25B (Tauranga) & 25X (Hamilton) & 25X (Tauranga)
COMPX397 Work-Integrated Learning Directed Study right arrow

Students carry out an independent work-related project on an approved topic under staff supervision.

15 25A (Hamilton) & 25A (Tauranga) & 25B (Hamilton) & 25B (Tauranga) & 25X (Hamilton) & 25X (Tauranga)
COMPX398 Work-Integrated Learning Directed Study right arrow

Students carry out an independent work-related project on an approved topic under staff supervision.

30 25A (Hamilton) & 25A (Tauranga) & 25B (Hamilton) & 25B (Tauranga) & 25X (Hamilton) & 25X (Tauranga)
CSMAX300 Visual Data Communication right arrow

This paper focuses on the skills and knowledge for communicating with data. A variety of methods of communicating and presenting data will be covered.

15 25A (Hamilton)
ENGEE319 Smart Grids and the Internet of Things right arrow

This paper is concerned with the application of sensors and IoT to modern smart grid electrical power systems including; sensor interfacing, data...

15 25B (Hamilton)
Code and paper title Points
COMPX508 Malware Analysis right arrow

In this paper we will cover the cyber security topic of malware analysis to understand, analyse and detect malicious code. Students will also be...

15 25B (Hamilton)
COMPX511 Cyber Security Operations right arrow

This paper provides students with theoretical and practical skills to defend organisations against cyberattacks. Students will learn about threat...

15 25A (Hamilton)
COMPX515 Security for Advanced Networks right arrow

A study on Internet security, covering the most relevant attacking and mitigation strategies. Networks have evolved considerably in the last decade...

15 25B (Hamilton)
COMPX517 Vulnerability Analysis and Exploitation right arrow

This paper covers topics related to vulnerability analysis and exploitation. Selected vulnerabilities with a focus on memory corruption will be...

15 25A (Hamilton)
COMPX518 Cyber Security right arrow

This paper introduces the key topics in the important field of cyber security. It will cover various aspects of defensive, offensive and preventative...

15 25A (Hamilton)
COMPX519 Malware Analysis and Penetration Testing right arrow

This paper goes through two important aspects of Cyber Security. It first covers the defensive security techniques of malware analysis and then...

15 25B (Hamilton)
COMPX520 Dissertation right arrow

A directed study investigation and report on an approved project or study topic under the supervision of a lecturer. Students should obtain the...

45 25D (Hamilton) & 25I (Hamilton) & 25X (Hamilton)
COMPX521 Machine Learning Algorithms right arrow

This paper exposes students to selected machine learning algorithms and includes assignments that require the implementation of these algorithms.

15 25B (Hamilton)
COMPX523 Machine Learning for Data Streams right arrow

Data streams are everywhere, from F1 racing over electricity networks to news feeds. Data stream mining relies on and develops new incremental...

15 25A (Hamilton)
COMPX525 Deep Learning right arrow

This paper provides an introduction into Deep Learning, focussing on both algorithms and applications. It covers both the basics of Neural networks...

15 25A (Hamilton)
COMPX527 Secure Cloud Application Engineering right arrow

Software Engineering on the Cloud is extremely prevalent nowadays. In this paper, you will learn how to design, develop and test cloud-native...

15 25B (Hamilton)
COMPX532 Information Visualisation right arrow

This paper aims to provide an awareness of the potential offered by information visualisation techniques, a familiarity with the underlying concepts...

15 25A (Hamilton)
COMPX539 Usability Engineering right arrow

This paper covers the design and evaluation of interactive computer systems with a focus on user studies. Topics covered include: designing and...

15 25A (Hamilton)
COMPX546 Graph Theory right arrow

An introduction to graph theory and combinatorics, including network optimisation algorithms.

15 25A (Hamilton)
COMPX553 Extremely Parallel Programming right arrow

This paper covers advanced parallel programming for large-scale parallelism. A variety of programming techniques will be covered, with application to...

15 25A (Hamilton)
COMPX554 Specification Languages and Models right arrow

This paper deals with various aspects of modelling systems using advanced best practice methods from the software engineering field. It will...

15 25B (Hamilton)
COMPX555 Bioinformatics right arrow

An introduction to bioinformatics, open to students majoring in computer science or biology. It includes an overview of molecular biology, genomics...

15 No occurrences
COMPX560 Turing Topics in Computer Science right arrow

One or more special topics in computer science, at an advanced level.

15 25X (Hamilton) & 25X (Tauranga)
COMPX567 Advanced Computational Mathematics right arrow

This paper considers computational methods for solving various mathematical problems.

15 25B (Hamilton)
COMPX568 Programming for Industry right arrow

An examination of object-oriented programming and design. Key principles of object-oriented programming: typing, encapsulation, inheritance...

30 25A (Hamilton) & 25C (Hamilton)
COMPX569 Programming with Web Technologies right arrow

An examination of developing web-based applications. Client-side technologies: HTML, CSS and Javascript. Server-side technologies to support dynamic...

30 25A (Hamilton) & 25C (Hamilton)
COMPX574 Open Source Software Project right arrow

Students work in small groups to develop features for existing open-source projects. They engage with the project community, practice code review...

15 25B (Hamilton)
COMPX575 Programming Tools and Techniques right arrow

A paper in programming techniques applicable to a range of research applications in Computer Science.

15 25A (Hamilton) & 25B (Hamilton)
COMPX576 Programming Project right arrow

A paper where research programming techniques are applied to a specific (elective) field in Computer Science.

15 25A (Hamilton) & 25B (Hamilton)
COMPX577 Report of an Investigation right arrow

A directed study involving the design, implementation and testing of the solution to a hardware and/or software engineering problem and production of...

15 25A (Hamilton) & 25A (Tauranga) & 25B (Hamilton) & 25B (Tauranga)
COMPX581 Research Methods right arrow

This paper aims to introduce students to the assumptions underlying the different methodologies and methods for performing research in design and...

30 25A (Hamilton)
COMPX591 Dissertation right arrow

A report on the findings of a theoretical or empirical investigation.

30 25I (Hamilton) & 25X (Hamilton) & 25X (Tauranga)
COMPX592 Dissertation right arrow

A report on the findings of a theoretical or empirical investigation.

60 25X (Hamilton) & 25X (Tauranga)
COMPX593 Computer Science Thesis right arrow

An externally examined piece of written work that reports on the findings of supervised research.

90 25X (Hamilton)
COMPX594 Computer Science Thesis right arrow

An externally examined piece of written work that reports on the findings of supervised research.

120 25X (Hamilton) & 25X (Tauranga)
CSMAX570 Preparing for Internship right arrow

This paper will enable learners to develop the key soft and transferable skills and competencies important to be work ready and prepared for the...

15 25A (Hamilton) & 25B (Hamilton)
CSMAX596 Computer Science Internship right arrow

This internship enables the development of practical knowledge and hands-on experience through a supervised internship in the IT industry.

60 25A (Block) & 25B (Block) & 25C (Block) & 25X (Block)
GEOGY538 Automated Spatial Analysis using Geographic Information Systems right arrow

Automated GIS, using programming or scripts, are extremely powerful compared to the 'point and click' environment, and are the most practical method...

15 25X (Block)
GEOGY558 Applied Geographic Information Systems for Research and Planning right arrow

GIS is used widely in a range of industries and government agencies, and graduates competent in GIS are sort after for employment. This paper is...

15 25A (Hamilton)
LEGAL526 Legal Aspects of Cyber Security right arrow

This research seminar paper provides an advanced-level examination of critical issues regarding the legal aspects of Cyber Security. Students...

30 25A (Online)
RPLCR570 Recognition of Prior Learning - Professional Learning in an ICT Setting right arrow

This paper allows students to submit a current CV for assessment for recognition of prior learning undertaken in a professional ICT setting, along...

15 25A (Hamilton) & 25B (Hamilton)
Code and paper title Points
COMPX800 Computer Science MPhil Thesis right arrow

120 25I (Hamilton) & 25X (Hamilton) & 25X (Tauranga)
Code and paper title Points
COMPX900 Computer Science PhD Thesis right arrow

120 25I (Hamilton) & 25J (Hamilton) & 25K (Hamilton) & 25X (Hamilton) & 25X (Tauranga)
COMPX901 Computer Science Creative Practice PhD Thesis right arrow

120 25I (Hamilton) & 25J (Hamilton) & 25K (Hamilton) & 25X (Hamilton)
time

2025 Catalogue of Papers information current as of 23 Dec 2024 01:00am