Please enable JavaScript to use CodeHS

Idaho 9-10 Standards Framework

44 Standards in this Framework


Standard Description
9-10.AP.01 Design and develop a software artifact by leading, initiating, and participating in a team (e.g. pair programming, agile software development).
9-10.AP.02 Demonstrate how diverse collaboration, both inside and outside of a team, impacts the design and development of software products (e.g. students show their own artifacts and demonstrate and reflect how diverse collaboration made a product better).
9-10.AP.03 Compare a variety of programming languages available to solve problems and develop systems.
9-10.AP.04 Explore security issues that might lead to compromised computer programs (e.g. ambiguous function calls, lack of error checking of the input, buffer overflow, SQL injection attacks, denial of service attacks).
9-10.AP.05 Classify and define the different types of software licenses in order to understand how to apply each one to a specific software example.
9-10.AP.06 Understand the notion of hierarchy and abstraction in high-level languages, translation, instruction sets, and logic circuits.
9-10.AP.07 Explore issues surrounding mobile computing by creating a mobile computing application (e.g. App Inventor).
9-10.AP.08 Create software solutions by applying analysis, design, implementation and testing techniques.
9-10.AP.09 Demonstrate code reuse by creating programming solutions using APIs and libraries (e.g. using text to speech in App Inventor, using Twitter API).
9-10.AP.10 Illustrate the flow of execution and output of a given program (e.g. flow and control diagrams).
9-10.AP.11 Illustrate how mathematical and statistical functions, sets, and logic are used in computation.
9-10.AP.12 Design algorithms using sequence, selection, iteration and recursion.
9-10.AP.13 Explain, represent, and understand natural phenomena using modeling and simulation
9-10.AP.14 Describe the concept of parallel processing as a strategy to solve large problems.
9-10.AP.15 Compare and evaluate software development processes used to solve problems (e.g. waterfall, agile).
9-10.AP.16 Decompose a complex problem into simpler parts using predefined functions and parameters, classes, and methods.
9-10.AP.17 Demonstrate the value of abstraction to manage problem complexity.
9-10.AP.18 Evaluate and improve program quality using various debugging and testing methods and examine the difference between verification and validation.
9-10.AP.19 Evaluate programs written by others for readability and usability.
9-10.CS.01 Identify and evaluate what computing resources are required for a given purpose (e.g. system requirements needed to run a program, hardware, and software needed to run game X).
9-10.CS.02 Explore the unique features of embedded computers in areas such as mobile devices, sensors, and vehicles.
9-10.CS.03 Create or modify a program that uses different forms of input and output. (e.g. use voice input instead of text input, use text-to-speech for output)
9-10.CS.04 Demonstrate the multiple levels of abstraction that support program execution including programming languages, translations, and low-level systems including the fetch-execute cycle (e.g. model, dance, create a play/presentation).
9-10.DA.01 Illustrate how various types of data are stored in a computer system (e.g. how sound and images are stored).
9-10.DA.02 Differentiate between information access and distribution rights (e.g. write, discuss).
9-10.DA.03 Compare and contrast the viewpoints on cybersecurity from the perspective of security experts, privacy advocates, the government (e.g. persuasive essay, presentation, or debate).
9-10.DA.04 Explain the principles of security by examining encryption, cryptography, and authentication techniques.
9-10.DA.05 Apply basic techniques for locating, collecting, and understanding the quality of small and large-scale data sets (e.g. public data sets).
9-10.DA.06 Convert between binary, decimal, octal, and hexadecimal representations of data.
9-10.DA.07 Analyze the representation and trade-offs among various forms of digital information (e.g. lossy versus lossless compression).
9-10.DA.08 Analyze data and identify patterns through modeling and simulation.
9-10.IC.01 Explain the social and economic implications associated with unethical computing practices (e.g. software piracy, intrusion, malware, current corporate fraud examples).
9-10.IC.02 Discuss trade-offs such as privacy, safety, and convenience associated with the collection and large scale analysis of information about individuals (e.g. social media, online shopping, how grocery/dept stores collect and use personal data).
9-10.IC.03 Understand and explain the impact of artificial intelligence and robotics.
9-10.IC.04 Describe how computer science shares features with creating and designing an artifact such as in music and art.
9-10.IC.05 Demonstrate how computing enhances traditional forms and enables new forms of experience, expression, communication, and collaboration (e.g. virtual reality).
9-10.IC.06 Explain the impact of the digital divide on access to critical information (e.g. education, healthcare, medical records, access to training).
9-10.IC.07 Compare the positive and negative impacts of computing on behavior and culture.
9-10.IC.08 Evaluate a computational artifact for its effectiveness for universal access (e.g. compare sample code with accessibility standards, building in access from initial design).
9-10.IC.09 Practice responsible digital citizenship (legal and ethical behaviors) in the use of technology systems and software.
9-10.IC.10 Explain how computer science fosters innovation and enhances other careers and disciplines.
9-10.IC.11 Explain the impacts of computing on business, manufacturing, commerce, and society.
9-10.NI.01 Describe the underlying process of Internet-based services. (e.g. illustrate how information flows in a global network, servers and clients, cloud services, secure versus insecure communication).
9-10.NI.02 Illustrate the basic components of computer networks, protocols and routing (e.g. team based activities which may include drawing a diagram of a network including routers, switches, local networks, and end user computing devices, creating models with string and paper, see CS unplugged activities).