Computer Science ICS4U


This course enables students to further develop knowledge and skills in computer science. Students will use modular design principles to create complex and fully docu- mented programs, according to industry standards. Student teams will manage a large software development project, from planning through to project review. Students will also analyse algorithms for effectiveness. They will investigate ethical issues in comput- ing and further explore environmental issues, emerging technologies, areas of research in computer science, and careers in the field.

SKU: ICS4U Category:

The ICS4U Computer Science course is designed for Grade 12 students planning to pursue computer science, software engineering, or other technology-related studies at the university level. This course develops advanced programming skills, modular design techniques, and project management principles for creating comprehensive software projects.

Course Overview

Students will delve into object-oriented programming, algorithm design, and modular software development. The course prepares students to develop reusable, maintainable software solutions that align with industry standards. It emphasizes teamwork and project management practices to simulate real-world software development.


Successful completion of Grade 11 Introduction to Computer Science, University Preparation (ICS3U) is required.

Key Learning Objectives

  • Design and implement modular software solutions using object-oriented programming principles.
  • Analyze algorithms for effectiveness and efficiency in solving computational problems.
  • Apply project management practices for planning, developing, and reviewing software projects.
  • Investigate ethical computing practices, emerging technologies, and software engineering careers.

Overall Expectations

By the end of this course, the student will:


progrAmming ConCepts And skills

  • Demonstrate the ability to use different data types and expressions when creating computer programs;
  • Describe and use modular programming concepts and principles in the creation of computer programs;
  • Design and write algorithms and subprograms to solve a variety of problems;
  • Use proper code maintenance techniques when creating computer programs.


softwAre development

  • Demonstrate the ability to manage the software development process effectively, through all of its stages – planning, development, production, and closing;
  • Apply standard project management techniques in the context of a student-managed team project.


designing modUlAr progrAms

  • Demonstrate the ability to apply modular design concepts in computer programs.
  • Analyze algorithms for their effectiveness in solving a problem.


topiCs in CompUter sCienCe

  • Assess strategies and initiatives that promote environmental stewardship with respect to the use of computers and related technologies.
  • Analyze ethical issues and propose strategies to encourage ethical practices related to the use of computers.
  • Analyze the impact of emerging computer technologies on society and the economy.
  • Research and report on different areas of research in computer science, and careers related to computer science.

Course Details

Course CodeICS4U
Course TypeAcademic
FormatUniversity Preparation
PrerequisiteICS3U, Grade 11 Computer Science
Course TitleSpace & Astronomy
GradeGrade 12
Credit Value1.0

Outline of Course Content

1Basics of Java Programming30 hours
2Arrays and Game Design20 hours
3Advanced Java Programming20 hours
4Software Life Cycle20 hours
5Course Summative20 hours
Total110 hours