Please enable JavaScript to use CodeHS

Arkansas 9-12 Standards Framework

122 Standards in this Framework


Standard Description
CSL1.1.1 Leverage problem-solving strategies to solve problems of level-appropriate complexity. NOTE: Some problem-solving strategies may include but are not limited to recursion, iteration, Agile method, 6-step engineering design process, and waterfall.
CSL2.1.1 Leverage problem-solving strategies to solve problems of level-appropriate complexity. NOTE: Some problem-solving strategies may include but are not limited to recursion, iteration, Agile method, 6-step engineering design process, and waterfall.
CSL3.1.1 Leverage problem-solving strategies to solve problems of level-appropriate complexity. NOTE: Some problem-solving strategies may include but are not limited to recursion, iteration, Agile method, 6-step engineering design process, and waterfall.
CSL4.1.1 Leverage problem-solving strategies to solve problems of level-appropriate complexity. NOTE: Some problem-solving strategies may include but are not limited to recursion, iteration, Agile method, 6-step engineering design process, and waterfall.
CSL1.1.2 Compare and contrast multiple representations of problem-solving logic. NOTE: Some representation methods may include but are not limited to documentation, backlog, sprints, decision matrix, design brief, flowchart, and pseudocode.
CSL2.1.2 Analyze multiple representations of problem-solving logic. NOTE: Some representation methods may include but are not limited to documentation, backlog, sprints, decision matrix, design brief, flowchart, and pseudocode.
CSL3.1.2 Design multiple representations of problem-solving logic used to solve a problem of appropriate complexity. NOTE: Some representation methods may include but are not limited to documentation, backlog, sprints, decision matrix, design brief, flowchart, and pseudocode.
CSL4.1.2 Critique multiple representations of problem-solving logic used to solve a problem of appropriate complexity. NOTE: Some representation methods may include but are not limited to documentation, backlog, sprints, decision matrix, design brief, flowchart, and pseudocode.
CSL1.1.3 Analyze and implement collaborative methods in problem solving of level-appropriate complexity. NOTE: Some implementation methods may include but are not limited to paired programming, distributive (divide & conquer), and redundant parallel.
CSL2.1.3 Analyze and implement collaborative methods in problem solving of level-appropriate complexity. NOTE: Some implementation methods may include but are not limited to paired programming, distributive (divide & conquer), and redundant parallel.
CSL3.1.3 Analyze and implement collaborative methods in problem solving of level-appropriate complexity. NOTE: Some implementation methods may include but are not limited to paired programming, distributive (divide & conquer), and redundant parallel.
CSL4.1.3 Analyze and implement collaborative methods in problem solving of level-appropriate complexity. NOTE: Some implementation methods may include but are not limited to paired programming, distributive (divide & conquer), and redundant parallel.
CSL1.1.4 Recognize processes and techniques for troubleshooting of level-appropriate complexity. NOTE: Some processes and techniques for troubleshooting may include but are not limited to tracing; debugging; identification/removal of malware; and error-classification including syntax, logic, runtime, and off-by-one errors.
CSL2.1.4 Recognize processes and techniques for troubleshooting of level-appropriate complexity. NOTE: Some processes and techniques for troubleshooting may include but are not limited to tracing; debugging; identification/removal of malware; and error-classification including syntax, logic, runtime, and off-by-one errors.
CSL3.1.4 Recognize processes and techniques for troubleshooting of level-appropriate complexity. NOTE: Some processes and techniques for troubleshooting may include but are not limited to tracing; debugging; identification/removal of malware; and error-classification including syntax, logic, runtime, and off-by-one errors.
CSL4.1.4 Recognize processes and techniques for troubleshooting of level-appropriate complexity. NOTE: Some processes and techniques for troubleshooting may include but are not limited to tracing; debugging; identification/removal of malware; and error-classification including syntax, logic, runtime, and off-by-one errors.
CSL1.1.5 Decompose a problem of level-appropriate complexity into more simple, solvable parts. NOTE: Solvable parts may include but are not limited to methods, functions, and subroutines with and without parameters.
CSL2.1.5 Decompose a problem of level-appropriate complexity into more simple, solvable parts. NOTE: Solvable parts may include but are not limited to methods, functions, and subroutines with and without parameters.
CSL3.1.5 Decompose a problem of level-appropriate complexity into more simple, solvable parts. NOTE: Solvable parts may include but are not limited to methods, functions, and subroutines with and without parameters.
CSL4.1.5 Decompose a problem of level-appropriate complexity into more simple, solvable parts. NOTE: Solvable parts may include but are not limited to methods, functions, and subroutines with and without parameters.
CSL1.2.1 Interpret logical expressions using Boolean operators (e.g., AND, NOT, OR, XOR)
CSL2.2.1 Interpret logical expressions using short-circuit evaluation
CSL1.2.2 Classify the types of information that can be stored as variables (e.g., Booleans, characters, integers, floating points, strings)
CSL1.2.3 Identify mathematical concepts (e.g., random number generation, vocabulary) related to computer science
CSL2.2.3 Recognize the similarities and differences between mathematics and computer science algorithms
CSL3.2.3 Demonstrate basic encryption (e.g., block cipher, Caesar cipher)
CSL2.2.4 Discuss the concept of abstraction
CSL3.2.4 Analyze the concepts of abstraction as modeling and abstraction as encapsulation
CSL4.2.4 Use the concepts of abstraction as modeling and abstraction as encapsulation
CSL2.2.5 Perform simple operations with base10, base2, and base16 numbers. NOTE: Some operations may include but are not limited to addition, subtraction, and conversion.
CSL4.2.5 Perform simple operations with base10, base2, base8, and base16 numbers. NOTE: Some operations may include but are not limited to addition, subtraction, and conversion.
CSL1.2.6 Demonstrate operator (e.g., +, -, /, %, concatenation) precedence in expressions and statements. NOTE: Some examples of operator precedence and assignment may include but are not limited to inside-out, order of operations, and x = 1 is not the same as 1 = x.
CSL2.2.6 Demonstrate operator (e.g., math, pow, sqrt) precedence in expressions and statements. NOTE: Some examples of operator precedence and assignment may include but are not limited to inside-out, order of operations, and x = 1 is not the same as 1 = x.
CSL1.3.1 Define, store, and manipulate primitive data. NOTE: Primitive data can include, but is not limited to, bool, char, double, float, int. Defining and storing can include, but are not limited to, modifiers such as final, private, protected, public. Manipulating data can include, but is not limited to, arranging (including stacking and queuing), casting, rearranging, sorting.
CSL2.3.1 Define, store, and manipulate linear data. NOTE: Linear data can include, but is not limited to, arrays, lists, strings, vectors. Defining and storing can include, but are not limited to, modifiers such as final, private, protected, public. Manipulating data can include, but is not limited to, arranging (including stacking and queuing), casting, rearranging, sorting.
CSL3.3.1 Define, store, and manipulate structured data and objects. NOTE: Structured data can include, but is not limited to, arrays, classes, linked lists, multidimensional arrays, structs, user-defined classes. Objects can include, but are not limited to, constructors, data members, methods, pass-by-value/pass-by-reference parameters. Defining and storing can include, but are not limited to, modifiers such as final, private, protected, public. Manipulating data can include, but is not limited to, arranging (including stacking and queuing), casting, rearranging, sorting.
CSL4.3.1 Create a program to store and manipulate various data. NOTE: Structured data can include, but is not limited to, arrays, classes, linked lists, multidimensional arrays, structs, user-defined classes. Objects can include, but are not limited to, constructors, data members, methods, pass-by-value/pass-by-reference parameters. Defining and storing can include, but are not limited to, modifiers such as final, private, protected, public. Manipulating data can include, but is not limited to, arranging (including stacking and queuing), casting, rearranging, sorting.
CSL1.3.2 Compare and contrast level-appropriate numeric and non-numeric data representations. NOTE: Topics could include, but are not limited to, analog vs. digital, ASCII/Unicode, bar codes, compression, encoding, light/pixels, size of file vs. data types vs. storage needed, sound wave/sampling.
CSL2.3.2 Compare and contrast level-appropriate numeric and non-numeric data representations. NOTE: Topics could include, but are not limited to, analog vs. digital, ASCII/Unicode, bar codes, compression, encoding, light/pixels, size of file vs. data types vs. storage needed, sound wave/sampling.
CSL3.3.2 Compare and contrast level-appropriate numeric and non-numeric data representations. NOTE: Topics could include, but are not limited to, analog vs. digital, ASCII/Unicode, bar codes, compression, encoding, light/pixels, size of file vs. data types vs. storage needed, sound wave/sampling.
CSL4.3.2 Compare and contrast level-appropriate numeric and non-numeric data representations. NOTE: Topics could include, but are not limited to, analog vs. digital, ASCII/Unicode, bar codes, compression, encoding, light/pixels, size of file vs. data types vs. storage needed, sound wave/sampling.
CSL2.4.1 Analyze the degree to which a computer model accurately represents an actual situation (e.g., Conway’s Game of Life, population growth, predator-prey)
CSL3.4.1 Critique techniques for creating models, simulations, and generating random numbers to be used for data analysis
CSL4.4.1 Create various models and simulations as predictors for probabilistic scenarios (e.g., flip a coin, random walker, roll a die) and/or real-world scenarios (e.g., city population, predator-prey)
CSL1.4.2 Examine the ability of computing technology to create and process Big Data
CSL2.4.2 Determine an appropriate visual representation for given data
CSL3.4.2 Compare and contrast multiple visual representation tools for given data
CSL2.4.3 Implement algorithms to perform data analysis (e.g., longest string, maximum, mean, minimum, range)
CSL1.5.1 Construct and evaluate simple expressions using relational and logical operators
CSL2.5.1 Construct and evaluate compound expressions using relational and logical operators
CSL1.5.2 Design and implement algorithms that use sequence and selection including nested ifs (e.g., if, if/else, if/else if, switch-case)
CSL2.5.2 Design and implement algorithms that use sequence, selection, and iteration including nested loops (e.g., for, for each, while, do while)
CSL3.5.2 Design and implement algorithms that use sequence, selection, iteration and recursion
CSL1.5.3 Illustrate the flow of execution of a program including branching and looping
CSL2.5.3 Illustrate the flow of execution of an increasingly complex program including branching and looping
CSL3.5.3 Critically analyze classic search and sort algorithms in different contexts, adapting as appropriate
CSL1.5.4 Evaluate the qualities of level-appropriate algorithms. NOTE: Evaluation tools can include, but are not limited to, a code review and test cases. Qualities can include correctness, usability, readability, efficiency, portability, and scalability.
CSL2.5.4 Evaluate the qualities of level-appropriate algorithms. NOTE: Evaluation tools can include, but are not limited to, a code review and test cases. Qualities can include correctness, usability, readability, efficiency, portability, and scalability.
CSL3.5.4 Evaluate the qualities of level-appropriate algorithms. NOTE: Evaluation tools can include, but are not limited to, a code review and test cases. Qualities can include correctness, usability, readability, efficiency, portability, and scalability.
CSL4.5.4 Evaluate the qualities of level-appropriate algorithms. NOTE: Evaluation tools can include, but are not limited to, a code review and test cases. Qualities can include correctness, usability, readability, efficiency, portability, and scalability.
CSL1.5.5 Utilize a systematic approach to detect structural and logic errors
CSL2.5.5 Utilize a systematic approach to detect structural and logic errors
CSL3.5.5 Utilize a systematic approach to detect structural and logic errors
CSL4.5.5 Utilize a systematic approach to detect structural and logic errors
CSL1.6.1 Create programs to solve problems of level-appropriate complexity applying best practices of program design and format (e.g., descriptive names, documentation, indentation, whitespace). NOTE: Problems of varying complexity can include, but are not limited to, encoding, encryption, finding minimum/maximum values, identifying prime numbers, searching and sorting, and solving the Towers of Hanoi.
CSL2.6.1 Create programs to solve problems of level-appropriate complexity applying best practices of program design and format (e.g., descriptive names, documentation, indentation, whitespace). NOTE: Problems of varying complexity can include, but are not limited to, encoding, encryption, finding minimum/maximum values, identifying prime numbers, searching and sorting, and solving the Towers of Hanoi.
CSL3.6.1 Create programs to solve problems of level-appropriate complexity applying best practices of program design and format (e.g., descriptive names, documentation, indentation, whitespace). NOTE: Problems of varying complexity can include, but are not limited to, encoding, encryption, finding minimum/maximum values, identifying prime numbers, searching and sorting, and solving the Towers of Hanoi.
CSL4.6.1 Create programs to solve problems of level-appropriate complexity applying best practices of program design and format (e.g., descriptive names, documentation, indentation, whitespace). NOTE: Problems of varying complexity can include, but are not limited to, encoding, encryption, finding minimum/maximum values, identifying prime numbers, searching and sorting, and solving the Towers of Hanoi.
CSL1.6.2 Utilize functions/methods/procedures to input, output, and manipulate data with and without parameters. NOTE: In conjunction with standards CSL1.3.1 through CSL4.3.1, the goal is to introduce and implement object-oriented programming.
CSL2.6.2 Determine the scope of variables declared in functions/methods/procedures and control structures. NOTE: In conjunction with standards CSL1.3.1 through CSL4.3.1, the goal is to introduce and implement object-oriented programming.
CSL3.6.2 Determine the scope of variables and functions/methods/procedures declared in objects (e.g., public, private, encapsulation). NOTE: In conjunction with standards CSL1.3.1 through CSL4.3.1, the goal is to introduce and implement object-oriented programming.
CSL4.6.2 Determine the scope of variables and functions/methods/procedures defined in abstract classes and interfaces (e.g., encapsulation, inheritance, polymorphism). NOTE: In conjunction with standards CSL1.3.1 through CSL4.3.1, the goal is to introduce and implement object-oriented programming.
CSL1.6.3 Create a program that reads from standard input and writes to standard output
CSL2.6.3 Create a program that reads from a file and writes to a file
CSL4.6.4 Explain advantages and disadvantages of various software life cycle processes (e.g., Agile, spiral, waterfall) by participating on software project teams
CSL2.7.1 Characterize how software and/or hardware is used in industry (e.g., business, government, medical, military, sports)
CSL4.7.1 Utilize software and/or hardware to solve various industry-based problems
CSL1.7.2 Identify desired technical and soft skills (e.g., collaboration, communication, problem solving, teamwork) that can be enhanced by computer science
CSL2.7.2 Discuss technical and soft skills honed by computer science
CSL3.7.2 Demonstrate technical and soft skills honed by computer science
CSL4.7.2 Demonstrate technical and soft skills honed by computer science
CSL1.7.3 Discuss diverse careers that are influenced by computer science and its availability to all regardless of background
CSL2.7.3 Analyze a historical timeline of computers and technology
CSL3.7.3 Explore advancing and emerging technologies (e.g., Artificially Intelligent Agents, Robotics, Internet of Things [IoT])
CSL4.7.3 Explain how cutting-edge technology may affect the way business is conducted in the future (e.g., eCommerce, entrepreneurship, payment methods, business responsibilities)
CSL1.8.1 Utilize networks to perform level-appropriate tasks
CSL2.8.1 Utilize networks to perform level-appropriate tasks
CSL3.8.1 Utilize networks to perform level-appropriate tasks
CSL4.8.1 Utilize networks to perform level-appropriate tasks
CSL1.8.2 Discuss the role of internet service providers (ISP) in providing connectivity
CSL2.8.2 Discuss the hierarchical nature of networks, subnetworks, and the Internet
CSL3.8.2 Analyze how the nature of networks allow for a continual increase in the number of devices
CSL4.8.2 Research projects that utilize the power created through the networking of computers to solve level-appropriate problems
CSL1.8.3 Compare and contrast local area networks (LAN) and wide area networks (WAN)
CSL2.8.3 Identify various common topologies utilized in network implementations
CSL3.8.3 Analyze the tradeoffs of implementing various common topologies
CSL4.8.3 Analyze the tradeoffs of implementing increasingly complex topologies
CSL2.8.4 Identify digital and physical methods used to secure networks
CSL3.8.4 Discuss digital and physical methods used to secure networks
CSL4.8.4 Design a practical, efficient, and secure network solution (e.g., small office network)
CSL1.8.5 Identify common network protocols (e.g., DNS, HTTP/HTTPS, SMTP/POP/IMAP, Telnet/SSH)
CSL2.8.5 Compare and contrast common network protocols (e.g., DNS, HTTP/HTTPS, SMTP/POP/IMAP, Telnet/SSH)
CSL3.8.5 Analyze the Open Systems Interconnect (OSI) Model layers 1-7
CSL4.8.5 Map network operations to the OSI Model
CSL1.9.1 Compare and contrast computer programming paradigms and languages (e.g., text-based, visual, high-level, low-level, object-oriented)
CSL2.9.1 Compare and contrast the tradeoffs between compiled and interpreted languages
CSL3.9.1 Discuss considerations when programming for multiple computing platforms (e.g., desktop, mobile, web)
CSL1.9.2 Discuss version control and Integrated Development Environments (IDE)
CSL2.9.2 Use the debugger in an IDE
CSL3.9.2 Use collaboration tools in a group software project (e.g., cloud-based software)
CSL4.9.2 Use version control systems
CSL1.9.3 Classify layers of software (e.g., applications, drivers, operating systems) within various platforms
CSL1.9.4 Identify hardware components (e.g., input/output devices, internal organization of a computer, storage devices) of computing technology within various platforms
CSL1.10.1 Categorize the risks associated with the utilization and implementation of digital technology. Legal Physical Psychological Social NOTE: Legal issues include but are not limited to access, AFTRA, copyright, FAA, FCC, hacking, intellectual property, licensure, local computer-use policy, piracy, and plagiarism.
CSL2.10.1 Discuss the effects associated with the use of social media (e.g., global communication, hiring, incarceration, termination)
CSL3.10.1 Explain conflicting issues related to creating and enforcing cyber-related laws and regulations (e.g., ethical challenges, policy vacuum, privacy vs. security, unintended consequences)
CSL4.10.1 Formulate solutions that address the risks associated with extensive use and implementation of digital technology
CSL1.10.2 Discuss issues related to personal security
CSL2.10.2 Identify components of a digital footprint (e.g., active and passive data) and the lasting impact
CSL3.10.2 Explore the inverse relationship between online privacy and personal security (e.g., convenience and accessibility, data mining, digital marketing, online wallets, theft of personal information)
CSL3.10.3 Describe the beneficial and intrusive aspects of advancing and emerging technologies (e.g., Artificially Intelligent Agents, IoT, Robotics, self-aware, Skynet)
CSL4.10.3 Identify the ethical and moral implications encountered in managing and curating knowledge (e.g., harvesting, information overload, knowledge management reposting, sharing, summarizing)