NCCA uses cookies so that you have the best possible browsing experience on our website. If you agree that we can store and use cookies click 'Accept & Close'.Manage Cookies
Appendix A: Glossary of Action Verbs used
Appendix B: Glossary of Core Concepts
The practices and principles of computer science describe the behaviours and ways of thinking that computationally-literate students use to fully engage in a data-rich and interconnected world. Computational thinking, at the heart of computer science practices, is a problem-solving process that involves designing solutions that exploit the power of computers. The practices and principles are encountered in a context-based approach related to social, professional, and scientific contexts. Studying the role of computers in society will enhance students’ attitudes towards computer science and make it more meaningful and relevant. In learning about designing and developing, students will recognise the creative challenge involved in creating artefacts and in project management.
describe a systematic process for solving problems and making decisions
explain how the power of computing enables different solutions to difficult problems
solve problems by deconstructing them into smaller units using a systematic approach in an iterative fashion
solve problems using skills of logic
evaluate alternative solutions to computational problems
explain the operation of a variety of algorithms
develop algorithms to implement chosen solutions
evaluate the costs and benefits of the use of computing technology in automating processes
use modelling and simulation in relevant situations
discuss when heuristics should and could be used and explain the limitations of using heuristics
discuss the complex relationship between computing technologies and society including issues of ethics
compare the positive and negative impacts of computing on culture and society
The Internet
Machine learning
Artificial intelligence
identify important computing developments that have taken place in the last 100 years and consider emerging trends that could shape future computing technologies
explain when and what machine learning and AI algorithms might be used in certain contexts
consider the quality of the user experience when interacting with computers and list the principles of universal design, including the role of a user interface and the factors that contribute to its usability
compare two different user interfaces and identify different design decisions that shape the user experience
describe the role that adaptive technology can play in the lives of people with special needs
recognise the diverse roles and careers that use computing technologies
identify features of both staged and iterative design and development processes
collaborate and assign roles and responsibilities within a team to tackle a computing task
identify alternative perspectives, considering different disciplines, stakeholders and end users
read, write, test, and modify computer programs
reflect and communicate on the design and development process
This strand introduces five core concepts that represent major content areas in the field of computer science: Abstraction, Algorithms, Computer systems, Data, and Evaluation and testing. The core concepts are developed theoretically and applied practically. In this way, conceptual classroom-based learning is intertwined with experimental computer lab-based learning throughout the two years of the course.
use abstraction to describe systems and to explain the relationship between wholes and parts
use a range of methods for identifying patterns and abstract common features
implement modular design to develop hardware or software modules that perform a specific function
illustrate examples of abstract models
use pseudo code to outline the functionality of an algorithm
construct algorithms using appropriate sequences, selections/conditionals, loops and operators to solve a range of problems, to fulfil a specific requirement
implement algorithms using a programming language to solve a range of problems
apply basic search and sorting algorithms and describe the limitations and advantages of each algorithm
assemble existing algorithms or create new ones that use functions (including recursive), procedures, and modules
explain the common measures of algorithmic efficiency using any algorithms studied
describe the different components within a computer and the function of those components
describe the different types of logic gates and explain how they can be arranged into larger units to perform more complex tasks
describe the rationale for using the binary number system in digital computing and how to convert between binary, hexadecimal and decimal
describe the difference between digital and analogue input
explain what is meant by the World Wide Web (WWW) and the Internet, including the client server model, hardware components and communication protocols
use data types that are common to procedural high-level languages
use ASCII and Unicode character sets to encode/decode a message and consider the importance of having such standards
collect, store and sort both continuous and discrete data
test solutions and decisions to determine their short-term and long-term outcomes
identify and fix/debug warnings and errors in computer code and modify as required
critically reflect on and identify limitations in completed code and suggest possible improvements
explain the different stages in software testing
Computer science in practice provides multiple opportunities for students to use their conceptual understanding in practical applications. Over the two years of the course students engage with four team-based applied learning tasks. Student groups plan, design and develop computational artefacts that are personally relevant or beneficial to their community and society in general. Examples of computational artefacts include programs, games, simulations, visualisations, digital animations, robotic systems, and apps. Students are expected to document, reflect and present on each applied learning task.
Design is one of the key practices and principles of computer science. As designers and creators of technology, students can be innovative and expressive through the creation of artefacts. Computer science is also an information-intensive discipline that involves the selection, evaluation, recording and presentation of information. In this applied learning task, students will develop an interactive website that can display information (either local or remote data) from a database to meet a set of user needs. Through planning and designing an infrastructure that can display data, students will develop their knowledge of the role computing systems can play in communicating with and providing information about the world around them.
understand and list user needs/requirements before defining a solution
create a basic relational database to store and retrieve a variety of forms of data types
use appropriate programming languages to develop an interactive website that can display information from a database that meets a set of users’ needs
Hypothesising, making predictions, examining evidence, recognising patterns and reaching conclusions are at the heart of computer science. In this applied learning task, students will identify an interdisciplinary topic, develop a hypothesis and utilise existing resources to highlight the salient information and inform future decisions. By identifying, analysing, and deconstructing a problem, students will deepen their understanding of practices and principles of computer science.
develop algorithms that can find the frequency, mean, median and mode of a data set
structure and transform raw data to prepare it for analysis
represent data to effectively communicate in a graphical form
use algorithms to analyse and interpret data in a way that informs decision-making
Modelling, programming, and coding require careful analysis of patterns and relationships to solve problems. In this applied learning task, students will engage with a problem that is difficult to solve analytically, but that is amenable to a solution using simulation or modelling. Students will develop a computer system that simulates or models the problem. Engaging with a problem in this way will heighten students’ awareness and understanding of how algorithms can be used across a wide range of disciplines and subjects.
develop a model that will allow different scenarios to be tested
analyse and interpret the outcome of simulations both before and after modifications have been made
explain the benefits of using agent-based modelling and how it can be used to demonstrate emergent behaviours
The design and application of computer hardware and software are a central part of computer science. In this applied learning task, students will implement a microprocessor system that uses sensors and controls digital inputs and outputs as part of an embedded system. By building the component parts of a computer system, students will deepen their understanding of how computers work and how they can be embedded in our everyday environments.
use and control digital inputs and outputs within an embedded system
measure and store data returned from an analogue input
develop a program that utilises digital and analogue inputs
design automated applications using embedded systems