Course Competency Map
Use this table as an extra check to ensure that we are covering each competency and sub-competency for the certification
Competencies | Status | Week | Section | Notes | Unit Practice Questions | Weekly Practice Questions | Summative Questions | Final Test Questions |
|---|---|---|---|---|---|---|---|---|
Competency II.4 (Program Design): The computer science teacher knows problem-solving strategies and different procedures for program design. |
|
|
|
|
|
|
|
|
II.4.A Exhibits knowledge of the analysis and design phases of the software system life cycle. | Covered | 1 | Software Design | Need to pull out important concepts into text and images | 0 | 2 | 5 |
|
II.4.B Knows the characteristics of programming design strategies. | Covered | 1 | Software Design | Considered covered as a part of problem solving strategies |
|
|
|
|
II.4.C Knows how to apply problem-solving strategies (e.g., design specification, top-down design, step-wise refinement, object-oriented design). | Covered | 1 | Software Design | Will include application |
|
|
|
|
II.4.D Demonstrates the ability to compare and contrast design strategies (e.g., top-down, bottom-up, object-oriented). | Covered | 1 | Software Design | Need to include practice questions that allow them to do this |
|
|
|
|
II.4.E Demonstrates the use of visual organizers (e.g., flowcharts, schematic drawings) to design solutions to problems. | Covered | 1 | Software Design | Will include questions on reading flowcharts |
|
|
|
|
II.4.F Knows how to create robust programs with emphasis on design to facilitate maintenance, program expansion, reliability, validity and efficiency. | Covered | 1 | Software Development | No exercises. Will be covered in discussion |
|
|
|
|
Competency II.5 (Software Development): The computer science teacher knows procedures for software development and implementation. |
|
|
|
|
|
|
|
|
II.5.A Knows the characteristics of models (e.g., waterfall, incremental, spiral) used in the development of software systems. | Covered | 1 | Software Development | Need to help students practice differentiating between them. Questions that describe process and student chooses the right process name and vice versa |
|
|
|
|
II.5.B Knows how to survey the issues accompanying the development of large software systems (e.g., design/implementation teams, software validation/testing, risk assessment). | Covered | 1 | Software Development | Considered covered in discussion of pros/cons of each model| Needs to be brought out more in subsequent text. |
|
|
|
|
II.5.C Demonstrates the use of programming style conventions (e.g., spacing, indentation, descriptive identifiers, comments, documentation) to enhance the readability and functionality of code. | Covered | 1 | Software Development | Conventions should be brought out in text. Good place for some questions that demonstrate the convention and student identify it. |
|
|
|
|
II.5.D Knows how to create robust programs with emphasis on style, clarity of expression and documentation to facilitate maintenance, program expansion, reliability, validity and efficiency. | Covered | 1 | Software development | No exercises. Will be covered in discussion |
|
|
|
|
II.5.E Knows how to create and use libraries of generic modular code to be used for efficient programming. | Covered | 1 | Software Development | Considered covered by discussion in problem solving strategies |
|
|
|
|
II.5.F Demonstrates the ability to read and modify large programs, including design description and process development. | Covered | 1 | Software Development | Considered covered by brief discussion; no assessment |
|
|
|
|
II.5.G Demonstrates effective use of predefined input and output, including logic to protect from invalid input. | Covered | 1 | Software Development | Considered covered by discussion of robust program creation; Assessment questions to include: "For this input, how would you protect against invalid entries?" Ex. Make sure that each entry is a valid number " Which is NOT a valid input for this example program?" |
|
|
|
|
II.5.H Demonstrates the ability to debug and solve problems using reference materials and effective strategies. | Covered | 2 | Debugging strategies | Considered covered by demonstration of strategies |
|
|
|
|
II.5.I Knows how to determine and employ methods to evaluate the design and functionality of information acquisition processes and algorithms, using effective coding, design and test data. | Ignore |
|
| Will ignore this; no way to assess |
|
|
|
|
Competency II.6 (Computer Science Concepts, Languages and Paradigms): The computer science teacher knows computer science terminology and concepts and the characteristics of different programming languages and paradigms. |
|
|
|
|
|
|
|
|
II.6.A Knows necessary vocabulary related to computer science (e.g., cache, bits, encryption). | Covered | ALL |
| Terms will be covered just-in-time, in the context of the larger topics Will restructure glossary to better facilitate definition look up |
|
|
|
|
II.6.B Knows specific programming terminology (e.g., data type, data structure, encapsulation) and programming concepts (e.g., procedural, object-oriented). | Covered | 1 | Object Oriented Paradigm |
|
|
|
|
|
II.6.C Demonstrates knowledge of advanced computer science concepts (e.g., computer architecture, operating systems, artificial intelligence). | Covered | 1 | Advanced Computer Science Concepts |
|
|
|
|
|
II.6.D Demonstrates the ability to use notation for language definition (e.g., syntax diagrams, Backus-Naur forms). | Covered | 1 | Programming Languages | Assessment to include "What type of notation is this?" |
|
|
|
|
II.6.E Knows the differences in the levels of languages (e.g., machine, assembly, high-level compiled, interpreted). | Covered | 1 | Programming Languages | Covered on video; Should definitely be pullout out into comparison tables |
|
|
|
|
II.6.F Knows the characteristics of and differences in current programming languages and paradigms. | Covered | 1 | Programming Languages |
|
|
|
|
|
II.6.G Demonstrates knowledge of the uses of current programming languages and paradigms in other fields of study. | Ignore |
|
| Ignore this competency; no way to assess |
|
|
|
|
Competency III.7 (Data Types, Data Structures and Functions):The computer science teacher correctly and efficiently uses data types, data structures and functions in the development of code. |
|
|
|
|
|
|
|
|
III.7.A Knows the characteristics and uses of constants, variables and simple data types in current programming languages (e.g., int, short, char, double, boolean). | Covered | 1 | Data Types | Need to pull out info into tables |
|
|
|
|
III.7.B Demonstrates effective use of standard and user-defined methods or functions in the development of code. | Covered | 2 | Methods | Sample question in page 37 of test prep guide |
|
|
|
|
III.7.C Knows how to identify and use parameters, both actual and formal, and how to pass parameters by value and by reference. | Covered | 2 | Parameters | Sample question in page 36 of test prep guide |
|
|
|
|
III.7.D Knows how to identify object-oriented data types and delineate the advantages and disadvantages of object data. |
| 5 | All subsections | Week 5 will cover objects |
|
|
|
|
III.7.E Demonstrates the ability to identify and use one-dimensional arrays, records and sequential and nonsequential files. | Covered Ignore | 4, 5 | Arrays 1D and 2D, Classes | Will ignore the idea of sequential and nonsequential files; records introduced in Week 5 OOP |
|
|
|
|
III.7.F Knows how to identify and use multidimensional arrays and arrays of records. |
| 4, 5 | Arrays, Arrays of Objects | Week 4 will cover 1D and 2D arrays, Week 5 will cover in class discussions |
|
|
|
|
III.7.G Demonstrates the ability to develop coding with the use of data structures, and to manipulate data structures using string processing routines (e.g., concatenation of strings, substring search). | Covered Ignore | 2, 5 | Operators, String Processing | Week 2 will cover concatenation, Week 5 will ignore string processing |
|
|
|
|