CSPG.Y3.1.1 |
Leverage problem-solving strategies to solve problems of level-appropriate complexity |
Lessons
|
CSPG.Y3.1.2 |
Analyze and utilize multiple representations of problem-solving logic used to solve problems of appropriate complexity |
Lessons
|
CSPG.Y3.1.3 |
Analyze and utilize collaborative methods in problem solving of level-appropriate complexity |
Lessons
|
CSPG.Y3.1.4 |
Analyze and utilize level-appropriate troubleshooting strategies for hardware and software |
Lessons
|
CSPG.Y3.1.5 |
Decompose problems of level-appropriate complexity |
Lessons
|
CSPG.Y3.3.1 |
Create programs that store, access, and manipulate, with high level of efficiency, level-appropriate data |
Lessons
|
CSPG.Y3.3.3 |
Create and test models and simulations to answer student-identified questions and scenarios |
Lessons
|
CSPG.Y3.3.5 |
Discuss real-world data sources that can be mined to produce new knowledge |
Lessons
|
CSPG.Y3.3.6 |
Issue queries against data sets to produce new knowledge from stored data (e.g., databases, large sets of data) |
Lessons
|
CSPG.Y3.4.3 |
Utilize a defined process or tool to identify and resolve security vulnerabilities in student-created programs |
Lessons
|
CSPG.Y3.5.1 |
Design and implement level-appropriate algorithms that solve student-identified problems |
Lessons
|
CSPG.Y3.5.3 |
Evaluate multiple student-created algorithms and non-student-created algorithms in terms of time and space complexities (e.g., Big O notation) |
Lessons
|
CSPG.Y3.5.4 |
Use a systematic approach to detect and resolve errors in a given algorithm |
Lessons
|
CSPG.Y3.6.1 |
Create programs to solve problems of level-appropriate complexity utilizing inheritance and polymorphism |
Lessons
|
CSPG.Y3.6.2 |
Discuss and apply best practices of program design, user experience design, and format (e.g., descriptive names, documentation, indentation, whitespace) |
Lessons
|
CSPG.Y3.6.3 |
Determine the scope and state of variables defined in classes and class procedures involving inheritance and polymorphism |
Lessons
|
CSPG.Y3.6.4 |
Create programs that read from, write to, and manipulate binary files (e.g., images, sounds) |
Lessons
|
CSPG.Y3.6.5 |
Use a systematic approach to detect logic, runtime, and syntax errors within a program |
Lessons
|
CSPG.Y3.7.1 |
Integrate multiple hardware and/or software tools to solve level-appropriate industry-based problems |
Lessons
|
CSPG.Y3.9.2 |
Compare, contrast, and utilize collaboration tools and/or version control systems in a group software project of appropriate complexity |
Lessons
|
CSPG.Y3.10.4 |
Discuss ethical implications encountered in software development industry that relate to intellectual property, non-compete clauses, and non-disclosure agreements |
Lessons
|
CSPG.Y3.10.5 |
Utilize a software life cycle process (e.g., Agile, spiral, waterfall) in developing a program |
Lessons
|
CSPG.Y3.10.8 |
Evaluate the quality and impact of a professional digital portfolio |
Lessons
|
CSPG.Y3.10.9 |
Create and maintain a professional digital portfolio comprised of self-created work |
Lessons
|
CSPG.Y3.11.1 |
Communicate technical information, of appropriate complexity, effectively to diverse audiences including, but not limited to, non-technical audience members |
Lessons
|