Please enable JavaScript to use CodeHS

Standards Framework

for Virginia Computer Science Foundations


Standards in this Framework

Standard Description
CSF.1 The student will a) compare the structures, functions, and interactions between application software, system software, and hardware; and b) explore the relationship between hardware and software using the Internet of Things.
CSF.2 The student will model how information is broken down into smaller pieces, transmitted as packets through multiple devices over networks and the Internet, and reassembled at the destination.
CSF.3 The student will explain the role of protocols in transmitting data across networks and the Internet.
CSF.4 The student will evaluate the scalability and reliability of networks, by describing the relationship between routers, switches, servers, topology and addressing.
CSF.5 The student will identify and explain ways that sensitive data (assets) can be threatened by malware and other computer attacks, using appropriate terminology.
CSF.6 The student will give examples of ways to protect sensitive data (assets) from malware and other computer attacks and evaluate them according to multiple criteria.
CSF.7 The student will explain typical tradeoffs between usability and security and recommend security measures in a given scenario based on these (or other) tradeoffs.
CSF.8 The student will write or adapt a program to validate its input and to avoid certain kinds of vulnerabilities.
CSF.9 The student will evaluate the tradeoffs in how data elements are organized and where data is stored.
CSF.10 The student will create interactive data visualizations using software tools to help others better understand real-world phenomena.
CSF.11 The student will use data analysis tools and techniques to identify patterns in data representing complex systems.
CSF.12 The student will develop a program working individually and in teams using a text-based language.
CSF.13 The student will identify the expected output of a program given a problem and some input.
CSF.14 The student will design and iteratively develop programs for practical intent or personal expression, incorporating feedback from users.
CSF.15 The student will design and implement algorithms using a) sequencing of instructions; b) conditional execution; and c) iteration.
CSF.16 The student will implement a program that accepts input values, stores them in appropriately named variables, and produces output.
CSF.17 The student will trace the execution of an algorithm, illustrating output and changes in values of named variables.
CSF.18 The student will apply the basic operations used with numeric and non-numeric data types in developing programs.
CSF.19 The student will use predefined functions to simplify the solution of a complex problem.
CSF.20 The student will apply simple algorithms to a collection of data.
CSF.21 The student will create programs a) demonstrating an understanding that program development is an ongoing process that requires adjusting and debugging along the way; and b) using version control to create and refine programs.
CSF.22 The student will use tools and methods for collaboration on a project to increase connectivity of people in different cultures and career fields.
CSF.23 The student will evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.
CSF.24 The student will explain the beneficial and harmful effects that intellectual property laws can have on innovation, including the impact of open source software.
CSF.25 The student will explain the privacy concerns related to the collection and generation of data through automated processes that are not always evident to users