Please enable JavaScript to use CodeHS

Standards Mapping

for California Software and Systems Development Pathway

61

Standards in this Framework

14

Standards Mapped

22%

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
  1. 5.13 Version Control
C1.6
Diagram processes using flowcharts and the Unified Modeling Language.
C2.1
Describe the major purposes and benefits of development, including automation, improving productivity, modeling and analysis, and entertainment.
C2.2
Recognize and prevent unintended consequences of development work: programming errors, security issues, health and environmental risks, and privacy concerns.
  1. 7.10 Ethical and Social Implications of Computing
  2. 8.13 Ethical Issues Around Data Collection
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. 2.5 User Input
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. 5.12 Executing Code
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.
C4.3
Identify and use different authoring tools and integrated development environments (IDEs).
C4.4
Identify and apply data types and encoding.
  1. 2.6 Casting and Ranges of Variables
  2. 5.4 Compatibility
C4.5
Demonstrate awareness of various programming paradigms, including procedural, object oriented, event-driven, and multithreaded programing.
C4.6
Use proper programming language syntax.
  1. 2.1 Why Programming? Why Java?
  2. 2.2 Variables and Data Types
  3. 2.3 Expressions and Assignment Statements
  4. 2.4 Compound Assignment Operators
  5. 2.5 User Input
  6. 2.6 Casting and Ranges of Variables
C4.7
Use various data structures, arrays, objects, files, and databases.
  1. 8.13 Ethical Issues Around Data Collection
C4.8
Use object oriented programming concepts, properties, methods, and inheritance.
  1. 3.1 Objects: Instances of Classes
  2. 3.2 Creating and Storing Objects (Instantiation)
  3. 3.3 Overloading
  4. 3.4 Calling a Void Method
  5. 3.5 Calling a Void Method with Parameters
  6. 3.6 Calling a Non-void Method
  7. 3.7 String Objects
  8. 3.8 String Methods
  9. 3.9 Wrapper Classes: Integers and Doubles
  10. 3.10 Using the Math Class
  11. 7.1 Writing Classes
  12. 7.2 Constructors
  13. 7.4 Accessor Methods
  14. 7.5 Mutator Methods
  15. 7.6 Writing Methods
  16. 7.7 Static Variables and Methods
  17. 7.8 Scope and Access
  18. 7.9 this Keyword
  19. 10.1 Inheritance
  20. 10.2 Writing Constructors for Subclasses
  21. 10.3 Overriding Methods
  22. 10.4 super Keyword
  23. 10.6 Creating References Using Inheritance
  24. 10.7 Polymorphism
  25. 10.8 Object Superclass
C4.9
Create programs using control structures, procedures, functions, parameters, variables, error recovery, and recursion.
  1. 4.1 Boolean Expressions and if Statements
  2. 4.2 if Statements and Control Flow
  3. 4.3 if-else Statements
  4. 4.4 else if Statements
  5. 4.5 Compound Boolean Expressions
  6. 4.6 Equivalent Boolean Expressions
  7. 4.7 Comparing Objects
  8. 6.1 Iteration
  9. 6.2 For Loops
  10. 6.3 Developing Algorithms Using Strings
  11. 6.4 Nested Iteration
  12. 9.6 Recursion
C4.10
Create and know the comparative advantages of various queue, sorting, and searching algorithms.
  1. 9.1 What is an Algorithm?
  2. 9.2 Linear Search
  3. 9.3 Binary Search
  4. 9.5 Insertion Sort
C4.11
Document development work for various audiences, such as comments for other programmers, and manuals for users.
  1. 6.5 Informal Code Analysis
  2. 7.3 Documentation with Comments
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.
  1. 5.11 Command Line Interface
C5.3
Use strategies to optimize code for improved performance.
  1. 6.5 Informal Code 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.
  1. 7.3 Documentation with Comments
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.
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.
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.
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.
C8.2
Identify and use the basic structures of databases, fields, records, tables, and views.
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.
C8.4
Use data modeling techniques to create databases based upon business needs.
C8.5
Use queries to extract and manipulate data (select queries, action queries).
C8.6
Develop databases that are properly normalized using appropriate schemas.
C8.7
Export and import data to and from other applications and a database recognizing the limitations and challenges inherent in the process.
C8.8
Analyze and display data to assist with decision making using methods like cross tabulations, graphs, and charts.
C9.1
Demonstrate awareness of the applications of device development work, including personalized computing, robotics, and smart appliances.
C9.2
Install equipment, assemble hardware, and perform tests using appropriate tools and technology.
C9.3
Use hardware to gain input, process information, and take action.
C9.4
Apply the concepts of embedded programming, including digital logic, machine-level representation of data, and memory-system organization.
C9.5
Program a micro-controller for a device or robot.
C10.1
Describe models of intelligent behavior and what distinguishes humans from machines.
C10.2
Describe the major areas of intelligent computing, including perception, proximity, processing, and control.
C10.3
Know artificial intelligence methods such as neural networks, Bayesian inferences, fuzzy logic, and finite state machines.
C10.4
Implement artificial intelligent behavior through various methods: mathematical modeling, reinforcement learning, and probabilistic analysis.