By the end of Year 8, students will have had opportunities to create a range of digital solutions, such as interactive web applications or programmable multimedia assets or simulations of relationships between objects in the real world.

Security

How well digital systems perform tasks is dependent on the characteristics of the components of a system.

Students can explain how different specifications, such as RAM available, CPU/GPU, network media etc impact performance of a system. Since systems are made up of lots of parts, the overall performance of any system - whether stand-alone or networked - is dependent on the specifications of all of its components.

Different systems can be connected to one another, allowing them to send information between them.

Students can explain how the design of networks is affected by many things, including the media used in their construction. They understand that networks can be wired, wireless or mobile, and some of the limitations, implications and benefits of each.

Making sure the data can only be accessed by the people it is intended for.

Students can explain how the movement of data through networks creates a situation where it would be possible for that data to be accessed by another party. This creates a need for security to be factored into the network design, and students should understand the general principles of securing data.

Compression

Binary representation of data involves reducing that data into a format comprised of just two symbols, and is necessary for all computing applications.

Students can explain why computers can only process data using two states due to how hardware works, and all data needs to be converted to binary for processing. This can be achieved with data of any type.

Students can demonstrate how digital systems represent images as pixels, each of which has a different number associated with red, green and blue. These numbers are 0-255 as a consequence of their binary representations. There are other representations of image pixels for different purposes.

Ensuring data is not only correct, but from a reliable source and relevant/current for the problem being solved.

Students can explain why the source of the data and the method used to acquire it is important - that data from unreliable or out-of-date sources should not be used for making conclusions or determining action.

To reorganise or restructure data to highlight different properties, or to enable new or alternative means of processing or analysing it.

Students can explain why not all data is atomic (i.e. stand-alone), and how sets of data often infer some kind of relatedness (e.g. weather data for a location over a period of time). They think about how the way that data is structured (e.g. in tables) helps to communicate its meaning and allow for better analysis.

Students can describe and investigate problems that draw on their life experiences and that have meaning to them. These problems could have multiple outcomes depending on the inputs / choices made while solving them.

Breaking a problem down into smaller, simpler problems that can be solved separately.

Students can investigate large enough problems such that solving them requires the students to think about individual elements of the problem that can be solved separately to make the main problem more approachable/solvable.

The parameters and limitations that help to define the boundaries or restrictions of the problem's scope.

Students can define problems in terms of their purpose (i.e. what they are trying to solve), and do so taking into account limitations that their solution may face. Limitations may take the form of financial or technology constraints, or may consider things such as the impact any solution may have on the local environment or population.

Algorithm constructs

Verifying the correctness and reliability of the result of following sequence of steps. Includes testing of known inputs/outputs and likely edge cases.

Students can follow the state of values through an algorithm, and predict what the output would be given an input. Students should understand the desired output of the algorithm to be able to tell when an error has occurred based on this information.

A block of computer programming code with a defined purpose that can be accessed or called from another part of the computer program. Used to organise and structure code inside a more complicated computer program.

Students can define and use their own functions to make programs more modular. The functions they develop can produce different return values based on input parameters.

Using a text-based programming language that is capable of solving a variety of problems from many domains to create a digital solution. The language chosen must not be platform-, application- or domain-dependent.

Students can develop software in a general purpose programming language, and use these skills across multiple domains to solve a range of problems.

A combination of digital systems, data, processes, and people that interact to create, control, and communicate information

Students can draw upon a range of different systems that are both complementary and oppositional that challenge their understanding of how systems are designed and operated. This is a good opportunity to demonstrate alternative solutions to very similar problems, and to analyse how these differences impact other considerations such as cost, aesthetics, user experience and technical decisions.

The impact digital systems have had on our ability to solve a range of problems that enrich and enhance our lives

Students can draw on their understanding of how existing systems meet the immediate needs of users to better understand how their own solutions could address these or other immediate needs. Understanding that timeliness is an important factor in the uptake of systems, and making this part of their thinking process, is a critical precursor to enterprising thinking. Solutions are only successfully adopted at large scale when they can evolve to not only meet the needs of their target audience now but also well into the future. An understanding of what potential future needs may exist (or how current needs will evolve) informs flexible design that extends the life of the systems usefulness.

The application of digital technologies to either new problems, or existing problems in alternative or new ways. The concept of innovation should be interpreted with respect to what students know and understand - innovation for a student could be development of a solution similar to an existing one if the application of the concepts is new for them.

Students can identify opportunities for creativity and innovation in the development of solutions, and explain how alternative implementations of solutions to these problems address needs more effectively..

A broad interpretation of sustainability looks at many aspects of digital systems that make them viable over the long term, including their environmental impacts, economics and profitability, technical developments and changes, and social perceptions.

Students can analyse the question of sustainability of both their own and larger, existing systems from multiple angles. Questioning their existing ideas or implementation and asking them to think about the implications of these decisions in the medium- to long-term on things such as cost and technological development is just as important as environmental issues. Drawing on case studies (such as the NBN) is also encouraged.

There are always unintended consequences of developing or introducing new technologies and/or systems, and being able to identify potential problems is key to understanding the impact they are likely to have on individuals, the environment and broader society.

Students can explain the risks involved in implementing systems through the realisation of unintended consequences. Making sure students understand the concept of risk - in terms of things such as adoption, cost blowouts, resourcing, maintenance and other factors - ensures they understand how important it is that you look at both the problem and solution from a high-level perspective as well as the detail.

Students can solve problems that require solutions that work with multiple data sets and more complex models of data. Through the use of a broader set of inputs, students gain greater insight into not only the problem they're solving, but problems related to or associated with it, and this informs their thinking and/or conclusions.

Developing an approach or strategy to solve a problem or create a solution that considers the sources of data, resources available and potential timeframes or deadlines.

Students can develop plans for solutions with greater autonomy, relying on their previous experiences to guide their thinking and approach. They should plan both individual and collaborative tasks, and supported to better understand how the dynamics of group activities changes the planning process.

Using techniques, strategies and approaches to monitor progress towards development of a solution, and to re-evaluate or alter strategies to ensure deadlines are met and outcomes achieved within the resources available.

Students can collaborate effectively, thinking about the many facets of managing the exchange of ideas as well as the assets and resources of their projects. This includes regular monitoring of progress, and the provision of feedback to other members of any collaborative activity.

Using online tools that facilitate text, audio and video communication to interact with other people working on a common project.

Students can collaborate effectively online, discussing strategy, approaches to solving problems, and engage in shared document / asset creation, such as managing cloud storage and common code repositories. Applications designed specifically for online collaboration become a key part of the working toolset.

Developing clear rules, structures and restrictions around collaborative processes that ensure the wellbeing, security and physical health of all participants.

Students can outline risks associated with online collaboration, and suggest ways they can mitigate these risks through careful selection and appropriate use of tools and platforms. This includes the management of relevant security protocols (such as permissions on assets) and knowing how their data is protected through transmission and storage. It also involves taking appropriate personal actions, like communicating only with known/trusted people and restricting the data they share through their collaborative processes.

Agreed upon rules and guidelines that allow all members to feel comfortable and safe when working together.

Students can explain how their decisions about their solutions and collaboration practices impact the experiences and beliefs of others not just within, but outside of their social circles. This social sensitivity and empathy should be factored into all aspects of their solution design and presentation.

Encompasses all details of the user's interaction with the system, not just the physical or on-screen elements. Considers the practical aspects such as ease of use, as well as emotive aspects such as how enjoyable it is to use.

Students can incorporate functional and aesthetic requirements, factors such as the expertise and background of users, accessibility and usability requirements into the overall impact use of the solution has on the user's enjoyment and experience of the solution.

Comparing and contrasting different approaches or solutions to a problem in a systematic way to determine the advantages and disadvantages of each approach.

Students can analyse multiple designs to gain insight into the most important features of the user experience. This allows for an iterative and more thorough approach to development of the chosen solution which may borrow elements from all proposals.