Qualification Regulations
Part I
These regulations are to be read in conjunction with all other Statutes and Regulations of the University including General Regulations for Undergraduate Degrees, Undergraduate Diplomas, Undergraduate Certificates, Graduate Diplomas, and Graduate Certificates.
Part II
Admission
1. Admission to the Degree of Bachelor of Information Sciences requires that the candidate will meet the University admission requirements as specified.
Qualification requirements
2. Candidates for the Degree of Bachelor of Information Sciences shall follow a flexible programme of study, which shall consist of courses totalling at least 360 credits, comprising:
(a) not more than 165 credits at 100 level;
(b) at least 75 credits at 300 level;
and including:
(c) core courses as set out in Schedule A for the Qualification;
(d) at least one major or joint major;
(e) attending field trips, workshops, tutorials and laboratories as required.
3. Candidates who, in the opinion of the Academic Board, have passed with sufficient merit an NZQF recognised Level 6 diploma in a relevant subject, or equivalent, may be granted specified or unspecified credit not exceeding a total of 240 credits. The credit granted will be determined by Academic Board after taking into account the areas of study, the quantum of study and the standard of pass attained.
4. Candidates who, in the opinion of the Academic Board, have passed with sufficient merit an NZQF recognised Level 5 diploma in a relevant subject, or equivalent, may be granted specified or unspecified credit not exceeding a total of 60 credits. The credit granted will be determined by Academic Board after taking into account the areas of study, the quantum of study and the standard of pass attained.
Specialisations
5. Candidates may complete a major by fulfilling the requirements for a major or joint major as set out in Schedule B for the Qualification.
6. Majors available are: Computer Science, Data Science, Information Technology and Information Systems.
7. Joint Major available is Software Engineering.
8. Candidates may complete a double major in the qualification subject to the following:
(a) the qualification requirements regarding core courses are met;
(b) the requirements of both majors are met.
(c) Notwithstanding Regulation 8(b), candidates completing a double major are required to complete a capstone course from one of the majors; the other capstone course may be waived.
(d) A joint major may not be included as part of a double major.
9. Candidates may include a minor in the qualification subject to the following:
(a) the minor must be in a different subject area from the major;
(b) no course may be credited to both a major and a minor;
(c) the minor may be included from any undergraduate degree within the University for which recognised minors are specified;
(d) where the minor is from another undergraduate degree the regulations of that programme for the minor will apply.
10. Minors available within the Degree of Bachelor of Information Sciences are: Business, Computer Science, Data Science, Games Programming, Information Technology, and Information Systems; the requirements for which are specified in Schedule B for the Qualification.
Completion requirements
11. Any timeframes for completion as outlined in the General Regulations for Undergraduate Degrees, Undergraduate Diplomas, Undergraduate Certificates, and Graduate Diplomas and Graduate Certificates will apply.
12. Candidates may be graduated when they meet the Admission, Qualification and Academic requirements within the prescribed timeframes; candidates who do not meet the requirements for graduation may, subject to the approval of Academic Board, be awarded either the Certificate in Science and Technology or the Diploma in Science and Technology should they meet the relevant Qualification requirements.
Unsatisfactory academic progress
13. The general Unsatisfactory Academic Progress regulations will apply.
Transitional provisions
14. Subject to any Maximum Time to Completion regulations and the Abandonment of Studies provisions specified in the Part I regulations for the degree, all candidates who commenced study towards the Bachelor of Information Sciences prior to 1 January 2022 will be permitted to substitute 159.171, if already completed, for 159.100 or 159.101, and 159.172, if already completed, for 159.102, until 31 December 2026.
15. Subject to any Maximum Time to Completion and the Abandonment of Studies provisions specified in the Part I regulations for the degree, candidates enrolled in the Bachelor of Information Sciences prior to 1 January 2024 may substitute 161122 if successfully completed for 297101. Candidates enrolled in the Information Technology, Software Engineering or Data Science Majors and/or the Data Science Minor prior to 1 January 2024 may substitute 158222 if successfully completed for 297201 and 158333 if successfully completed for 297301.
16. These transition arrangements expire 31 December 2028.
17. Subject to any Maximum Time to Completion and the Abandonment of Studies provisions specified in the Part I regulations for the degree, candidates enrolled in the Bachelor of Information Sciences (Computer Science) prior to 1 January 2025 may substitute 159356 if successfully completed for 159333. Candidates enrolled in the Data Science major may substitute 158383 if successfully completed for 159333. Candidates enrolled in the Information Technology may substitute 158383 if successfully completed for any 300-level within the Information Technology Schedule they have not taken.
18. These transition arrangements expire 31 December 2028.
Schedule for the Bachelor of Information Sciences
Course planning key
- Prerequisites
- Courses that need to be completed before moving onto a course at the next level. For example, a lot of 200-level courses have 100-level prerequisite courses.
- Corequisites
- Courses that must be completed at the same time as another course are known as corequisite courses.
- Restrictions
- Some courses are restricted against each other because their content is similar. This means you can only choose one of the offered courses to study and credit to your qualification.
Key terms for course planning
- Courses
- Each qualification has its own specific set of courses. Some universities call these papers. You enrol in courses after you get accepted into Massey.
- Course code
- Each course is numbered using 6 digits. The fourth number shows the level of the course. For example, in course 219206, the fourth number is a 2, so it is a 200-level course (usually studied in the second year of full-time study).
- Credits
- Each course is worth a number of credits. You combine courses (credits) to meet the total number of credits needed for your qualification.
- Specialisations
- Some qualifications let you choose what subject you'd like to specialise in. Your major or endorsement is what you will take the majority of your courses in.
Schedule A: Core courses
Course code: 247112 Science and Sustainability for ICT credits 15
The pursuit of environmental sustainability is a complex societal issue. This is a problem-based course, where students will develop their critical thinking, communication and information literacy and management skills as they evaluate interdisciplinary approaches to the contemporary sustainability challenge of climate action. Students will explore the intersection of science and community through exemplars of partnership between research and Te Ao Māori (the Māori world) in the context of land, water and wellbeing in Aotearoa New Zealand.
View full course detailsCourse code: 159100 Programming for Engineering and Technology credits 15
This course provides an introduction to computer programming for Technology and Engineering disciplines. The language is C++ which is a "real world" language heavily used in games, real-time applications and the control of devices. The course guides students through all the steps needed to write, compile and debug simple C++ programs with lots of practical examples. No previous programming experience is required.
View full course detailsCourse code: 159101 Applied Programming credits 15
The focus of this course is on problem solving and the design of logical and efficient programming solutions. It is an applied course with an emphasis on software construction using basic algorithmic methods and simple data structures. The course introduces the C++ programming language and is an essential preparation for advanced programming courses.
View full course detailsCourse code: 161111 Applied Statistics credits 15
Statistical literacy, the ability to understand and reason with statistics and data, is becoming increasingly important as our world becomes more and more data-rich. This course focuses on developing statistical literacy in real-world contexts. We teach students to use software (Excel and RStudio) to summarise, display and analyse data. We explore data collection techniques including sampling methods and experimental design. We introduce statistical inference methods (confidence intervals, hypothesis testing and regression) with an emphasis on communicating results in context.
View full course detailsCourse code: 297101 Statistical Data Science credits 15
An introduction to computer programming and statistics for transforming, visualising and modelling data to discover information and support decision making. A practical approach to analysing New Zealand data includes data cleaning, statistical summaries, data wrangling, visualisation and predictive modelling. Includes an exploration of the statistical ideas of sampling, probability and inference as well as modern programming tools emphasising reproducibility.
View full course details15 credits from
157.3xx, 158.3xx, 159.3xx, 160.3xx, 161.3xx, 297.3xx
For the major in Computer Science or for the joint major in Software Engineering (Choose 15 credits from)
Course code: 159102 Computer Science and Programming credits 15
This course advances the programming knowledge to include abstract data types, recursion, pointers, and the foundations of object-oriented programming. Foundational Computer Science topics are also covered including bits, bytes, twos complement arithmetic, gates, logic circuits and an introduction to assembler programming.
View full course detailsFor the majors in Computer Science or Data Science, or for the joint major in Software Engineering (Choose 15 credits from)
Course code: 160101 Calculus credits 15
A course focusing on the fundamental techniques and applications of calculus including differentiation and integration of functions of one real variable, differential equations, numerical methods, and an introduction to power series with applications to mathematical models. 160.101, alongside 160.102, forms a foundation for further study in mathematics. It is essential for students intending to study Mathematics, Physics, Food Technology or Engineering, or for anyone who wants a strong mathematical component to their degree.
View full course detailsCourse code: 160102 Algebra credits 15
A course focusing on the fundamental techniques and applications of linear algebra including vector and matrix algebra, vector representation of lines and planes, projections, Gaussian elimination, eigenvectors and complex numbers. 160.102, alongside 160.101, forms a foundation for further study in mathematics. It is essential for students intending to study Mathematics, Physics, Food Technology or Engineering, or for anyone who wants a strong mathematical component to their degree.
View full course detailsCourse code: 160105 Methods of Mathematics credits 15
An introductory course designed to increase the confidence of students in handling mathematical concepts and skills. Content includes algebraic skills, functions and graphs, and an introduction to calculus.
View full course detailsFor the majors in Information Systems or Information Technology (Choose at least 30 credits from)
Course code: 157151 Living and Working with Technology credits 15
An introductory study of the roles and applications of information systems in organisations and society.
View full course detailsCourse code: 158100 Information Technology Principles credits 15
This course introduces students to concepts and theories in preparation of advanced Information Technology (IT) courses. Students gain foundations in programming, non-relational databases, user interface design, system analysis and testing, along with the impact of IT on society. Hands-on explorations form an important component of this course.
View full course detailsCourse code: 158120 Web-based IT Fundamentals credits 15
In this course, students study how key information technology components combine to form complex information technology solutions. This includes analysis and experimentation with relational databases, web technologies, programming and networking.
View full course detailsSchedule B: Specialisations
Majors
Computer Science (120 credits)
Course code: 159201 Algorithms and Data Structures credits 15
An introduction to the analysis and implementation of algorithms and data structures including linear data structures, trees, graphs, hash tables, searching algorithms, sorting algorithms, optimization problems and complexity analysis. The course includes a significant practical component covering the implementation and application of important data structures and algorithms.
View full course detailsCourse code: 159234 Object-Oriented Programming credits 15
An introduction to the principles of object-oriented programming. It covers both object-oriented programming techniques and their application to program design including classes, objects and objects lifecycle, abstraction, encapsulation, inheritance, polymorphism and generic programming, as well as some advanced programming features. The course includes a significant practical component involving designing and implementing object-oriented programs in Java.
View full course detailsCourse code: 159235 Programming for Computer Graphics credits 15
An introduction to the programming principles, methods and techniques of computer graphics. The course covers general graphics methods and techniques, graphics transformations, drawing algorithms, 3D rendering and animation. These are implemented using basic approaches as well as modern shader-based pipelines.
View full course detailsCourse code: 159236 Embedded Programming credits 15
A study of embedded programming using low-level programming languages. The course covers the hardware architecture of an embedded system and the techniques needed to write programs for simple peripherals such as switches, LEDs, timers and accelerometers.
View full course detailsCourse code: 159251 Software Engineering Design and Construction credits 15
A study of techniques, methods and tools used to design and construct high-quality software systems.
View full course detailsCourse code: 159261 Games Programming credits 15
An exploration of a range of essential topics for implementing computer games including fundamental computer graphics, games software architecture and game physics systems. The course contains a significant practical computer lab component where students are guided through the games development process.
View full course detailsCourse code: 159272 Programming Language Paradigms credits 15
An introduction to different programming paradigms with a focus on the functional paradigm – lists, recursion, lazy-evaluation, higher-order functions, currying and lambda expressions. The course includes a significant practical component designing and implementing functional solutions to problems using both pure and multi-paradigm languages.
View full course detailsCourse code: 159302 Artificial Intelligence credits 15
An advanced study of the principles and techniques used in developing Artificial Intelligence applications. The course includes the implementation and application of a range of AI methods including state-space representation and search, knowledge representation, constraint satisfaction, game playing, logic systems and machine learning.
View full course detailsCourse code: 159333 Programming Project credits 15
A capstone programming project for students in their final year of study. Students will develop a piece of software or conduct a research project under the supervision of an academic staff member. Students must produce a written technical report and give an oral presentation demonstrating their work.
View full course detailsCourse code: 159336 Mobile Application Development credits 15
The course covers many practical aspects of designing, creating, testing and publishing mobile applications. Students will develop mobile applications using a real software development toolkit and have the option of publishing their applications to an app marketplace.
View full course detailsCourse code: 159341 Programming Languages, Algorithms and Concurrency credits 15
Advanced study in models of computation, programming languages and algorithms with a specific focus on concurrent programming. The course includes models of computation, programming language paradigms, programming language design, algorithm analysis, processes, threads, synchronisation and parallel programming.
View full course detailsCourse code: 159342 Operating Systems and Networks credits 15
A detailed study of operating systems and network communication protocols. The course covers the technologies that underpin modern computer systems including the architecture of operating systems and their structures and methods along with computer network design, protocols and associated technologies.
View full course detailsCourse code: 159352 Advanced Web Development credits 15
A study of the programming and scripting languages, frameworks and tools used to develop web and distributed applications with a consideration of the security issues involved in these technologies.
View full course detailsCourse code: 159361 Advanced Games Programming credits 15
This course continues the study of games programming by exploring the development of computer games using a modern game engine. The development of games and specific game systems within a modern architecture are covered with a significant practical component.
View full course detailsData Science (135 credits)
Compulsory courses
Course code: 158337 Database Development credits 15
A study of enterprise data models, including how data storage and retrieval methods have changed over time. Modern techniques for handling relational and non-relational data and their implications in transactional and analytical processing are evaluated. Students will gain practical skills in designing, creating and querying databases using database management systems.
View full course detailsCourse code: 297201 Data Wrangling and Machine Learning credits 15
An introduction to the data science workflow involving the acquisition, processing, transformation and integration of data from disparate sources having inherently different data structures, from which actionable insights can be extracted. Entry-level machine learning and statistical techniques for analysing and extracting knowledge from data will be covered. Particular emphasis will be placed on attaining competency in using a high-level programming language for conducting data-driven problem solving and appreciating the necessary agility such tools afford.
View full course detailsCourse code: 297301 Applied Machine Learning and Big Data Processing credits 15
An in-depth exploration of methods for developing intuition and insights about data that enables effective problem formulation and its solution through data-driven methods. A broad range of advanced machine learning and data mining algorithms will be used to build predictive models from real-world contexts. A particular emphasis will be on developing data-products, rapid prototyping and effectively communicating their value through visual storytelling and interpretable summaries. Practical skills for processing large datasets will be taught.
View full course detailsSubject Courses
At least 30 credits from
Any 161.2xx Courses
At least 15 credits from
Any 161.3xx courses
At least 15 credits from
Course code: 158258 Web Development credits 15
An introduction to web-based application development. Students will gain practical experience in the use of modern techniques relevant to the design and development of web-based systems.
View full course detailsCourse code: 159201 Algorithms and Data Structures credits 15
An introduction to the analysis and implementation of algorithms and data structures including linear data structures, trees, graphs, hash tables, searching algorithms, sorting algorithms, optimization problems and complexity analysis. The course includes a significant practical component covering the implementation and application of important data structures and algorithms.
View full course detailsAt least 30 credits from
Course code: 158326 Software Construction credits 15
An advanced study of methods used to model, design, build and test robust software artefacts. The course provides an in-depth study of multiple techniques to support software design and implementation. It takes a practical approach using current methods and tools.
View full course detailsCourse code: 158335 The Internet of Things and Cloud Computing credits 15
This course involves participants in solving problems whose solutions require active, sensing and connected “things” augmented with Cloud Computing capabilities. Students will design and implement things that participate in the Internet of Things (IoT) and Cloud Computing environments.
View full course detailsCourse code: 159302 Artificial Intelligence credits 15
An advanced study of the principles and techniques used in developing Artificial Intelligence applications. The course includes the implementation and application of a range of AI methods including state-space representation and search, knowledge representation, constraint satisfaction, game playing, logic systems and machine learning.
View full course detailsCourse code: 159333 Programming Project credits 15
A capstone programming project for students in their final year of study. Students will develop a piece of software or conduct a research project under the supervision of an academic staff member. Students must produce a written technical report and give an oral presentation demonstrating their work.
View full course detailsCourse code: 159352 Advanced Web Development credits 15
A study of the programming and scripting languages, frameworks and tools used to develop web and distributed applications with a consideration of the security issues involved in these technologies.
View full course detailsCourse code: 161324 Data Mining credits 15
A practical approach to data mining with large volumes of complex data; prepare, cleanse and visualise data; supervised and unsupervised modelling; ensemble and bundling techniques; use of leading software tools.
View full course detailsInformation Systems (120 credits)
200-level courses
Course code: 157216 Management, Analytics and Decision Making credits 15
Introduction to techniques and issues involved in using data to support organisational decision making.
View full course detailsCourse code: 157240 Social Media Networks for Business credits 15
Students will be introduced to using social media for business success and will examine current issues in the rapidly developing area of social media using a socio-technical approach.
View full course detailsCourse code: 157241 Technology Trends for Organisations credits 15
A comprehensive study of major technology trends and organisational contexts within which information systems are developed and used from user, manager, organisational and societal perspectives.
View full course detailsCourse code: 158235 Networks, Security and Privacy credits 15
A study of the basic principles of digital communications, Internet technologies, communications software, local area network design, client-server system design, middleware and available wide-area network services from the viewpoint of a software engineer/designer developing networked information systems.
View full course detailsCourse code: 158244 Software Quality Assurance and Testing credits 15
A discussion of testing concepts and techniques that can be applied to all software projects. This course explores a selection of topics relevant to the design and implementation of test plans in software including web-based applications. The course also looks at activity design to ensure that the project conforms to stakeholder expectations. This course will be of assistance to students who would like to become a Certified Tester through International Software Testing Qualifications Board (ISQTB) foundation level exams.
View full course detailsCourse code: 158258 Web Development credits 15
An introduction to web-based application development. Students will gain practical experience in the use of modern techniques relevant to the design and development of web-based systems.
View full course details300-level courses
Course code: 157340 Organisational Knowledge Management credits 15
An examination of the role of information systems in creating business value in a knowledge economy.
View full course detailsCourse code: 157350 Technology Governance and Risk Management credits 15
Designing and managing technology-based solutions for realising organisational strategy.
View full course detailsCourse code: 157394 Managing Technology Projects and Programmes credits 15
Agile project management and design thinking as methodologies for implementing technology projects and programmes.
View full course detailsCourse code: 158337 Database Development credits 15
A study of enterprise data models, including how data storage and retrieval methods have changed over time. Modern techniques for handling relational and non-relational data and their implications in transactional and analytical processing are evaluated. Students will gain practical skills in designing, creating and querying databases using database management systems.
View full course detailsCourse code: 158359 User Experience Design credits 15
The course will move from conceptual analysis to the design, prototyping and implementation and evaluation of user interfaces. It will emphasise development processes that result in interfaces that provide a superior user experience. Examples of real-life interfaces, from sources such as desktop, multimedia, web, novel, and mobile technologies will be used. There will be a significant practical work component.
View full course detailsInformation Technology (120 credits)
200-level courses
Course code: 158225 Systems Analysis and Modelling credits 15
A study of methods used to capture, analyse and model system requirements. Students will acquire practical skills through case study work utilising techniques and software tools used by industry.
View full course detailsCourse code: 158235 Networks, Security and Privacy credits 15
A study of the basic principles of digital communications, Internet technologies, communications software, local area network design, client-server system design, middleware and available wide-area network services from the viewpoint of a software engineer/designer developing networked information systems.
View full course detailsCourse code: 158244 Software Quality Assurance and Testing credits 15
A discussion of testing concepts and techniques that can be applied to all software projects. This course explores a selection of topics relevant to the design and implementation of test plans in software including web-based applications. The course also looks at activity design to ensure that the project conforms to stakeholder expectations. This course will be of assistance to students who would like to become a Certified Tester through International Software Testing Qualifications Board (ISQTB) foundation level exams.
View full course detailsCourse code: 158258 Web Development credits 15
An introduction to web-based application development. Students will gain practical experience in the use of modern techniques relevant to the design and development of web-based systems.
View full course detailsCourse code: 297201 Data Wrangling and Machine Learning credits 15
An introduction to the data science workflow involving the acquisition, processing, transformation and integration of data from disparate sources having inherently different data structures, from which actionable insights can be extracted. Entry-level machine learning and statistical techniques for analysing and extracting knowledge from data will be covered. Particular emphasis will be placed on attaining competency in using a high-level programming language for conducting data-driven problem solving and appreciating the necessary agility such tools afford.
View full course detailsCourse code: 157216 Management, Analytics and Decision Making credits 15
Introduction to techniques and issues involved in using data to support organisational decision making.
View full course detailsCourse code: 157240 Social Media Networks for Business credits 15
Students will be introduced to using social media for business success and will examine current issues in the rapidly developing area of social media using a socio-technical approach.
View full course detailsCourse code: 157241 Technology Trends for Organisations credits 15
A comprehensive study of major technology trends and organisational contexts within which information systems are developed and used from user, manager, organisational and societal perspectives.
View full course details300-level courses
Course code: 158326 Software Construction credits 15
An advanced study of methods used to model, design, build and test robust software artefacts. The course provides an in-depth study of multiple techniques to support software design and implementation. It takes a practical approach using current methods and tools.
View full course detailsCourse code: 158335 The Internet of Things and Cloud Computing credits 15
This course involves participants in solving problems whose solutions require active, sensing and connected “things” augmented with Cloud Computing capabilities. Students will design and implement things that participate in the Internet of Things (IoT) and Cloud Computing environments.
View full course detailsCourse code: 158337 Database Development credits 15
A study of enterprise data models, including how data storage and retrieval methods have changed over time. Modern techniques for handling relational and non-relational data and their implications in transactional and analytical processing are evaluated. Students will gain practical skills in designing, creating and querying databases using database management systems.
View full course detailsCourse code: 158359 User Experience Design credits 15
The course will move from conceptual analysis to the design, prototyping and implementation and evaluation of user interfaces. It will emphasise development processes that result in interfaces that provide a superior user experience. Examples of real-life interfaces, from sources such as desktop, multimedia, web, novel, and mobile technologies will be used. There will be a significant practical work component.
View full course detailsCourse code: 297301 Applied Machine Learning and Big Data Processing credits 15
An in-depth exploration of methods for developing intuition and insights about data that enables effective problem formulation and its solution through data-driven methods. A broad range of advanced machine learning and data mining algorithms will be used to build predictive models from real-world contexts. A particular emphasis will be on developing data-products, rapid prototyping and effectively communicating their value through visual storytelling and interpretable summaries. Practical skills for processing large datasets will be taught.
View full course detailsCourse code: 157340 Organisational Knowledge Management credits 15
An examination of the role of information systems in creating business value in a knowledge economy.
View full course detailsCourse code: 157350 Technology Governance and Risk Management credits 15
Designing and managing technology-based solutions for realising organisational strategy.
View full course detailsCourse code: 157394 Managing Technology Projects and Programmes credits 15
Agile project management and design thinking as methodologies for implementing technology projects and programmes.
View full course detailsSoftware Engineering (165 credits)
Compulsory courses
Course code: 159251 Software Engineering Design and Construction credits 15
A study of techniques, methods and tools used to design and construct high-quality software systems.
View full course detailsCourse code: 159336 Mobile Application Development credits 15
The course covers many practical aspects of designing, creating, testing and publishing mobile applications. Students will develop mobile applications using a real software development toolkit and have the option of publishing their applications to an app marketplace.
View full course detailsSubject courses (120 credits)
30 credits from
Course code: 158225 Systems Analysis and Modelling credits 15
A study of methods used to capture, analyse and model system requirements. Students will acquire practical skills through case study work utilising techniques and software tools used by industry.
View full course detailsCourse code: 158235 Networks, Security and Privacy credits 15
A study of the basic principles of digital communications, Internet technologies, communications software, local area network design, client-server system design, middleware and available wide-area network services from the viewpoint of a software engineer/designer developing networked information systems.
View full course detailsCourse code: 158244 Software Quality Assurance and Testing credits 15
A discussion of testing concepts and techniques that can be applied to all software projects. This course explores a selection of topics relevant to the design and implementation of test plans in software including web-based applications. The course also looks at activity design to ensure that the project conforms to stakeholder expectations. This course will be of assistance to students who would like to become a Certified Tester through International Software Testing Qualifications Board (ISQTB) foundation level exams.
View full course detailsCourse code: 158258 Web Development credits 15
An introduction to web-based application development. Students will gain practical experience in the use of modern techniques relevant to the design and development of web-based systems.
View full course detailsCourse code: 297201 Data Wrangling and Machine Learning credits 15
An introduction to the data science workflow involving the acquisition, processing, transformation and integration of data from disparate sources having inherently different data structures, from which actionable insights can be extracted. Entry-level machine learning and statistical techniques for analysing and extracting knowledge from data will be covered. Particular emphasis will be placed on attaining competency in using a high-level programming language for conducting data-driven problem solving and appreciating the necessary agility such tools afford.
View full course details45 credits from
Course code: 159201 Algorithms and Data Structures credits 15
An introduction to the analysis and implementation of algorithms and data structures including linear data structures, trees, graphs, hash tables, searching algorithms, sorting algorithms, optimization problems and complexity analysis. The course includes a significant practical component covering the implementation and application of important data structures and algorithms.
View full course detailsCourse code: 159234 Object-Oriented Programming credits 15
An introduction to the principles of object-oriented programming. It covers both object-oriented programming techniques and their application to program design including classes, objects and objects lifecycle, abstraction, encapsulation, inheritance, polymorphism and generic programming, as well as some advanced programming features. The course includes a significant practical component involving designing and implementing object-oriented programs in Java.
View full course detailsCourse code: 159235 Programming for Computer Graphics credits 15
An introduction to the programming principles, methods and techniques of computer graphics. The course covers general graphics methods and techniques, graphics transformations, drawing algorithms, 3D rendering and animation. These are implemented using basic approaches as well as modern shader-based pipelines.
View full course detailsCourse code: 159236 Embedded Programming credits 15
A study of embedded programming using low-level programming languages. The course covers the hardware architecture of an embedded system and the techniques needed to write programs for simple peripherals such as switches, LEDs, timers and accelerometers.
View full course detailsCourse code: 159272 Programming Language Paradigms credits 15
An introduction to different programming paradigms with a focus on the functional paradigm – lists, recursion, lazy-evaluation, higher-order functions, currying and lambda expressions. The course includes a significant practical component designing and implementing functional solutions to problems using both pure and multi-paradigm languages.
View full course details15 credits from
Course code: 158326 Software Construction credits 15
An advanced study of methods used to model, design, build and test robust software artefacts. The course provides an in-depth study of multiple techniques to support software design and implementation. It takes a practical approach using current methods and tools.
View full course detailsCourse code: 158335 The Internet of Things and Cloud Computing credits 15
This course involves participants in solving problems whose solutions require active, sensing and connected “things” augmented with Cloud Computing capabilities. Students will design and implement things that participate in the Internet of Things (IoT) and Cloud Computing environments.
View full course detailsCourse code: 158337 Database Development credits 15
A study of enterprise data models, including how data storage and retrieval methods have changed over time. Modern techniques for handling relational and non-relational data and their implications in transactional and analytical processing are evaluated. Students will gain practical skills in designing, creating and querying databases using database management systems.
View full course detailsCourse code: 158359 User Experience Design credits 15
The course will move from conceptual analysis to the design, prototyping and implementation and evaluation of user interfaces. It will emphasise development processes that result in interfaces that provide a superior user experience. Examples of real-life interfaces, from sources such as desktop, multimedia, web, novel, and mobile technologies will be used. There will be a significant practical work component.
View full course detailsCourse code: 297301 Applied Machine Learning and Big Data Processing credits 15
An in-depth exploration of methods for developing intuition and insights about data that enables effective problem formulation and its solution through data-driven methods. A broad range of advanced machine learning and data mining algorithms will be used to build predictive models from real-world contexts. A particular emphasis will be on developing data-products, rapid prototyping and effectively communicating their value through visual storytelling and interpretable summaries. Practical skills for processing large datasets will be taught.
View full course details30 credits from
Course code: 159302 Artificial Intelligence credits 15
An advanced study of the principles and techniques used in developing Artificial Intelligence applications. The course includes the implementation and application of a range of AI methods including state-space representation and search, knowledge representation, constraint satisfaction, game playing, logic systems and machine learning.
View full course detailsCourse code: 159341 Programming Languages, Algorithms and Concurrency credits 15
Advanced study in models of computation, programming languages and algorithms with a specific focus on concurrent programming. The course includes models of computation, programming language paradigms, programming language design, algorithm analysis, processes, threads, synchronisation and parallel programming.
View full course detailsCourse code: 159342 Operating Systems and Networks credits 15
A detailed study of operating systems and network communication protocols. The course covers the technologies that underpin modern computer systems including the architecture of operating systems and their structures and methods along with computer network design, protocols and associated technologies.
View full course detailsCourse code: 159352 Advanced Web Development credits 15
A study of the programming and scripting languages, frameworks and tools used to develop web and distributed applications with a consideration of the security issues involved in these technologies.
View full course detailsCompulsory capstone course
Course code: 159333 Programming Project credits 15
A capstone programming project for students in their final year of study. Students will develop a piece of software or conduct a research project under the supervision of an academic staff member. Students must produce a written technical report and give an oral presentation demonstrating their work.
View full course detailsCourse code: 159356 Software Engineering Capstone Project credits 15
Management of the software engineering process. A group project will form a significant component of this course.
View full course detailsMinors
Business (60 credits)
Compulsory courses
Course code: 125230 Business Finance credits 15
The course provides students with a fundamental knowledge of financial theory and practice. In addition to valuation and capital budgeting, students will study working capital management, capital structure, the cost of capital, dividend policy and ethics in finance.
View full course detailsCourse code: 152233 Fundamentals of Entrepreneurship and Innovation credits 15
This introductory course develops understanding of the key concepts in entrepreneurship and innovation.
View full course detailsCourse code: 152336 Leadership Practice credits 15
A critical analysis of the theory and practice of leadership relevant to public and private organisations and the development of ethical leadership and citizenship in a variety of socio-cultural contexts.
View full course detailsCourse code: 152350 Strategic Management and Governance credits 15
An examination of strategic management concepts, the tools and techniques of strategic analysis, and issues associated with governance including business ethics.
View full course detailsComputer Science (60 credits)
Course code: 159201 Algorithms and Data Structures credits 15
An introduction to the analysis and implementation of algorithms and data structures including linear data structures, trees, graphs, hash tables, searching algorithms, sorting algorithms, optimization problems and complexity analysis. The course includes a significant practical component covering the implementation and application of important data structures and algorithms.
View full course detailsCourse code: 159234 Object-Oriented Programming credits 15
An introduction to the principles of object-oriented programming. It covers both object-oriented programming techniques and their application to program design including classes, objects and objects lifecycle, abstraction, encapsulation, inheritance, polymorphism and generic programming, as well as some advanced programming features. The course includes a significant practical component involving designing and implementing object-oriented programs in Java.
View full course detailsCourse code: 159235 Programming for Computer Graphics credits 15
An introduction to the programming principles, methods and techniques of computer graphics. The course covers general graphics methods and techniques, graphics transformations, drawing algorithms, 3D rendering and animation. These are implemented using basic approaches as well as modern shader-based pipelines.
View full course detailsCourse code: 159236 Embedded Programming credits 15
A study of embedded programming using low-level programming languages. The course covers the hardware architecture of an embedded system and the techniques needed to write programs for simple peripherals such as switches, LEDs, timers and accelerometers.
View full course detailsCourse code: 159251 Software Engineering Design and Construction credits 15
A study of techniques, methods and tools used to design and construct high-quality software systems.
View full course detailsCourse code: 159272 Programming Language Paradigms credits 15
An introduction to different programming paradigms with a focus on the functional paradigm – lists, recursion, lazy-evaluation, higher-order functions, currying and lambda expressions. The course includes a significant practical component designing and implementing functional solutions to problems using both pure and multi-paradigm languages.
View full course detailsCourse code: 159302 Artificial Intelligence credits 15
An advanced study of the principles and techniques used in developing Artificial Intelligence applications. The course includes the implementation and application of a range of AI methods including state-space representation and search, knowledge representation, constraint satisfaction, game playing, logic systems and machine learning.
View full course detailsCourse code: 159336 Mobile Application Development credits 15
The course covers many practical aspects of designing, creating, testing and publishing mobile applications. Students will develop mobile applications using a real software development toolkit and have the option of publishing their applications to an app marketplace.
View full course detailsCourse code: 159341 Programming Languages, Algorithms and Concurrency credits 15
Advanced study in models of computation, programming languages and algorithms with a specific focus on concurrent programming. The course includes models of computation, programming language paradigms, programming language design, algorithm analysis, processes, threads, synchronisation and parallel programming.
View full course detailsCourse code: 159342 Operating Systems and Networks credits 15
A detailed study of operating systems and network communication protocols. The course covers the technologies that underpin modern computer systems including the architecture of operating systems and their structures and methods along with computer network design, protocols and associated technologies.
View full course detailsCourse code: 159352 Advanced Web Development credits 15
A study of the programming and scripting languages, frameworks and tools used to develop web and distributed applications with a consideration of the security issues involved in these technologies.
View full course detailsData Science (60 credits)
Compulsory courses
Course code: 297201 Data Wrangling and Machine Learning credits 15
An introduction to the data science workflow involving the acquisition, processing, transformation and integration of data from disparate sources having inherently different data structures, from which actionable insights can be extracted. Entry-level machine learning and statistical techniques for analysing and extracting knowledge from data will be covered. Particular emphasis will be placed on attaining competency in using a high-level programming language for conducting data-driven problem solving and appreciating the necessary agility such tools afford.
View full course detailsCourse code: 297301 Applied Machine Learning and Big Data Processing credits 15
An in-depth exploration of methods for developing intuition and insights about data that enables effective problem formulation and its solution through data-driven methods. A broad range of advanced machine learning and data mining algorithms will be used to build predictive models from real-world contexts. A particular emphasis will be on developing data-products, rapid prototyping and effectively communicating their value through visual storytelling and interpretable summaries. Practical skills for processing large datasets will be taught.
View full course details15 credits from
Any 161.2xx courses
15 credits from
Any 161.3xx courses or
Course code: 158337 Database Development credits 15
A study of enterprise data models, including how data storage and retrieval methods have changed over time. Modern techniques for handling relational and non-relational data and their implications in transactional and analytical processing are evaluated. Students will gain practical skills in designing, creating and querying databases using database management systems.
View full course detailsGames Programming (60 credits)
Compulsory courses
Course code: 159235 Programming for Computer Graphics credits 15
An introduction to the programming principles, methods and techniques of computer graphics. The course covers general graphics methods and techniques, graphics transformations, drawing algorithms, 3D rendering and animation. These are implemented using basic approaches as well as modern shader-based pipelines.
View full course detailsCourse code: 159261 Games Programming credits 15
An exploration of a range of essential topics for implementing computer games including fundamental computer graphics, games software architecture and game physics systems. The course contains a significant practical computer lab component where students are guided through the games development process.
View full course detailsCourse code: 159361 Advanced Games Programming credits 15
This course continues the study of games programming by exploring the development of computer games using a modern game engine. The development of games and specific game systems within a modern architecture are covered with a significant practical component.
View full course detailsCourse code: 159302 Artificial Intelligence credits 15
An advanced study of the principles and techniques used in developing Artificial Intelligence applications. The course includes the implementation and application of a range of AI methods including state-space representation and search, knowledge representation, constraint satisfaction, game playing, logic systems and machine learning.
View full course detailsCourse code: 159336 Mobile Application Development credits 15
The course covers many practical aspects of designing, creating, testing and publishing mobile applications. Students will develop mobile applications using a real software development toolkit and have the option of publishing their applications to an app marketplace.
View full course detailsInformation Systems (60 credits)
Course code: 157216 Management, Analytics and Decision Making credits 15
Introduction to techniques and issues involved in using data to support organisational decision making.
View full course detailsCourse code: 157240 Social Media Networks for Business credits 15
Students will be introduced to using social media for business success and will examine current issues in the rapidly developing area of social media using a socio-technical approach.
View full course detailsCourse code: 157241 Technology Trends for Organisations credits 15
A comprehensive study of major technology trends and organisational contexts within which information systems are developed and used from user, manager, organisational and societal perspectives.
View full course detailsCourse code: 157340 Organisational Knowledge Management credits 15
An examination of the role of information systems in creating business value in a knowledge economy.
View full course detailsCourse code: 157350 Technology Governance and Risk Management credits 15
Designing and managing technology-based solutions for realising organisational strategy.
View full course detailsCourse code: 157394 Managing Technology Projects and Programmes credits 15
Agile project management and design thinking as methodologies for implementing technology projects and programmes.
View full course detailsInformation Technology (60 credits)
Course code: 158225 Systems Analysis and Modelling credits 15
A study of methods used to capture, analyse and model system requirements. Students will acquire practical skills through case study work utilising techniques and software tools used by industry.
View full course detailsCourse code: 158235 Networks, Security and Privacy credits 15
A study of the basic principles of digital communications, Internet technologies, communications software, local area network design, client-server system design, middleware and available wide-area network services from the viewpoint of a software engineer/designer developing networked information systems.
View full course detailsCourse code: 158244 Software Quality Assurance and Testing credits 15
A discussion of testing concepts and techniques that can be applied to all software projects. This course explores a selection of topics relevant to the design and implementation of test plans in software including web-based applications. The course also looks at activity design to ensure that the project conforms to stakeholder expectations. This course will be of assistance to students who would like to become a Certified Tester through International Software Testing Qualifications Board (ISQTB) foundation level exams.
View full course detailsCourse code: 158258 Web Development credits 15
An introduction to web-based application development. Students will gain practical experience in the use of modern techniques relevant to the design and development of web-based systems.
View full course detailsCourse code: 158326 Software Construction credits 15
An advanced study of methods used to model, design, build and test robust software artefacts. The course provides an in-depth study of multiple techniques to support software design and implementation. It takes a practical approach using current methods and tools.
View full course detailsCourse code: 158335 The Internet of Things and Cloud Computing credits 15
This course involves participants in solving problems whose solutions require active, sensing and connected “things” augmented with Cloud Computing capabilities. Students will design and implement things that participate in the Internet of Things (IoT) and Cloud Computing environments.
View full course detailsCourse code: 158337 Database Development credits 15
A study of enterprise data models, including how data storage and retrieval methods have changed over time. Modern techniques for handling relational and non-relational data and their implications in transactional and analytical processing are evaluated. Students will gain practical skills in designing, creating and querying databases using database management systems.
View full course detailsCourse code: 158359 User Experience Design credits 15
The course will move from conceptual analysis to the design, prototyping and implementation and evaluation of user interfaces. It will emphasise development processes that result in interfaces that provide a superior user experience. Examples of real-life interfaces, from sources such as desktop, multimedia, web, novel, and mobile technologies will be used. There will be a significant practical work component.
View full course detailsLooking for a previous version of this regulation?