Please enable JavaScript to use CodeHS

Standards Mapping

for California Software and Systems Development Pathway

61

Standards in this Framework

34

Standards Mapped

55%

Mapped to Course

Standard Lessons
C1.1
Identify the phases of the systems development life cycle, including analysis, design, programming, testing, implementation, maintenance, and improvement.
C1.2
Identify and describe models of systems development, systems development life cycle (SDLC), and agile computing.
C1.3
Identify and describe how specifications and requirements are developed for new and existing software applications.
C1.4
Work as a member of, and within the scope and boundaries of, a development project team.
C1.5
Track development project milestones using the concept of versions
C1.6
Diagram processes using flowcharts and the Unified Modeling Language.
  1. 2.10 Unified Modeling Language
C2.1
Describe the major purposes and benefits of development, including automation, improving productivity, modeling and analysis, and entertainment.
  1. 1.2 Programming Languages
C2.2
Recognize and prevent unintended consequences of development work: programming errors, security issues, health and environmental risks, and privacy concerns.
C2.3
Develop strategies that target the specific needs and desires of the customer.
C2.4
Analyze customers’ needs for development.
C2.5
Determine and document the requirements and alternative solutions to fulfill the customers’ needs.
C3.1
Describe and apply the basic process of input, processing, and output.
  1. 8.2 Storing Data with Firebase
C3.2
Design effective and intuitive interfaces using knowledge of cognitive, physical, and social interactions
C3.3
Support methods of accessibility for all potential users, including users with disabilities and non-English-speaking users.
C4.1
Identify and describe the abstraction level of programming languages from low-level, hardware-based languages to high-level, interpreted, Web-based languages.
  1. 1.2 Programming Languages
C4.2
Describe the interaction and integration of programming languages and protocols such as how client-side programming can work with server-side programming to use a query language to access a database.
  1. 7.6 Basic Querying in SQL
  2. 8.8 Server-side Languages
C4.3
Identify and use different authoring tools and integrated development environments (IDEs).
  1. 2.1 Intro to the Canvas and Graphics
  2. 2.5 Intro to Objects
C4.4
Identify and apply data types and encoding.
  1. 2.1 Intro to the Canvas and Graphics
  2. 2.5 Intro to Objects
C4.5
Demonstrate awareness of various programming paradigms, including procedural, object oriented, event-driven, and multithreaded programing.
  1. 2.5 Intro to Objects
  2. 2.6 Graphic Objects
  3. 2.7 Object Methods
  4. 2.8 Iterating Through an Object
  5. 2.9 Object Constructors
C4.6
Use proper programming language syntax.
  1. 2.1 Intro to the Canvas and Graphics
  2. 2.5 Intro to Objects
C4.7
Use various data structures, arrays, objects, files, and databases.
  1. 8.1 Databases
C4.8
Use object oriented programming concepts, properties, methods, and inheritance.
  1. 2.5 Intro to Objects
  2. 2.6 Graphic Objects
  3. 2.7 Object Methods
  4. 2.8 Iterating Through an Object
  5. 2.9 Object Constructors
C4.9
Create programs using control structures, procedures, functions, parameters, variables, error recovery, and recursion.
  1. 11.1 Recursive Searching
C4.10
Create and know the comparative advantages of various queue, sorting, and searching algorithms.
  1. 6.2 Searching Algorithms
  2. 6.3 Sorting Algorithms
C4.11
Document development work for various audiences, such as comments for other programmers, and manuals for users.
C5.1
Identify the characteristics of reliable, effective, and efficient products.
C5.2
Describe the ways in which specification changes and technological advances can require the modification of programs.
C5.3
Use strategies to optimize code for improved performance.
  1. 6.5 Informal Run-Time Analysis
C5.4
Test software and projects.
C5.5
Evaluate results against initial requirements.
C5.6
Debug software as part of the quality assurance process.
C6.1
Identify the basic design elements necessary to produce effective print, video, audio, and interactive media.
C6.2
Describe the various encoding methods of media and trade-offs: vector graphics vs. bitmaps, and bit depth.
C6.3
Use media design and editing software: keyframe animation, drawing software, image editors, and three-dimensional design.
C6.4
Develop a presentation or other multimedia project: video, game, or interactive Web sites, from storyboard to production.
  1. 10.2 Creating a Resume
  2. 10.3 Layout and Web Design Theory
  3. 10.4 Interactive Resume Development
C6.5
Analyze the use of media to determine the appropriate file format and level of compression.
C6.6
Integrate media into a full project using appropriate tools.
  1. 10.2 Creating a Resume
  2. 10.4 Interactive Resume Development
C6.7
Create and/or capture professional-quality media, images, documents, audio, and video clips.
C7.1
Identify the hardware (server) and software required for Web hosting and other services.
  1. 7.4 Clients and Servers
C7.2
Describe the full process of online content delivery, registering domain names, setting up hosting, and setting up e-mail addresses.
C7.3
Attract Web-site visitors through search engine optimization using various strategies like keywords and meta-tags.
C7.4
Enable e-commerce capabilities to sell products, create a shopping cart, and handle credit card transactions.
C7.5
Create an online project, Web-based business, and e-portfolio.
C7.6
Optimize fast delivery and retrieval of online content such as Web pages.
C8.1
Describe the critical function of databases in modern organizations.
  1. 7.1 Inside Web Apps
  2. 7.2 Developer Tools
  3. 7.3 The Value of Data
  4. 7.8 Common Security Problems
  5. 8.1 Databases
C8.2
Identify and use the basic structures of databases, fields, records, tables, and views.
  1. 7.5 What is SQL?
  2. 8.1 Databases
C8.3
Identify and explain the types of relationships between tables (one-to-one, one-to-many, many-to-many) and use methods to establish these relationships, including primary keys, foreign keys, and indexes.
  1. 8.1 Databases
C8.4
Use data modeling techniques to create databases based upon business needs.
  1. 8.7 Designing Databases for Business
C8.5
Use queries to extract and manipulate data (select queries, action queries).
  1. 7.6 Basic Querying in SQL
C8.6
Develop databases that are properly normalized using appropriate schemas.
  1. 8.1 Databases
C8.7
Export and import data to and from other applications and a database recognizing the limitations and challenges inherent in the process.
  1. 8.6 Exporting and Importing Data
C8.8
Analyze and display data to assist with decision making using methods like cross tabulations, graphs, and charts.
  1. 7.3 The Value of Data
  2. 9.1 Define Your Product
  3. 9.2 Develop Hypotheses
  4. 9.3 Creating Your Data Collection Website
  5. 9.4 Collecting User Data
  6. 9.5 Analyzing User Data
  7. 9.6 Making Decisions
C9.1
Demonstrate awareness of the applications of device development work, including personalized computing, robotics, and smart appliances.
  1. 1.3 Introduction to Digital Logic
C9.2
Install equipment, assemble hardware, and perform tests using appropriate tools and technology.
  1. 1.6 Welcome to micro:bit!
  2. 1.7 Setting Up your micro:bit
  3. 1.13 micro:bit Challenges
C9.3
Use hardware to gain input, process information, and take action.
  1. 1.8 For Loops
  2. 1.9 While Loops
  3. 1.10 Operators
  4. 1.11 If/Else Statements
  5. 1.12 Functions
C9.4
Apply the concepts of embedded programming, including digital logic, machine-level representation of data, and memory-system organization.
  1. 1.3 Introduction to Digital Logic
  2. 1.4 Digital Information and Binary Systems
  3. 1.5 Encoding Text with Binary
C9.5
Program a micro-controller for a device or robot.
  1. 1.13 micro:bit Challenges
  2. 1.14 Follow a Step-by-Step Project
  3. 11.3 Explore a New Sensor
C10.1
Describe models of intelligent behavior and what distinguishes humans from machines.
  1. 4.1 Human and Artificial Intelligence
C10.2
Describe the major areas of intelligent computing, including perception, proximity, processing, and control.
  1. 4.8 Intelligent Computing
C10.3
Know artificial intelligence methods such as neural networks, Bayesian inferences, fuzzy logic, and finite state machines.
  1. 4.8 Intelligent Computing
  2. 4.9 Bayesian Inferences
  3. 4.10 Fuzzy Logic
  4. 11.2 Finite State Machines
C10.4
Implement artificial intelligent behavior through various methods: mathematical modeling, reinforcement learning, and probabilistic analysis.
  1. 4.9 Bayesian Inferences