Please enable JavaScript to use CodeHS

Utah CS Investigations Framework


Standard Description
UT.CSI.1.1a Use the structured problem-solving process to help address new problems Lessons
UT.CSI.1.1b View challenges as solvable Lessons
UT.CSI.1.1c Break down larger problems into smaller components (decomposition) Lessons
UT.CSI.1.2a Expect and value mistakes as a natural and productive part of problem solving Lessons
UT.CSI.1.2b Continue working towards solutions despite setbacks Lessons
UT.CSI.1.2c Iterate and continue to improve partial solutions Lessons
UT.CSI.1.3a Incorporate personal interests and ideas into activities and projects Lessons
UT.CSI.1.3b Experiment with new ideas and consider multiple possible approaches Lessons
UT.CSI.1.3c Extend or build upon the ideas and projects of others Lessons
UT.CSI.1.4a Work with others to develop solutions that incorporate all contributors Lessons
UT.CSI.1.4b Mediate disagreements and help teammates agree on a common solution Lessons
UT.CSI.1.4c Actively contribute to the success of group projects Lessons
UT.CSI.1.5a Structure work so that it can be easily understood by others Lessons
UT.CSI.1.5b Consider the perspective and background of your audience when presenting your work Lessons
UT.CSI.1.5c Provide and accept constructive feedback in order to improve your work Lessons
UT.CSI.2.1 Students will identify different types of computing devices they encounter in their everyday life including laptops, desktops, mobile devices, gaming systems, wearable technology and embedded systems (drones, car systems, smart houses, etc.). Lessons
UT.CSI.2.1a Identify required functions for a device to be classified as a computer (input, processing; output; storage) Lessons
UT.CSI.2.1b Identify examples of tasks that can and cannot be accomplished with a computer. Lessons
UT.CSI.2.2 Students will explain the purpose of and interaction between key functional components of a computer including processor, RAM, ROM, hard drive, and input and output devices. Lessons
UT.CSI.2.3 Students will demonstrate an understanding of gigahertz, kilobyte, megabyte, gigabyte, and terabyte in relation to current computing devices. Lessons
UT.CSI.2.4 Students will explain the interrelation of the operating system software, application software, and utility software, citing specific examples of each. Lessons
UT.CSI.2.5 Students will diagnose and solve routine hardware and software problems that occur during everyday computer use. (e.g., reboot/restart, power, connections, cables, ports, network resources, video, sound) Lessons
UT.CSI.3.1 Students will understand and describe the network system that makes up the Internet. Lessons
UT.CSI.3.2 Students will investigate web search algorithms and how search engines work (crawling, indexing and ranking websites). Lessons
UT.CSI.3.3 Students will describe how packets are used to send and receive data and what happens to the data when it experiences packet loss. Lessons
UT.CSI.3.4 Students will evaluate how various physical and digital security measures protect electronic information and how a lack of such measures could lead to vulnerabilities. (cybersecurity) Lessons
UT.CSI.3.5 Students will investigate multiple methods of secure transmission of information. (i.e.: encryption, firewalls, VPNs) Lessons
UT.CSI.4.1 Students will evaluate the quality of digital sources for reliability, including currency, relevancy, authority, accuracy, and purpose of digital information. Lessons
UT.CSI.4.1a Relate the distribution of computing resources in a global society to issues of equity, access, and power. Lessons
UT.CSI.4.1b Evaluate the bias of digital information sources, including websites. Lessons
UT.CSI.4.1c Evaluate how media and technology can be used to distort, exaggerate, and misrepresent information. Lessons
UT.CSI.4.2 Students will identify some of the tradeoffs associated with computing technologies that can affect people’s everyday activities and career options. Lessons
UT.CSI.4.3 Students will be able to identify issues of bias and accessibility in the design and functionality of existing technologies. Lessons
UT.CSI.4.4 Students will understand the ethical responsibility to society when creating apps or programs- including the following: empathy with the end user, improving the world around you, efficiency-making things easier, potential liability for misuse, potential security issues. Lessons
UT.CSI.4.5 Students will be able to explain the benefits and risks associated with sharing information digitally: Lessons
UT.CSI.4.5a Appropriate uses of social media in personal, educational, extra-curricular, professional, and community scenarios Lessons
UT.CSI.4.5b Permanence of online information Lessons
UT.CSI.4.5c Appropriate methods of communication for personal, educational, extra-curricular, professional, and community situations Lessons
UT.CSI.4.5d Online safety [password/passphrase, personal information, location (GPS), sharing images, talking to/ meeting up with strangers, financial information, names, and addresses] Lessons
UT.CSI.5.1 Solve a problem by applying appropriate problem-solving techniques: Define - Understand the Problem, Prepare - Plan the Solution (design via pseudocode/flowcharts), Try - Carry out the Plan (Code), Reflect - Review and Discuss your Solution (Testing / Feedback) Lessons
UT.CSI.5.2 Students will identify how planning strategies (such as flowcharts, storyboards, prototypes or pseudocode) are used when creating a program. Lessons
UT.CSI.5.3 Define an algorithm as a set of clearly defined, logical steps to solve a problem. Lessons
UT.CSI.5.3a Students will describe the steps needed to efficiently solve a non-computing problem using a pseudocode algorithm Lessons
UT.CSI.5.3b Students will examine traditional programming algorithms including searches, sorts, and/or minimal spanning trees. Lessons
UT.CSI.5.3c Students will examine and formulate algorithms that solve specific problems. Lessons
UT.CSI.5.4 Students will recognize a variety of different user input sources such as text input, sensors, mouse response, movement, or event. Students will recognize a variety of different outputs such as sounds, light, vibrations, movement, text and/or graphics. Lessons
UT.CSI.5.5a Students will understand that variables are named locations in memory. Lessons
UT.CSI.5.5b Students will be able to identify variables and when they should be used in code. Lessons
UT.CSI.5.6 Students will understand that programs use loops (iteration) to be more efficient and avoid code duplication. Lessons
UT.CSI.5.7 Students will understand that programs use conditionals to perform different computations or actions based on whether a condition is true or false (Booleans). Lessons
UT.CSI.5.8 Students will understand that programs use mathematical symbols (+, -, *, /, >, <, ==, AND, OR) in a program to perform specific operations (mathematical, relational, or logical) and produce a single result. Lessons
UT.CSI.5.9 Students will understand that a function is a named block of code that performs a specific task. Functions encourage efficiency, reusability, and readability. Lessons
UT.CSI.5.10 Students will understand that debugging is finding and removing errors from a program so it can operate as intended. Strategies students might learn for debugging could include: Guess and Check; Deactivating sections to identify problematic code; Looking for typos, missing tags, or incorrect syntax; Making the problem smaller - identifying important points (changing variable values, getting input, etc.); Asking a friend or team member for help; Printing, watching, or changing variable values while the program runs; Using a debugging tool; Thinking about when the code last worked and what you have added since then Lessons
UT.CSI.6.1a Students will define a binary system as one that uses just two possible states to represent information Lessons
UT.CSI.6.1b Students will define a bit as a single piece of binary information Lessons
UT.CSI.6.1c Students will be familiar with common features of systems used to represent information in binary, ASCII, and images Lessons
UT.CSI.6.1c.i Students will use the ASCII system to encode and decode text information in binary Lessons
UT.CSI.6.1c.ii Students will use a binary system to represent numbers Lessons
UT.CSI.6.1d Students will describe common features of systems used to represent information in binary Lessons
UT.CSI.6.2 Students will collect and/or generate their own data related to local community issues and discuss appropriate methods for data collection and aggregation of data necessary to support making a case of facilitating a discovery. Lessons