Skip to main content
California Department of Education Logo

Computer Science Standards




Results


Showing 21 - 30 of 52 Standards

Standard Identifier: 6-8.AP.18

Grade Range: 6–8
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Collaborating Around Computing, Creating Computational Artifacts (2.2, 5.1)

Standard:
Distribute tasks and maintain a project timeline when collaboratively developing computational artifacts.

Descriptive Statement:
Collaboration is a common and crucial practice in programming development. Often, many individuals and groups work on the interdependent parts of a project together. Students assume pre-defined roles within their teams and manage the project workflow using structured timelines. With teacher guidance, they begin to create collective goals, expectations, and equitable workloads. For example, students could decompose the design stage of a game into planning the storyboard, flowchart, and different parts of the game mechanics. They can then distribute tasks and roles among members of the team and assign deadlines. Alternatively, students could work as a team to develop a storyboard for an animation representing a written narrative, and then program the scenes individually. (CA CCSS for ELA/Literacy W.6.3, W.7.3, W.8.3)

Standard Identifier: 6-8.AP.19

Grade Range: 6–8
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Communicating About Computing (7.2)

Standard:
Document programs in order to make them easier to use, read, test, and debug.

Descriptive Statement:
Documentation allows creators, end users, and other developers to more easily use and understand a program. Students provide documentation for end users that explains their artifacts and how they function (e.g., project overview, user instructions). They also include comments within code to describe portions of their programs and make it easier for themselves and other developers to use, read, test, and debug. For example, students could add comments to describe functionality of different segments of code (e.g., input scores between 0 and 100, check for invalid input, calculate and display the average of the scores). They could also communicate the process used by writing design documents, creating flowcharts, or making presentations. (CA CCSS for ELA/Literacy SL.6.5, SL.7.5, SL.8.5)

Standard Identifier: 6-8.CS.2

Grade Range: 6–8
Concept: Computing Systems
Subconcept: Hardware & Software
Practice(s): Creating Computational Artifacts (5.1)

Standard:
Design a project that combines hardware and software components to collect and exchange data.

Descriptive Statement:
Collecting and exchanging data involves input, output, storage, and processing. When possible, students select the components for their project designs by considering tradeoffs between factors such as functionality, cost, size, speed, accessibility, and aesthetics. Students do not need to implement their project design in order to meet this standard. For example, students could design a mobile tour app that displays information relevant to specific locations when the device is nearby or when the user selects a virtual stop on the tour. They select appropriate components, such as GPS or cellular-based geolocation tools, textual input, and speech recognition, to use in their project design. Alternatively, students could design a project that uses a sensor to collect the salinity, moisture, and temperature of soil. They may select a sensor that connects wirelessly through a Bluetooth connection because it supports greater mobility, or they could instead select a physical USB connection that does not require a separate power source. (CA NGSS: MS-ETS1-1, MS-ETS1-2)

Standard Identifier: 6-8.IC.20

Grade Range: 6–8
Concept: Impacts of Computing
Subconcept: Culture
Practice(s): Communicating About Computing (7.2)

Standard:
Compare tradeoffs associated with computing technologies that affect people's everyday activities and career options.

Descriptive Statement:
Advancements in computer technology are neither wholly positive nor negative. However, the ways that people use computing technologies have tradeoffs. Students consider current events related to broad ideas, including privacy, communication, and automation. For example, students could compare and contrast the impacts of computing technologies with the impacts of other systems developed throughout history such as the Pony Express and US Postal System. (HSS.7.8.4) Alternatively, students could identify tradeoffs for both personal and professional uses of a variety of computing technologies. For instance, driverless cars can increase convenience and reduce accidents, but they may be susceptible to hacking. The emerging industry will reduce the number of taxi and shared-ride drivers, but may create more software engineering and cybersecurity jobs.

Standard Identifier: 6-8.IC.21

Grade Range: 6–8
Concept: Impacts of Computing
Subconcept: Culture
Practice(s): Fostering an Inclusive Computing Culture (1.2)

Standard:
Discuss issues of bias and accessibility in the design of existing technologies.

Descriptive Statement:
Computing technologies should support users of many backgrounds and abilities. In order to maximize accessiblity, these differences need to be addressed by examining diverse populations. With the teacher's guidance, students test and discuss the usability of various technology tools, such as apps, games, and devices. For example, students could discuss the impacts of facial recognition software that works better for lighter skin tones and recognize that the software was likely developed with a homogeneous testing group. Students could then discuss how accessibility could be improved by sampling a more diverse population. (CA CCSS for ELA/Literacy SL.6.1, SL.7.1, SL.8.1)

Standard Identifier: 9-12.AP.12

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Algorithms
Practice(s): Developing and Using Abstractions, Creating Computational Artifacts (4.2, 5.1)

Standard:
Design algorithms to solve computational problems using a combination of original and existing algorithms.

Descriptive Statement:
Knowledge of common algorithms improves how people develop software, secure data, and store information. Some algorithms may be easier to implement in a particular programming language, work faster, require less memory to store data, and be applicable in a wider variety of situations than other algorithms. Algorithms used to search and sort data are common in a variety of software applications. For example, students could design an algorithm to calculate and display various sports statistics and use common sorting or mathematical algorithms (e.g., average) in the design of the overall algorithm. Alternatively, students could design an algorithm to implement a game and use existing randomization algorithms to place pieces randomly in starting positions or to control the "roll" of a dice or selection of a "card" from a deck.

Standard Identifier: 9-12.AP.18

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Fostering an Inclusive Computing Culture, Creating Computational Artifacts (1.1, 5.1)

Standard:
Systematically design programs for broad audiences by incorporating feedback from users.

Descriptive Statement:
Programmers use a systematic design and review process to meet the needs of a broad audience. The process includes planning to meet user needs, developing software for broad audiences, testing users from a cross-section of the audience, and refining designs based on feedback. For example, students could create a user satisfaction survey and brainstorm distribution methods to collect feedback about a mobile application. After collecting feedback from a diverse audience, students could incorporate feedback into their product design. Alternatively, while developing an e-textiles project with human touch sensors, students could collect data from peers and identify design changes needed to improve usability by users of different needs.

Standard Identifier: 9-12.AP.19

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Communicating About Computing (7.3)

Standard:
Explain the limitations of licenses that restrict use of computational artifacts when using resources such as libraries.

Descriptive Statement:
Software licenses include copyright, freeware, and open-source licensing schemes. Licenses are used to protect the intellectual property of the author while also defining accessibility of the code. Students consider licensing implications for their own work, especially when incorporating libraries and other resources. For example, students might consider two software libraries that address a similar need, justifying their choice of one over the other. The choice could be based upon least restrictive licensing or further protections for their own intellectual property.

Standard Identifier: 9-12.AP.20

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Testing and Refining Computational Artifacts (6.3)

Standard:
Iteratively evaluate and refine a computational artifact to enhance its performance, reliability, usability, and accessibility.

Descriptive Statement:
Evaluation and refinement of computational artifacts involves measuring, testing, debugging, and responding to the changing needs and expectations of users. Aspects that can be evaluated include correctness, performance, reliability, usability, and accessibility. For example, after witnessing common errors with user input in a computational artifact, students could refine the artifact to validate user input and provide an error message if invalid data is provided. Alternatively, students could observe a robot in a variety of lighting conditions to determine whether the code controlling a light sensor should be modified to make it less sensitive. Additionally, students could also incorporate feedback from a variety of end users to help guide the size and placement of menus and buttons in a user interface.

Standard Identifier: 9-12.AP.21

Grade Range: 9–12
Concept: Algorithms & Programming
Subconcept: Program Development
Practice(s): Collaborating Around Computing (2.4)

Standard:
Design and develop computational artifacts working in team roles using collaborative tools.

Descriptive Statement:
Collaborative tools can be as complex as a source code version control system or as simple as a collaborative word processor. Team roles in pair programming are driver and navigator but students can take on more specialized roles in larger teams. Teachers or students should choose resources that aid collaborative program development as programs grow more complex. For example, students might work as a team to develop a mobile application that addresses a problem relevant to the school or community, using appropriate tools to support actions such as: establish and manage the project timeline; design, share, and revise graphical user interface elements; implement program components, track planned, in-progress, and completed components, and design and implement user testing.

Showing 21 - 30 of 52 Standards


Questions: Curriculum Frameworks and Instructional Resources Division | CFIRD@cde.ca.gov | 916-319-0881