Computer Science – Bachelor of Information Sciences

Massey provides you with the technical skills and knowledge to take your place in the fastest-growing industry in the world. Connect with the industry while you study to get a head start in software development.

Where you can study

Auckland campus
Distance and online
Tianjin, China
Manawatū campus (Palmerston North)

International students

International students are not New Zealand citizens or residents.

Definition of New Zealand citizens and residents

Open to international students on campus in New Zealand, or studying on-line out

Specialise in Computer Science for your Bachelor of Information Sciences at Massey

Massey’s Bachelor of Information Sciences (Computer Science) will give you the skills to become a sought-after ICT professional, able to take on a wide variety of roles in the software industry.

Applied and technical knowledge

Massey teaches students the applied skills and knowledge needed to succeed. Massey is the only university in New Zealand specialising in the C and C++ programming languages that are highly sought after by employers. You’ll also learn Java, Python, SQL and other languages. Every computer science course includes practical assignments.

Join the real world of software development

Massey has close ties with the innovative and rapidly expanding software companies based in North Auckland. These companies offer opportunities for internships, industry projects, holiday work and possible employment offers. You’ll also be involved in creating websites and applications for charities and voluntary organisations.

What you will learn

The computer science major focuses on hardware, software, algorithms and programming. You will learn how computer systems work and how to create efficient algorithms to solve challenging problems. You will learn several programming languages and gain the skills and experience to confidently start a career in software development. Topics on offer include:

  • data structures and algorithms
  • embedded programming
  • object-oriented programming
  • computer graphics
  • games programming
  • machine learning
  • concurrent programming
  • web applications
  • computer networking
  • mobile applications.

Further study

Once you graduate you can move on to advanced study in the Postgraduate Diploma in Information Sciences (one year of 120 credits in taught courses) or the Master of Information Sciences (180 credits including 120 credits of taught courses and a major professional project.)

A Bachelor of Information Sciences in Computer Science is a good fit if you:

  • would like to develop new software applications
  • enjoy breaking a complex problem down into its constituent parts
  • are interested in topics such as graphics, games, artificial intelligence and programming.

Planning information

This is a guide. You are advised to check the courses for this qualification section and the regulations for this qualification on this page for the latest information on courses.

Your first year

First year for a full-time student usually consists of eight courses.  Take electives (or courses from other majors) to get the total number of courses to eight.  Make sure you include courses that are prerequisites for the next level of courses you wish to study.  You can change your major up until the start of your second year and it is a good idea to keep your options open by taking courses such that you are ready to move on to several different majors.  In the first year of study, you should take the following courses:

  • 159101 Technical Programming 1 
  • 159102 Technical Programming 2
  • At least one mathematics course – one or more of 160105, 160101, 160102.  Note: you can also take 160104 as an elective in your degree but you require at least 160105 for the major. 
  • At least one statistics course – one of 161111 or 161122
  • 247112 Science and Sustainability for ICT (or another Science and Sustainability course)
  • Also take some elective courses and the following are recommended:
    • 158100 Introductory Concepts for Information Technology
    • 158120 Fundamental Information Technologies

See Courses and specialisations for the required courses at 200-level and 300-level.

Minors

Completing a minor is optional.  Minors increase the breadth of your degree. They give you extra knowledge, attributes and capabilities.

A minor must be in a different subject from your major.

A Bachelor of Information Sciences (Computer Science) with a minor

You may choose a minor from any University undergraduate degree that has recognised minors. If the minor is from another undergraduate degree, the regulations of that qualification will apply.

A computer science minor (for students who are studying a different degree)  

If you are not studying towards a Bachelor of Information Sciences (Computer Science) and wish to complete a minor in computer science see the regulations for the requirements of this minor.  

Official regulations

To understand what you need to study and must complete to graduate read the official rules and regulations for this qualification.

You should read these together with all other relevant Statutes and Regulations of the University including the General Regulations for Undergraduate Degrees, Undergraduate Diplomas, Undergraduate Certificates, Graduate Diplomas and Graduate Certificates.

Returning students

For returning students, there may be changes to the majors and minors available and the courses you need to take. Go to the section called ‘Transitional Provisions’ in the Regulations to find out more.

In some cases the qualification or specialisation you enrolled in may no longer be taking new enrolments, so may not appear on these web pages. To find information on the regulations for these qualifications go to the Massey University Calendar.

Please contact us through the Get advice button on this page if you have any questions.

Courses you can enrol in

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.
Choose 60 credits from
Course code: 159201 Algorithms and Data Structures 15 credits

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.

Prerequisites: 159102 Restrictions: 159271

View full course details
Course code: 159234 Object-Oriented Programming 15 credits

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.

Prerequisites: 159102

View full course details
Course code: 159235 Programming for Computer Graphics 15 credits

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.

Prerequisites: 159102 Restrictions: 159360

View full course details
Course code: 159236 Embedded Programming 15 credits

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.

Prerequisites: 159102 Restrictions: 159233, 159270

View full course details
Course code: 159251 Software Engineering Design and Construction 15 credits

A study of techniques, methods and tools used to design and construct high-quality software systems.

Prerequisites: 159234

View full course details
Course code: 159261 Games Programming 15 credits

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.

Prerequisites: 159101

View full course details
Course code: 159272 Programming Language Paradigms 15 credits

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.

Prerequisites: 159102 Restrictions: 159202

View full course details
Choose 45 credits from
Course code: 159302 Artificial Intelligence 15 credits

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.

Prerequisites: 159201 or 159234 Restrictions: 159372

View full course details
Course code: 159336 Mobile Application Development 15 credits

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.

Prerequisites: 159234 or 159235

View full course details
Course code: 159341 Programming Languages, Algorithms and Concurrency 15 credits

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.

Prerequisites: 159201 or 159202 Restrictions: 159331

View full course details
Course code: 159342 Operating Systems and Networks 15 credits

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.

Prerequisites: 159201 or 159234 Restrictions: 159334, 159335, 159354, 159355

View full course details
Course code: 159352 Advanced Web Development 15 credits

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.

Prerequisites: (159100 or 159101 or 159171) and (158256 or 158258) Restrictions: 159339

View full course details
Course code: 159355 Concurrent Systems 15 credits

This course builds on concurrency theory giving practical experience in all aspects of concurrent programming, including issues of synchronisation. Operating systems, structures and techniques are presented as examples of complex, concurrent programs.

Prerequisites: 159272 Restrictions: 159335, 159341, 159342

View full course details
Course code: 159360 Programming for Computer Graphics 15 credits

Generating graphical images and animations involves a variety of concepts and tools, starting from basic modeling and algorithms to advanced tools for graphics programming. The course covers theory and underlying algorithms as well as practical programming exercises including games using 3D graphics.

Prerequisites: (159270, 159271 or 159272) and (160101, 160102, 160103 or 160105) Restrictions: 159235

View full course details
Course code: 159361 Advanced Games Programming 15 credits

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.

Prerequisites: 159235, 159261

View full course details
Course code: 159372 Intelligent Machines 15 credits

This course introduces fundamental techniques to create intelligent machines, including formalisms for representing knowledge and reasoning about it, methods for searching and planning, and approaches to machine learning.

Prerequisites: 159271 or 159272 Restrictions: 159302

View full course details

Compulsory capstone course

Choose 15 credits from
Course code: 159333 Computer Science Project 15 credits

A capstone computer science project. Students will develop a piece of software or conduct a computer science research project under the supervision of an academic staff member. Projects will be completed individually or as part of a team depending on staff availability. Students must produce a written technical report and give an oral presentation demonstrating their work.

Prerequisites: Two (2) of 158222, 1592xx

View full course details
Course code: 159356 Software Engineering Capstone Project 15 credits

Management of the software engineering process. A group project will form a significant component of this course.

Prerequisites: 159251 and 159352

View full course details

Entry requirements

Admission to Massey

All students must meet university entrance requirements to be admitted to the University.

Specific requirements

There are no specific entry requirements for this qualification, outside of university admission regulations. 

Previous programming experience is not required.

English language requirements

To study this qualification you must meet Massey University's English language standards.

English language skills

If you need help with your English language skills before you start university, see our English for Academic Purposes (EAP) courses.

Can't meet the entry requirements?

If you need to do a course before you start your qualification, there may be options for you in Summer School.

Fees and scholarships

Fees, student loans and free fees scheme

Your tuition fees may be different depending on the courses you choose. Your exact fees will show once you have chosen your courses.

There will also be some compulsory non-tuition fees and for some courses, there may also be charges for things such as study resources, software, trips and contact workshops.

Already know which courses you're going to choose?

You can view fees for the courses that make up your qualification on the course details pages.

Student loans (StudyLink) and Fees Free scheme

You may be eligible for a student loan to help towards paying your fees.

The New Zealand Government offers fees-free tertiary study for eligible domestic students. Find out more about the scheme and your eligibility on the Fees Free website. To use the site's eligibility checking tool, you will need your National Student Number.

Current and returning Massey students can find their National Student Number in the student portal.

Fees disclaimer

This information is for estimation purposes only. Actual fees payable will be finalised on confirmation of enrolment. Unless otherwise stated, all fees shown are quoted in New Zealand dollars and include Goods and Services Tax, if any. Before relying on any information on these pages you should also read the University's Disclaimer Notice.

Careers and job opportunities

In demand

There are a huge number of job opportunities in this area worldwide. Look at the SEEK website to see the strong and ongoing demand for ICT professionals in New Zealand. High demand areas include software development and programming, business analysis, project management and software testing. Graduates with a Computer Science major are well equipped to move into careers such as:

  • software architect
  • software developer
  • applications programmer
  • systems programmer
  • network administration and support
  • business analyst
  • project manager
  • independent consultant

Computer Science graduates can take up challenging and rewarding roles across a wide range of organisations, ranging from government departments through research facilities to private enterprise.

International students

New Zealand is a great place to study. Massey University’s reputation is supported by our international rankings, accreditations and associations. We are rated five star plus by the QS World University Rankings.

Massey University has small class sizes, and our lecturers and staff are friendly and approachable.

As an international student, there are entry requirements that will apply to you. We recommend that you apply at least three months before your anticipated start date so your application can be processed in time. There are additional steps you will need to take. These include obtaining a visa and travel bookings if your study is to be in New Zealand.

What our students say

“My time at Massey was really worthwhile and I picked up a number of life skills including time management, people skills, research techniques and study skills, all of which are still useful to me in my everyday work.”
David Lasike

Bachelor of Information Sciences (Double major in Computer Science and Information Technology)

Accreditations and rankings

Institute of IT Professionals New Zealand (IITP) accreditation

Massey's Bachelor of Information Sciences is accredited by IT Professionals New Zealand. Accreditation ensures that courses are relevant to the industry.

Learn more

Related study options