Please enable JavaScript to use CodeHS

Montana 9-12 Framework


Standard Description
CS.AP.9-12.1 create prototypes that use algorithms to solve computational problems by leveraging prior student knowledge and personal interests; Lessons
CS.AP.9-12.2 describe how artificial intelligence drives many software and physical systems; Lessons
CS.AP.9-12.3 implement an artificial intelligence algorithm to play a game against a human opponent or solve a problem; Lessons
CS.AP.9-12.4 use and adapt classic algorithms to solve computational problems; Lessons
CS.AP.9-12.5 evaluate algorithms in terms of their efficiency, correctness, and clarity; Lessons
CS.AP.9-12.6 use lists to simplify solutions, generalizing computational problems instead of repeatedly using simple variables; Lessons
CS.AP.9-12.7 compare and contrast fundamental data structures and their uses; Lessons
CS.AP.9-12.8 justify the selection of specific control structures when tradeoffs involve implementation, readability, and program performance, and explain the benefits and drawbacks of choices made; Lessons
CS.AP.9-12.9 design and iteratively develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions; Lessons
CS.AP.9-12.10 decompose problems into smaller components through systematic analysis, using constructs such as procedures, modules, or objects; Lessons
CS.AP.9-12.11 create artifacts by using procedures within a program, combinations of data and procedures, or independent but interrelated programs; Lessons
CS.AP.9-12.12 construct solutions to problems using student-created procedures, modules, or objects; Lessons
CS.AP.9-12.13 analyze a large-scale computational problem and identify generalizable patterns that can be applied to a solution; Lessons
CS.AP.9-12.14 demonstrate code reuse by creating programming solutions using libraries and application programming interfaces; Lessons
CS.AP.9-12.15 systematically design and develop programs for broad audiences by incorporating feedback from users; Lessons
CS.AP.9-12.16 evaluate and refine computational artifacts to make them more usable and accessible; Lessons
CS.AP.9-12.17 design and develop computational artifacts working in team roles using collaborative tools; Lessons
CS.AP.9-12.18 document design decisions using text, graphics, presentations, or demonstrations in the development of complex programs; Lessons
CS.AP.9-12.19 plan and develop programs for broad audiences using a software life cycle process; Lessons
CS.AP.9-12.20 explain security issues that might lead to compromised computer programs; Lessons
CS.AP.9-12.21 develop programs for multiple computing platforms; Lessons
CS.AP.9-12.22 use version control systems, integrated development environments, and collaborative tools and practices in a group software project; Lessons
CS.AP.9-12.23 develop and use a series of test cases to verify that a program performs according to its design specifications; Lessons
CS.AP.9-12.24 modify an existing program to add additional functionality and discuss intended and unintended implications; Lessons
CS.AP.9-12.25 evaluate key qualities of a program through a process such as a code review; and Lessons
CS.AP.9-12.26 compare multiple programming languages and discuss how their features make them suitable for solving different types of problems. Lessons
CS.CS.9-12.1 explain how abstractions hide the underlying implementation details of computing systems embedded in everyday objects; Lessons
CS.CS.9-12.2 compare levels of abstraction and interactions between application software, system software, and hardware layers; Lessons
CS.CS.9-12.3 categorize the roles of operating system software; Lessons
CS.CS.9-12.4 develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors; and Lessons
CS.CS.9-12.5 illustrate ways computing systems implement logic, input, and output through hardware components. Lessons
CS.DA.9-12.1 create interactive data visualizations using software tools to help others better understand authentic phenomena; Lessons
CS.DA.9-12.2 use data analysis tools and techniques to identify patterns in data representing complex systems; Lessons
CS.DA.9-12.3 select data collection tools and techniques to generate data sets that support a claim or communicate information; Lessons
CS.DA.9-12.4 translate between different bit representations of authentic phenomena, including characters, numbers, and images; Lessons
CS.DA.9-12.5 evaluate the tradeoffs in how data elements are organized and where data is stored; Lessons
CS.DA.9-12.6 create computational models that represent the relationships among different elements of data collected from a phenomenon or process; and Lessons
CS.DA.9-12.7 evaluate the ability of models and simulations to test and support the refinement of hypotheses. Lessons
CS.IC.9-12.1 evaluate the ways computing technologies, globally and locally impact personal, ethical, social, economic, and cultural practices; Lessons
CS.IC.9-12.2 evaluate the ways computing technologies impact American Indian communities in Montana; Lessons
CS.IC.9-12.3 test and refine computational artifacts to reduce bias and equity deficits; Lessons
CS.IC.9-12.4 demonstrate ways a given algorithm applies to problems across disciplines; Lessons
CS.IC.9-12.5 evaluate computational artifacts to maximize their beneficial effects and minimize harmful effects on society; Lessons
CS.IC.9-12.6 evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society, including the impact on American Indians living in urban, rural, and reservation communities; Lessons
CS.IC.9-12.7 predict how computational innovations that have revolutionized aspects of our culture might evolve; Lessons
CS.IC.9-12.8 use tools and methods to connect and work with others on a project including people in different cultures and career fields; Lessons
CS.IC.9-12.9 explain the beneficial and harmful effects that intellectual property laws can have on innovation; Lessons
CS.IC.9-12.10 explain the privacy concerns related to the collection and generation of data through automated processes that may not be evident to users; Lessons
CS.IC.9-12.11 evaluate the social and economic implications of privacy in the context of safety, law, or ethics; and Lessons
CS.IC.9-12.12 debate laws and regulations that impact the development and use of software. Lessons
CS.NI.9-12.1 recommend security measures to address various scenarios based on factors including efficiency, feasibility, and ethical impacts; Lessons
CS.NI.9-12.2 explain tradeoffs when selecting and implementing cybersecurity recommendations; Lessons
CS.NI.9-12.3 compare ways software developers protect devices and information from unauthorized access; Lessons
CS.NI.9-12.4 evaluate the scalability and reliability of networks by describing the relationship between routers, addressing, switches, servers, and topology; Lessons
CS.NI.9-12.5 give examples to illustrate how sensitive data can be affected by malware and other attacks; Lessons
CS.NI.9-12.6 compare various security measures, considering tradeoffs between the usability and security of a computing system; and Lessons
CS.NI.9-12.7 discuss the issues that impact functionality. Lessons