Please enable JavaScript to use CodeHS

Arkansas 9-12 (outdated) Framework

Standards

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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
CSL1.2.1 Interpret logical expressions using Boolean operators (e.g., AND, NOT, OR, XOR) Lessons
CSL2.2.1 Interpret logical expressions using short-circuit evaluation Lessons
CSL1.2.2 Classify the types of information that can be stored as variables (e.g., Booleans, characters, integers, floating points, strings) Lessons
CSL1.2.3 Identify mathematical concepts (e.g., random number generation, vocabulary) related to computer science Lessons
CSL2.2.3 Recognize the similarities and differences between mathematics and computer science algorithms Lessons
CSL3.2.3 Demonstrate basic encryption (e.g., block cipher, Caesar cipher) Lessons
CSL2.2.4 Discuss the concept of abstraction Lessons
CSL3.2.4 Analyze the concepts of abstraction as modeling and abstraction as encapsulation Lessons
CSL4.2.4 Use the concepts of abstraction as modeling and abstraction as encapsulation Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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) Lessons
CSL3.4.1 Critique techniques for creating models, simulations, and generating random numbers to be used for data analysis Lessons
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) Lessons
CSL1.4.2 Examine the ability of computing technology to create and process Big Data Lessons
CSL2.4.2 Determine an appropriate visual representation for given data Lessons
CSL3.4.2 Compare and contrast multiple visual representation tools for given data Lessons
CSL2.4.3 Implement algorithms to perform data analysis (e.g., longest string, maximum, mean, minimum, range) Lessons
CSL1.5.1 Construct and evaluate simple expressions using relational and logical operators Lessons
CSL2.5.1 Construct and evaluate compound expressions using relational and logical operators Lessons
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) Lessons
CSL2.5.2 Design and implement algorithms that use sequence, selection, and iteration including nested loops (e.g., for, for each, while, do while) Lessons
CSL3.5.2 Design and implement algorithms that use sequence, selection, iteration and recursion Lessons
CSL1.5.3 Illustrate the flow of execution of a program including branching and looping Lessons
CSL2.5.3 Illustrate the flow of execution of an increasingly complex program including branching and looping Lessons
CSL3.5.3 Critically analyze classic search and sort algorithms in different contexts, adapting as appropriate Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
CSL1.5.5 Utilize a systematic approach to detect structural and logic errors Lessons
CSL2.5.5 Utilize a systematic approach to detect structural and logic errors Lessons
CSL3.5.5 Utilize a systematic approach to detect structural and logic errors Lessons
CSL4.5.5 Utilize a systematic approach to detect structural and logic errors Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
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. Lessons
CSL1.6.3 Create a program that reads from standard input and writes to standard output Lessons
CSL2.6.3 Create a program that reads from a file and writes to a file Lessons
CSL4.6.4 Explain advantages and disadvantages of various software life cycle processes (e.g., Agile, spiral, waterfall) by participating on software project teams Lessons
CSL2.7.1 Characterize how software and/or hardware is used in industry (e.g., business, government, medical, military, sports) Lessons
CSL4.7.1 Utilize software and/or hardware to solve various industry-based problems Lessons
CSL1.7.2 Identify desired technical and soft skills (e.g., collaboration, communication, problem solving, teamwork) that can be enhanced by computer science Lessons
CSL2.7.2 Discuss technical and soft skills honed by computer science Lessons
CSL3.7.2 Demonstrate technical and soft skills honed by computer science Lessons
CSL4.7.2 Demonstrate technical and soft skills honed by computer science Lessons
CSL1.7.3 Discuss diverse careers that are influenced by computer science and its availability to all regardless of background Lessons
CSL2.7.3 Analyze a historical timeline of computers and technology Lessons
CSL3.7.3 Explore advancing and emerging technologies (e.g., Artificially Intelligent Agents, Robotics, Internet of Things [IoT]) Lessons
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) Lessons
CSL1.8.1 Utilize networks to perform level-appropriate tasks Lessons
CSL2.8.1 Utilize networks to perform level-appropriate tasks Lessons
CSL3.8.1 Utilize networks to perform level-appropriate tasks Lessons
CSL4.8.1 Utilize networks to perform level-appropriate tasks Lessons
CSL1.8.2 Discuss the role of internet service providers (ISP) in providing connectivity Lessons
CSL2.8.2 Discuss the hierarchical nature of networks, subnetworks, and the Internet Lessons
CSL3.8.2 Analyze how the nature of networks allow for a continual increase in the number of devices Lessons
CSL4.8.2 Research projects that utilize the power created through the networking of computers to solve level-appropriate problems Lessons
CSL1.8.3 Compare and contrast local area networks (LAN) and wide area networks (WAN) Lessons
CSL2.8.3 Identify various common topologies utilized in network implementations Lessons
CSL3.8.3 Analyze the tradeoffs of implementing various common topologies Lessons
CSL4.8.3 Analyze the tradeoffs of implementing increasingly complex topologies Lessons
CSL2.8.4 Identify digital and physical methods used to secure networks Lessons
CSL3.8.4 Discuss digital and physical methods used to secure networks Lessons
CSL4.8.4 Design a practical, efficient, and secure network solution (e.g., small office network) Lessons
CSL1.8.5 Identify common network protocols (e.g., DNS, HTTP/HTTPS, SMTP/POP/IMAP, Telnet/SSH) Lessons
CSL2.8.5 Compare and contrast common network protocols (e.g., DNS, HTTP/HTTPS, SMTP/POP/IMAP, Telnet/SSH) Lessons
CSL3.8.5 Analyze the Open Systems Interconnect (OSI) Model layers 1-7 Lessons
CSL4.8.5 Map network operations to the OSI Model Lessons
CSL1.9.1 Compare and contrast computer programming paradigms and languages (e.g., text-based, visual, high-level, low-level, object-oriented) Lessons
CSL2.9.1 Compare and contrast the tradeoffs between compiled and interpreted languages Lessons
CSL3.9.1 Discuss considerations when programming for multiple computing platforms (e.g., desktop, mobile, web) Lessons
CSL1.9.2 Discuss version control and Integrated Development Environments (IDE) Lessons
CSL2.9.2 Use the debugger in an IDE Lessons
CSL3.9.2 Use collaboration tools in a group software project (e.g., cloud-based software) Lessons
CSL4.9.2 Use version control systems Lessons
CSL1.9.3 Classify layers of software (e.g., applications, drivers, operating systems) within various platforms Lessons
CSL1.9.4 Identify hardware components (e.g., input/output devices, internal organization of a computer, storage devices) of computing technology within various platforms Lessons
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. Lessons
CSL2.10.1 Discuss the effects associated with the use of social media (e.g., global communication, hiring, incarceration, termination) Lessons
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) Lessons
CSL4.10.1 Formulate solutions that address the risks associated with extensive use and implementation of digital technology Lessons
CSL1.10.2 Discuss issues related to personal security Lessons
CSL2.10.2 Identify components of a digital footprint (e.g., active and passive data) and the lasting impact Lessons
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) Lessons
CSL3.10.3 Describe the beneficial and intrusive aspects of advancing and emerging technologies (e.g., Artificially Intelligent Agents, IoT, Robotics, self-aware, Skynet) Lessons
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) Lessons