Study Guide
Field 068: Computer Science
Test Design and Framework
The test design below describes general testing information. The test framework that follows is a detailed outline that explains the knowledge and skills that this test measures.
Test Design
Format | Computer-based test (CBT) |
---|---|
Number of Questions | 100 multiple-choice questions |
Time* | 105 minutes |
Passing Score | 220 |
*Does not include 15-minute CBT tutorial
Test Framework
Domain | Range of Objectives | Approximate Test Weight | |
---|---|---|---|
I | Data and Analysis | 0001–0003 | 20% |
II | Computing Devices and Networks | 0004–0006 | 20% |
III | Algorithms | 0007–0009 | 20% |
IV | Programming | 0010–0012 | 20% |
V | Impacts of Computing; Instruction and Assessment | 0013–0015 | 20% |
Domain I—Data and Analysis
0001 Understand the collection, analysis, evaluation, and interpretation of data.
For example:
- Apply strategies for conducting research to support learning across the curriculum.
- Apply knowledge of tools and techniques (e.g., search engines, user surveys, mobile devices, GPS, real-world data sets) for locating and collecting a variety of data sets.
- Demonstrate knowledge of tools, techniques, and processes for analyzing data and data sets.
- Apply strategies for evaluating the accuracy, appropriateness, and biases of data from electronic information sources.
- Apply strategies for interpreting data in a variety of formats (e.g., charts, tables, graphs, reports).
0002 Understand the representation and presentation of data.
For example:
- Apply knowledge of binary, decimal, and hexadecimal representations of data and conversions between them.
- Apply knowledge of how data (e.g., text, image, sound) can be represented using binary sequences.
- Demonstrate knowledge of how computer models can be used to simulate and analyze real-world systems and problems.
- Apply visual representations of data (e.g., charts, graphs, network diagrams, flowcharts) to problem situations.
- Apply knowledge of digital tools to present data for a given purpose.
0003 Understand the storage, management, and manipulation of data.
For example:
- Demonstrate knowledge of data storage systems (e.g., drives, data warehousing, cloud storage, data compression).
- Demonstrate knowledge of processes used to search, manipulate, and modify data in spreadsheets and databases (e.g., queries, filters, formulas, formatting).
- Demonstrate knowledge of types of databases and principles of database design (e.g., tables, keys, SQL), management, and administration.
- Demonstrate knowledge of issues related to data security.
Domain II—Computing Devices and Networks
0004 Understand computing devices, their components, and basic troubleshooting strategies.
For example:
- Demonstrate knowledge of computing and computing devices (e.g., wireless Internet, audio and video files, microcontrollers, mobile devices, smart homes) in daily life.
- Demonstrate knowledge of informatics and developing trends in computing (e.g., machine learning, robotics, cloud computing, Big Data).
- Demonstrate knowledge of components and criteria (e.g., input/output, memory, peripherals, processing speed) for evaluating a computing device for a given purpose.
- Demonstrate knowledge of the characteristics and uses of operating systems.
- Demonstrate knowledge of the relationship between hardware and software, and troubleshooting strategies for routine problems.
0005 Understand networks and the Internet.
For example:
- Demonstrate knowledge of concepts related to networks and network components (e.g., types of networks, communication protocols, routers).
- Demonstrate knowledge of concepts related to the Internet (e.g., bandwidth, structure of the Internet, packet switching).
- Apply knowledge of Web site design and Web development tools (e.g., HTML, CSS, scripting languages).
- Apply knowledge of issues related to cybersecurity (e.g., data integrity, encryption, denial of service attacks).
- Apply knowledge of security principles in the design and management of computer systems and networks (e.g., assigning privileges, authentication protocols, continuity planning).
0006 Understand concepts related to digital tools, resources, and design principles.
For example:
- Apply knowledge of productivity software applications (e.g., word processing, spreadsheet, presentation).
- Apply knowledge of concepts related to digital information (e.g., graphics, sound, animations, multimedia).
- Apply knowledge of digital tools and resources for research, communication, and collaboration.
- Apply knowledge of digital tools for students' design, development, publication, and presentation of products (e.g., videos, podcasts, multimedia projects) to communicate curriculum concepts and facilitate learning.
Domain III—Algorithms
0007 Understand concepts and processes related to problem solving and algorithm development.
For example:
- Demonstrate knowledge of choosing and using algorithms to solve real-world problems.
- Demonstrate knowledge of algorithmic problem solving (e.g., problem statement, design, implementing a solution, testing, evaluation).
- Demonstrate knowledge of using abstraction to manage program complexity.
- Apply knowledge of sequence, selection, and iteration in algorithm design.
0008 Understand concepts and processes related to the use of algorithms.
For example:
- Analyze an algorithm in terms of correctness and flow of execution.
- Predict the output of algorithms.
- Demonstrate knowledge of common algorithms (e.g., finding an average, counting matches, finding a maximum or minimum).
- Demonstrate knowledge of characteristics and uses of searching and sorting algorithms.
- Demonstrate knowledge of issues related to complexity and efficiency of algorithms.
0009 Understand concepts and processes related to computer science and program design and development.
For example:
- Demonstrate knowledge of computer science concepts and processes (e.g., event-driven, heuristic) in a variety of applications (e.g., developing games and mobile applications).
- Demonstrate knowledge of software development processes (e.g., spiral, waterfall, iterative).
- Demonstrate knowledge of the characteristics and uses of program development tools (e.g., IDEs, libraries, mobile device simulators, APIs).
- Demonstrate knowledge of the characteristics and features of programming languages (e.g., block-based, procedural, object-oriented).
Domain IV—Programming
0010 Understand concepts of programming.
For example:
- Demonstrate knowledge of input validation and error handling.
- Apply functions/methods for enhancing program logic and support code reuse.
- Apply knowledge of object-oriented programming concepts (e.g., abstraction, inheritance, encapsulation).
- Apply knowledge of classes, objects, instance variables, and methods in object-oriented programming.
- Apply knowledge of debugging techniques for testing, verifying, and refining programs.
0011 Understand data types and variables.
For example:
- Apply knowledge of the characteristics and uses of primitive data types (e.g., integer, float, Boolean).
- Apply knowledge of the characteristics and uses of variables.
- Apply knowledge of the characteristics and uses of strings and string methods (e.g., concatenation, substrings, locating characters).
- Apply knowledge of the characteristics and uses of lists and arrays.
0012 Understand characteristics and uses of operators, conditional statements, and loops.
For example:
- Apply knowledge of the characteristics and applications of operators and expressions (e.g., arithmetic, comparison, logical).
- Apply knowledge of the characteristics and applications of conditional statements (e.g., if-then, if-then-else).
- Apply knowledge of characteristics and applications of for statements.
- Apply knowledge of characteristics and applications of while statements.
Domain V—Impacts of Computing; Instruction and Assessment
0013 Understand digital citizenship and the responsible use of technology and information.
For example:
- Demonstrate knowledge of the personal impacts of technology (e.g., social media, cyberbullying, health and safety).
- Demonstrate knowledge of legal and ethical issues related to technology (e.g., equity of access, security, privacy, hacking, intellectual property, copyright).
0014 Understand the social and global impacts of computer science and technology.
For example:
- Demonstrate knowledge of the social impact of technology (e.g., virtualization, automation, social media, mobile computing, inequity, access).
- Demonstrate knowledge of the global impact of technology on communication, careers, and economic development.
0015 Understand effective instruction and assessment in computer science.
For example:
- Demonstrate knowledge of state and national learning standards.
- Demonstrate knowledge of instructional strategies and adaptive technologies (e.g., talk-to-text, alt text, special characters) that meet the needs of diverse student populations.
- Demonstrate knowledge of strategies and communication methods that promote critical thinking, foster real-world problem solving, and broaden understanding of computer science concepts.
- Demonstrate knowledge of instructional strategies and activities for teaching concepts and skills related to the programming process.
- Demonstrate knowledge of instructional strategies and activities for facilitating individual and collaborative technology-based learning.
- Demonstrate knowledge of strategies for assessing student understanding and mastery of concepts and skills related to computer science.