Big Ideas |
Tools and technologies can be adapted for specific purposes. |
Computer Programming 11 |
No CCG |
|
Big Ideas |
Personal design choices require self-exploration, collaboration, and evaluation and refinement of skills. |
Computer Programming 11 |
No CCG |
|
Big Ideas |
The design cycle is an ongoing reflective process. |
Computer Programming 11 |
No CCG |
Keyword: design cycle |
Elaboration: includes updating content, tools, and delivery. The design process can be non-linear. |
|
Content |
appropriate use of technology, including digital citizenship, etiquette, and literacy |
Computer Programming 11 |
No CCG |
|
Content |
computational thinking processes |
Computer Programming 11 |
No CCG |
Keyword: computational thinking |
Elaboration: formulating problems and their solutions so they are represented in a form that can be solved through an algorithmic process. Key components are decomposition, patterns and generalizations, abstraction, and algorithmic thinking. |
|
Content |
use of test cases to detect logical or semantic errors |
Computer Programming 11 |
No CCG |
Keyword: use of test cases |
Elaboration: for example, running test cases to compare expected versus actual output and printing the value of variables to aid in the debugging process |
|
Content |
inline commenting to document source code |
Computer Programming 11 |
No CCG |
|
Content |
pre-built libraries and their documentation |
Computer Programming 11 |
No CCG |
Keyword: pre-built libraries |
Elaboration: for example, external libraries for graphical user interfaces or gaming, sensor libraries for hardware such as coding devices |
Keyword: documentation |
Elaboration: interpretation of library documentation/application programming interface (API) |
|
Content |
tools to aid in the development process |
Computer Programming 11 |
No CCG |
Keyword: tools |
Elaboration: for example, integrated development environment (IDE), computer language appropriate for problem/project |
|
Content |
translation of design specifications into source code |
Computer Programming 11 |
No CCG |
Keyword: design specifications |
Elaboration: for example, pseudocode, algorithms, flow charts, unified modeling language (UML) |
|
Content |
ways to transform requirements into algorithms |
Computer Programming 11 |
No CCG |
Keyword: ways |
Elaboration: for example, pseudocode, iterative refinement, flowcharts, UML, other design entities |
|
Content |
requirements of a problem statement |
Computer Programming 11 |
No CCG |
Keyword: requirements |
Elaboration: a complete set of requirements that will support the rest of the software development cycle without the need to revisit the problem statement in the future |
|
Content |
programming language constructs to support input/output, logic, decision structure, and loops |
Computer Programming 11 |
No CCG |
|
Content |
pair programming |
Computer Programming 11 |
No CCG |
Keyword: pair programming |
Elaboration: two programmers work together at one workstation. One, the driver, writes code while the other, the observer or navigator, reviews each line of code as it is typed in. The two programmers switch roles frequently. |
|
Content |
strategies to predict effects of code modification |
Computer Programming 11 |
No CCG |
Keyword: strategies |
Elaboration: hand tracing code, guess and test (experimentation) |
|