Please enable JavaScript to use CodeHS

Standards Framework

for Virginia Computer Science Foundations 2025

101

Standards in this Framework

Standard Description
CSF.AP.1.a Identify real-world problems that are classification and prediction problems.
CSF.AP.1.b Decompose a problem or process into sub-components.
CSF.AP.1.c Implement abstractions to improve program modularity, reusability, and readability.
CSF.AP.1.d Identify computing-based solutions to address a computational problem.
CSF.AP.2.a Create programs using a text-based programming language.
CSF.AP.2.b Document programs to improve the ability to trace, test, and debug.
CSF.AP.2.c Trace the execution of an algorithm and predict its results.
CSF.AP.2.d Analyze the outcomes of programs to identify logic and syntax errors.
CSF.AP.2.e Use multiple test cases to verify and refine the program.
CSF.AP.2.f Revise and improve an algorithm to resolve errors or produce desired outcomes.
CSF.AP.2.g Use version control and incorporate user feedback to refine program.
CSF.AP.3.a Read and interpret algorithms and programs expressed using plain language, pseudocode, and text-based programming languages.
CSF.AP.3.b Create design documents using plain language, pseudocode, or diagrams.
CSF.AP.3.c Read and write algorithms and programs that accept multiple input values, use variables, and produce output.
CSF.AP.3.d Read and write algorithms and programs that include predefined functions and procedures with parameters and returns.
CSF.AP.3.e Compare several implementations of the same algorithm using different control structures.
CSF.AP.4.a Determine appropriate data structures to address program specifications.
CSF.AP.4.b Apply basic computations on numeric and non-numeric data types.
CSF.AP.4.c Read and write programs that create, store, and manipulate primitive data.
CSF.AP.4.d Read and write programs that create, store, and manipulate linear collections of primitive data types: arrays or list.
CSF.AP.4.e Read and write programs that use relational, logical, and arithmetic expressions.
CSF.AP.4.f Read and write programs that traverse and manipulate data structures.
CSF.AP.5.a Define and describe neural network learning algorithms.
CSF.AP.5.b Illustrate and describe a neural network structure.
CSF.AP.5.c Identify and discuss examples of computing technologies that utilize neural networks.
CSF.AP.5.d Compare and contrast a decision tree learning algorithm and a neural network learning algorithm.
CSF.AP.6.a Identify and describe characteristics of block-based and text-based coding languages.
CSF.AP.6.b Analyze the advantages and disadvantages of block-based and text-based coding languages.
CSF.AP.6.c Analyze the advantages and disadvantages of various text-based coding languages.
CSF.AP.7.a Define the concept and role of a search algorithm.
CSF.AP.7.b Define the concept and role of a sort algorithm.
CSF.AP.7.c Compare and contrast bubble sort, quick sort, and merge sort.
CSF.AP.7.d Compare and contrast linear search and binary search.
CSF.AP.7.e Evaluate and determine the best search or sort algorithm to use based on intended results.
CSF.AP.8.a Identify project management frameworks and methodologies that emphasize iteration.
CSF.AP.8.b Discuss the significance of communication and methods of communication when working collaboratively.
CSF.AP.8.c Distribute roles and responsibilities and adhere to predetermined timeline and/or project scope.
CSF.AP.8.d Collaboratively plan, design, and revise programs.
CSF.AP.8.e Provide constructive feedback through peer review.
CSF.AP.8.f Use project management tools to support collaboration.
CSF.AP.8.g Justify and explain design choices, including constraints, and audiences.
CSF.AP.8.h Reflect and discuss collaborative experience with team.
CSF.CSY.1.a Provide real-world examples of abstraction in computing.
CSF.CSY.1.b Explain the role of abstraction to simplify complex systems.
CSF.CSY.1.c Identify and describe levels of abstraction between application software, system software, and hardware layers.
CSF.CSY.2.a Describe how computers receive visual data from various sensors and tools.
CSF.CSY.2.b Describe image processing techniques to include filtering, segmentation, and feature extraction.
CSF.CSY.2.c Explain how computers use pattern recognition and classify data to interpret and make decisions.
CSF.CSY.2.d Discuss ethical considerations related to the use of visual data and computer vision technologies.
CSF.CSY.3.a Describe the parts of a network diagram and how they are related.
CSF.CSY.3.b Explain the relationship between nodes, links, and other components of graphs.
CSF.CSY.3.c Explain how a computer can solve a maze, find a route on a map, and use reasoning to solve problems.
CSF.CSY.4.a Compare and contrast the learning process of humans and computers.
CSF.CSY.4.b Identify mathematical models used by supervised learning to produce classifications and predictions.
CSF.CYB.1.a Describe ways data and computing systems can be threatened by malware, ransomware, social engineering, phishing, and other cyberattacks.
CSF.CYB.1.b Compare strategies to protect data and computing systems from malware, ransomware, social engineering, phishing, and other cyberattacks.
CSF.CYB.2.a Identify common targets and perpetrators of cyberattacks.
CSF.CYB.2.b Identify ways data is automatically collected and generated that may or may not be evident to users.
CSF.CYB.2.c Describe potential vulnerabilities when using publicly available networks.
CSF.CYB.2.d Assess the impact of cyber threats on systems and people with diverse backgrounds, technical knowledge, or threat profiles.
CSF.CYB.3.a Evaluate tradeoffs between usability and security.
CSF.CYB.3.b Analyze scenarios to determine tradeoffs between usability and security.
CSF.CYB.3.c Propose recommendations for optimizing balance between usability and security in a given computing system.
CSF.DA.1.a Describe the types of data that business, industry, and government entities collect and maintain.
CSF.DA.1.b Identify privacy and consumer protection issues that impact data representation.
CSF.DA.1.c Identify real-world problems that can be addressed through data analysis.
CSF.DA.1.d Compare two real-world datasets to identify how the values of features are encoded and represented.
CSF.DA.1.e Formulate questions to decompose a problem and develop a data project plan.
CSF.DA.2a Identify methods for collecting and storing data of different data sizes.
CSF.DA.2b Evaluate the technical and ethical implications of collecting and storing data from the perspectives of users, programmers, companies, and communities.
CSF.DA.2c Identify impacts of bias in data collection and storage practices.
CSF.DA.2d Analyze the impact of data quality, quantity, diversity, and other factors on the accuracy and reliability of data visualizations.
CSF.DA.2e Research emerging technologies that have the capability to construct reasoning from stakeholder data.
CSF.DA.3a Evaluate the quality of training data: completeness, accuracy, consistency, and relevance.
CSF.DA.3b Analyze and discuss the ethical implications and social and economic impact of training data choices.
CSF.DA.4a Explain the use of training data and the role it has in the development of machine learning models.
CSF.DA.4b Explain the use of reasoning models and the role it has in the development of machine learning models.
CSF.DA.4c Identify and discuss the similarities and differences between training data and reasoning models in artificial intelligence systems.
CSF.DA.5a Formulate questions that require data collection.
CSF.DA.5b Identify appropriate data to address a predetermined question.
CSF.DA.5c Define the stages of the data cycle and the interrelationship between each stage.
CSF.DA.5d Identify and explain constraints of a data-driven approach.
CSF.DA.5e Create a computational artifact of the data analysis results.
CSF.IC.1a Identify the societal impacts of computing technologies and the various aspects of daily life and industry.
CSF.IC.1b Evaluate the effect of advances in information technology on the economy, environment, and ethics, including advancements of AI, quantum computing, and technologies.
CSF.IC.1c Examine the environmental impact of computing technologies.
CSF.IC.1d Propose strategies to address the ethical impacts and potential challenges of computing technologies.
CSF.IC.2a Identify digital tools and applications designed to monitor or regulate screen time usage.
CSF.IC.2b Evaluate the impact of screen time management on productivity and well-being.
CSF.IC.2c Examine and discuss the impact of screen time and social media on academic or workplace performance.
CSF.IC.3a Examine correlations between historical developments in computing technologies and changes in society.
CSF.IC.3b Appraise contributions of pioneers in the field of computer science.
CSF.IC.3c Explore the impact of Moore’s Law on scientific and mathematical advancements.
CSF.IC.4a Research and explain the preparation and job outlook for computer science careers.
CSF.IC.4b Examine current and future computer science career pathways involving emerging technologies.
CSF.NI.1a Identify the roles of computing devices: routers, switches, servers, and clients.
CSF.NI.1b Explain the role of Internet protocols: Hypertext Transfer Protocol Secure (HTTPS) and Transmission Control Protocol/Internet Protocol (TCP/IP) to provide reliable and secure data.
CSF.NI.1c Analyze and create network topology diagrams.
CSF.NI.1d Model how computing devices communicate via networks using TCP/IP protocols.
CSF.NI.1e Identify common problems that impact network functionality.
CSF.NI.1f Identify solutions to resolve common network issues.