Software and Systems Development
Exploring Computer Science – Introduction
This course provides students with foundational knowledge of programming and computer science. Students will explore topics of human computer interaction, problem solving, web design, computer programming, data modeling, and robotics. Throughout the course, students will understand the algorithmic underpinnings of computer applications and gain technical expertise using computational tools. Other areas of the sector could be introduced such as software design, networking, game design, information support, and topics like artificial intelligence, and robotics. Social issues in ICT will be introduced such as hacking and cybersecurity, social media usage and protecting personal information, the digital divide, open government data, and ethical computing. Course titles may also include: Exploring Computer Science, Introduction to Computer Science A; Computer Principles; Introduction to Information and Communication Technologies; Introduction to Computer Technologies.
Computer Science Principles/AP – Intermediate
This course provides students with the fundamental knowledge of computer programming for solving applied problems. Topics covered include using various programming languages, protocols, language syntax, data structures, object oriented concepts, interfaces, sorting and searching algorithms, and developing reports. Also covered, software testing, debugging, and improvement, integrated development using object-oriented programming and sensory information from robots to solve problems and meet challenges integrating STEM subjects.
Computer Science A/AP – Advanced
This course emphasizes object-oriented programming methodology with a concentration on problem solving and algorithm development. Students apply discrete programming skills to make a video game, a virtual pet, a sound editor, etc. and will explore careers in programming, including wireless applications for iPhone, Android, and applications. It also includes the study of data structures, design, and abstraction. Other topics might include developing databases and data modeling.