cs-standardsalgorithmsprogramming
cs-standardsalgorithmsprogramming
Algorithms and
Programming
Revised 2018 7
7
License
This work is licensed under a Creative Commons Attribution-NonCommercial-
ShareAlike 4.0 International License. Accordingly, individuals and
organizations are free to share and adapt the materials in whole or in part, as
long as they provide proper attribution, do not use for commercial purposes,
and share contributions or derivations under the same license.
Attribution
The CSTA K–12 Computer Science Standards are created and maintained by
members of the Computer Science Teachers Association (CSTA).
The Association for Computing Machinery (ACM) founded CSTA as part of its
commitment to K–12 computer science education. This work is licensed under
a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International
License.
Suggested citation: Computer Science Teachers Association (2017). CSTA K–12 Computer Science
Standards, Revised 2017. Retrieved from http://www.csteachers.org/standards.
The CSTA Standards Revision Task Force crafted standards by combining concept statements and
practices from the Framework. The Task Force also used descriptive material from the Framework when
writing examples and clarifying statements to accompany the standards. The glossary referenced in the
navigation header links directly to the Framework's glossary.
2
Legend for Identifiers
Unique Numbering System for the Washington Computer Science K–12 Learning Standards
To help organize and track each individual standard, a unique identifier was developed. An example
appears below:
Use the following legend to interpret the unique identifier for each Computer Science K–12 Learning
Standard:
2 Grades 6–8
3A Grades 9–10
3B Grades 11–12
CS Computing Systems
NI Networks and the Internet
Concepts
3
K-12 Algorithms and Programming Standards 1A: K-2
4
Identifier Level 2: 6–8
2-AP-10 Use flowcharts and/or pseudocode to address complex problems as algorithms.
Create clearly named variables that represent different data types and perform
2-AP-11
operations on their values.
Design and iteratively develop programs that combine control structures, including
2-AP-12
nested loops and compound conditionals.
Decompose problems and subproblems into parts to facilitate the design,
2-AP-13
implementation, and review of programs.
2-AP-14 Create procedures with parameters to organize code and make it easier to reuse.
Seek and incorporate feedback from team members and users to refine a solution that
2-AP-15
meets user needs.
Incorporate existing code, media, and libraries into original programs, and give
2-AP-16
attribution.
2-AP-17 Systematically test and refine programs using a range of test cases.
Distribute tasks and maintain a project timeline when collaboratively developing
2-AP-18
computational artifacts.
2-AP-19 Document programs in order to make them easier to follow, test, and debug.
Identifier Level 3A: 9–10
Create prototypes that use algorithms to solve computational problems by leveraging
3A-AP-13
prior student knowledge and personal interests.
Use lists to simplify solutions, generalizing computational problems instead of repeatedly
3A-AP-14
using simple variables.
Justify the selection of specific control structures when tradeoffs involve
3A-AP-15 implementation, readability, and program performance, and explain the benefits and
drawbacks of choices made.
Design and iteratively develop computational artifacts for practical intent, personal
3A-AP-16
expression, or to address a societal issue by using events to initiate instructions.
Decompose problems into smaller components through systematic analysis, using
3A-AP-17
constructs such as procedures, modules, and/or objects.
Create artifacts by using procedures within a program, combinations of data and
3A-AP-18
procedures, or independent but interrelated programs.
Systematically design and develop programs for broad audiences by incorporating
3A-AP-19
feedback from users.
Evaluate licenses that limit or restrict use of computational artifacts when using
3A-AP-20
resources such as libraries.
3A-AP-21 Evaluate and refine computational artifacts to make them more usable and accessible.
Design and develop computational artifacts working in team roles using collaborative
3A-AP-22
tools.
Document –design decisions using text, graphics, presentations, and/or demonstrations
3A-AP-23
in the development of complex programs.
5
Identifier Level 3B: 11–12
3B-AP-08 Describe how artificial intelligence drives many software and physical systems.
Implement an artificial intelligence algorithm to play a game against a human opponent
3B-AP-09
or solve a problem.
3B-AP-10 Use and adapt classic algorithms to solve computational problems.
3B-AP-11 Evaluate algorithms in terms of their efficiency, correctness, and clarity.
3B-AP-12 Compare and contrast fundamental data structures and their uses.
3B-AP-13 Illustrate the flow of execution of a recursive algorithm.
Construct solutions to problems using student-created components, such as procedures,
3B-AP-14
modules and/or objects.
Analyze a large-scale computational problem and identify generalizable patterns that
3B-AP-15
can be applied to a solution.
3B-AP-16 Demonstrate code reuse by creating programming solutions using libraries and APIs.
3B-AP-17 Plan and develop programs for broad audiences using a software lifecycle process.
3B-AP-18 Explain security issues that might lead to compromised computer programs.
3B-AP-19 Develop programs for multiple computing platforms.
Use version control systems, integrated development environments (IDEs), and
3B-AP-20
collaborative tools and practices (code documentation) in a group software project.
Develop and use a series of test cases to verify that a program performs according to its
3B-AP-21
design specifications.
Modify an existing program to add additional functionality and discuss intended and
3B-AP-22
unintended implications (e.g., breaking other functionality).
3B-AP-23 Evaluate key qualities of a program through a process such as a code review.
Compare multiple programming languages and discuss how their features make them
3B-AP-24
suitable for solving different types of problems.
6
OSPI provides equal access to all programs and services without discrimination based on sex, race, creed, religion, color,
national origin, age, honorably discharged veteran or military status, sexual orientation, gender expression, gender
identity, disability, or the use of a trained dog guide or service animal by a person with a disability. Questions and
complaints of alleged discrimination should be directed to the Equity and Civil Rights Director at 360-725-6162;
TTY: 360-664-3631; or P.O. Box 47200, Olympia, WA 98504-7200; or [email protected].
Download this material in PDF at http://www.k12.wa.us/CurriculumInstruct/learningstandards.aspx.
Please refer to this document number for quicker service: 16-0075.