Course Standards
Name | Description | |
SC.912.CS-CC.1.1: | Evaluate modes of communication and collaboration. | |
SC.912.CS-CC.1.2: | Select appropriate tools within a project environment to communicate with project team members. | |
SC.912.CS-CC.1.3: | Collect, analyze, and present information using a variety of computing devices (e.g., probes, sensors, and handheld devices). | |
SC.912.CS-CC.1.4: | Develop a collaborative digital product using collaboration tools (e.g., version control systems and integrated development environments). | |
SC.912.CS-CC.1.5: | Communicate and publish key ideas and details to a variety of audiences using digital tools and media-rich resources. | |
SC.912.CS-CC.1.6: | Identify how collaboration influences the design and development of software artifacts. | |
SC.912.CS-CC.1.7: | Evaluate program designs and implementations written by others for readability and usability. | |
SC.912.CS-CP.1.1: | Evaluate effective uses of Boolean logic (e.g., using “not”, “or”, “and”) to refine searches for individual and collaborative projects. | |
SC.912.CS-CP.1.2: | Perform advanced searches to locate information and/or design a data-collection approach to gather original data (e.g., qualitative interviews, surveys, prototypes, and simulations). | |
SC.912.CS-CP.1.3: | Analyze and manipulate data collected by a variety of data collection techniques to support a hypothesis. | |
SC.912.CS-CP.1.4: | Collect real-time data from sources such as simulations, scientific and robotic sensors, and device emulators, using this data to formulate strategies or algorithms to solve advanced problems. | |
SC.912.CS-CP.2.1: | Explain the program execution process (by an interpreter and in CPU hardware). | |
SC.912.CS-CP.2.2: | Design and implement a program using global and local scope. | |
SC.912.CS-CP.2.3: | Implement a program using an industrial-strength integrated development environment. | |
SC.912.CS-CP.2.4: | Facilitate programming solutions using application programming interfaces (APIs) and libraries. | |
SC.912.CS-CP.2.5: | Explain the role of an API in the development of applications and the distinction between a programming language’s syntax and the API. | |
SC.912.CS-CP.2.6: | Describe a variety of commonly used programming languages. | |
SC.912.CS-CP.2.7: | Classify programming languages by paradigm and application domain (e.g., imperative, functional, and logic languages) and evaluate their application to domains such as web programming, symbolic processing and data/numerical processing. | |
SC.912.CS-CP.3.1: | Create a computational artifact, individually and collaboratively, followed by reflection, analysis, and iteration (e.g., data-set analysis program for science and engineering fair, capstone project that includes a program, term research project based on program data). | |
SC.912.CS-CP.3.2: | Create mobile computing applications and/or dynamic web pages through the use of a variety of design and development tools, programming languages, and mobile devices/emulators. | |
SC.912.CS-CS.1.1: | Analyze data and identify real-world patterns through modeling and simulation. | |
SC.912.CS-CS.1.2: | Formulate, refine, and test scientific hypotheses using models and simulations. | |
SC.912.CS-CS.1.3: | Explain how data analysis is used to enhance the understanding of complex natural and human systems. | |
SC.912.CS-CS.1.4: | Compare techniques for analyzing massive data collections. | |
SC.912.CS-CS.1.5: | Represent and understand natural phenomena using modeling and simulation. | |
SC.912.CS-CS.2.1: | Explain intractable problems and understand that problems exists that are computationally unsolvable (e.g., classic intractable problems include the Towers of Hanoi and the Traveling Salesman Problem -TSP). | |
SC.912.CS-CS.2.2: | Describe the concept of parallel processing as a strategy to solve large problems. | |
SC.912.CS-CS.2.3: | Demonstrate concurrency by separating processes into threads of execution and dividing data into parallel streams. | |
SC.912.CS-CS.2.4: | Divide a complex problem into simpler parts by using the principle of abstraction to manage complexity (i.e., by using searching and sorting as abstractions) using predefined functions and parameters, classes, and methods. | |
SC.912.CS-CS.2.5: | Evaluate classical algorithms and implement an original algorithm. | |
SC.912.CS-CS.2.6: | Evaluate various data types and data structures. | |
SC.912.CS-CS.2.7: | Explain how sequence, selection, iteration, and recursion are building blocks of algorithms. | |
SC.912.CS-CS.2.8: | Decompose a problem by defining new functions and classes. | |
SC.912.CS-CS.2.9: | Evaluate ways to characterize how well algorithms perform and that two algorithms can perform differently for the same task. | |
SC.912.CS-CS.2.10: | Design and implement a simple simulation algorithm to analyze, represent, and understand natural phenomena. | |
SC.912.CS-CS.2.11: | Evaluate algorithms by their efficiency, correctness, and clarity (e.g., by analyzing and comparing execution times, testing with multiple inputs or data sets, and by debugging). | |
SC.912.CS-CS.2.12: | Compare and contrast simple data structures and their uses. | |
SC.912.CS-CS.2.13: | Explain how automated software testing can reduce the cost of the testing effort. | |
SC.912.CS-CS.2.14: | Explain what tools are applied to provide automated testing environments. | |
SC.912.CS-CS.4.1: | Describe a software development process that is used to solve problems at different software development stages (e.g., design, coding, testing, and verification). | |
SC.912.CS-CS.4.2: | Describe the organization of a computer and identify its principal components by name, function, and the flow of instructions and data between components (e.g., storage devices, memory, CPU, graphics processors, IO and network ports). | |
SC.912.CS-CS.4.3: | Differentiate between multiple levels of hardware and software (such as CPU hardware, operating system, translation, and interpretation) that support program execution. | |
SC.912.CS-CS.4.4: | Evaluate various forms of input and output (e.g., IO and storage devices and digital media). | |
SC.912.CS-CS.4.5: | Develop and evaluate criteria for purchasing or upgrading computer system hardware (e.g., Wi-Fi, mobile devices, home and office machines). | |
SC.912.CS-CS.4.6: | Develop criteria for selecting appropriate hardware and software when solving a specific real-world problem (such as business, educational, personal). | |
SC.912.CS-CS.4.7: | Develop a software artifact (independently and collaboratively) in phases (or stages) according to a common software development methodology (e.g., Waterfall or Spiral model). | |
SC.912.CS-CS.4.8: | Evaluate the basic components of computer networks. | |
SC.912.CS-CS.5.1: | Identify and select the most appropriate file format based on trade-offs (e.g., open file formats, text, proprietary and binary formats, compression and encryption formats). | |
SC.912.CS-CS.5.2: | Describe the issues that impact network functionality (e.g., latency, bandwidth, firewalls and server capability). | |
SC.912.CS-CS.5.3: | Describe common network protocols, such as IP, TCP, SMTP, HTTP, and FTP, and how these are applied by client-server and peer-to-peer networks. | |
SC.912.CS-PC.1.1: | Compare and contrast appropriate and inappropriate social networking behaviors. | |
SC.912.CS-PC.1.2: | Describe and demonstrate ethical and responsible use of modern communication media and devices. | |
SC.912.CS-PC.1.3: | Evaluate the impacts of irresponsible use of information (e.g., plagiarism and falsification of data) on collaborative projects. | |
SC.912.CS-PC.1.4: | Explain the principles of cryptography by examining encryption, digital signatures, and authentication methods (e.g., explain why and how certificates are used with “https” for authentication and encryption). | |
SC.912.CS-PC.1.5: | Implement an encryption, digital signature, or authentication method. | |
SC.912.CS-PC.1.6: | Describe computer security vulnerabilities and methods of attack, and evaluate their social and economic impact on computer systems and people. | |
SC.912.CS-PC.2.1: | Describe how the Internet facilitates global communication. | |
SC.912.CS-PC.2.2: | Identify ways to use technology to support lifelong learning. | |
SC.912.CS-PC.2.3: | Discuss and analyze the impact of values and points of view that are presented in media messages (e.g., racial, gender, and political). | |
SC.912.CS-PC.2.4: | Analyze the positive and negative impacts of technology on popular culture and personal life. | |
SC.912.CS-PC.2.5: | Construct strategies to combat cyberbullying or online harassment. | |
SC.912.CS-PC.2.6: | Describe the impact of computing on business and commerce (e.g., automated inventory processing, financial transactions, e-commerce, virtualization, and cloud computing). | |
SC.912.CS-PC.2.7: | Describe how technology has changed the way people build and manage organizations and how technology impacts personal life. | |
SC.912.CS-PC.2.8: | Evaluate ways in which adaptive technologies may assist users with special needs. | |
SC.912.CS-PC.2.9: | Explain how societal and economic factors are affected by access to critical information. | |
SC.912.CS-PC.2.10: | Describe and evaluate the challenges (e.g., political, social, and economic) in providing equal access and distribution of technology in a global society. | |
SC.912.CS-PC.2.11: | Construct writings and/or communications using developmentally appropriate terminology. | |
SC.912.CS-PC.2.12: | Explore a variety of careers to which computing is central. | |
SC.912.CS-PC.2.13: | Predict future careers and the technologies that may exist based on current technology trends. | |
SC.912.CS-PC.3.1: | Evaluate the quality of digital resources for reliability (i.e., currency, relevancy, authority, accuracy, and purpose of digital information). | |
SC.912.CS-PC.3.2: | Evaluate the accuracy, relevance, comprehensiveness, appropriateness, and bias of electronic information resources. | |
SC.912.CS-PC.3.3: | Conduct research using peer reviewed articles, newspapers, magazine articles, and online books. | |
SC.912.CS-PC.3.4: | Analyze and evaluate public/government resources and describe how using these resources for communication can affect change. | |
SC.912.CS-PC.4.1: | Describe how different types of software licenses (e.g., open source and proprietary licenses) can be used to share and protect intellectual property. | |
SC.912.CS-PC.4.2: | Explain how access to information may not include the right to distribute the information. | |
SC.912.CS-PC.4.3: | Describe differences between open source, freeware, and proprietary software licenses, and how they apply to different types of software. | |
SC.912.CS-PC.4.4: | Describe security and privacy issues that relate to computer networks. | |
SC.912.CS-PC.4.5: | Identify computer-related laws and analyze their impact on digital privacy, security, intellectual property, network access, contracts, and harassment. | |
SC.912.CS-PC.4.6: | Describe security and privacy issues that relate to computer networks including the permanency of data on the Internet, online identity, and privacy. | |
SC.912.CS-PC.4.7: | Evaluate and use digital citation tools to cite sources. | |
SC.912.CS-PC.4.8: | Describe the impact of government regulation on privacy and security. | |
MA.K12.MTR.1.1: | Actively participate in effortful learning both individually and collectively. Mathematicians who participate in effortful learning both individually and with others:
| |
MA.K12.MTR.2.1: | Demonstrate understanding by representing problems in multiple ways. Mathematicians who demonstrate understanding by representing problems in multiple ways:
| |
MA.K12.MTR.3.1: | Complete tasks with mathematical fluency. Mathematicians who complete tasks with mathematical fluency:
| |
MA.K12.MTR.4.1: | Engage in discussions that reflect on the mathematical thinking of self and others. Mathematicians who engage in discussions that reflect on the mathematical thinking of self and others:
| |
MA.K12.MTR.5.1: | Use patterns and structure to help understand and connect mathematical concepts. Mathematicians who use patterns and structure to help understand and connect mathematical concepts:
| |
MA.K12.MTR.6.1: | Assess the reasonableness of solutions. Mathematicians who assess the reasonableness of solutions:
| |
MA.K12.MTR.7.1: | Apply mathematics to real-world contexts. Mathematicians who apply mathematics to real-world contexts:
| |
ELA.K12.EE.1.1: | Cite evidence to explain and justify reasoning.
| |
ELA.K12.EE.2.1: | Read and comprehend grade-level complex texts proficiently.
| |
ELA.K12.EE.3.1: | Make inferences to support comprehension.
| |
ELA.K12.EE.4.1: | Use appropriate collaborative techniques and active listening skills when engaging in discussions in a variety of situations.
| |
ELA.K12.EE.5.1: | Use the accepted rules governing a specific format to create quality work.
| |
ELA.K12.EE.6.1: | Use appropriate voice and tone when speaking or writing.
| |
ELD.K12.ELL.SI.1: | English language learners communicate for social and instructional purposes within the school setting. |
General Course Information and Notes
VERSION DESCRIPTION
This course introduces students to the foundational concepts of computer science and challenges them to explore how computing and technology can impact the world. Computing is so fundamental to understanding and participating in society that it is valuable for every student to learn as part of a modern education. Computer science can be viewed as a liberal art, a subject that provides students with a critical lens for interpreting the world around them. Computer science prepares all students to be active and informed contributors to our increasingly technological society whether they pursue careers in technology or not. Computer science can be life-changing, not just skill training.
Students learn best when they are intrinsically motivated. This course prioritizes learning experiences that are active, relevant to students' lives, and provide students authentic choice. Students are encouraged to be curious, solve personally relevant problems and to express themselves through creation. Learning is an inherently social activity, so the course is designed to interweave lessons with discussions, presentations, peer feedback, and shared reflections. As students proceed through the pathway, the structures increasingly shift responsibility to students to formulate their own questions, develop their own solutions, and critique their own work.
It is also critical to diversity the technology workforce. Addressing inequities within the field of computer science is critical to bringing computer science to all students. The tools and strategies in this course will help teachers understand and address well-known equity gaps within the field. All students can succeed in computer science when given the right supports and opportunities, regardless of prior knowledge.
Additional Information
Computer Science Principles
Computer Science Principles introduces students to the foundational concepts of computer science and challenges them to explore how computing and technology can impact the world. More than a traditional introduction to programming, it is a rigorous, engaging, and approachable course that explores many of the foundational ideas of computing, so all students understand how these concepts are transforming the world we live in.
Florida’s Benchmarks for Excellent Student Thinking (B.E.S.T.) Standards:
This course includes Florida’s B.E.S.T. ELA Expectations (EE) and Mathematical Thinking and Reasoning Standards (MTRs) for students. Florida educators should intentionally embed these standards within the content and their instruction as applicable. For guidance on the implementation of the EEs and MTRs, please visit https://www.cpalms.org/Standards/BEST_Standards.aspx and select the appropriate B.E.S.T. Standards package.
English Language Development (ELD) Standards Special Notes Section:
Teachers are required to provide listening, speaking, reading and writing instruction that allows English language learners (ELL) to communicate for social and instructional purposes within the school setting. For the given level of English language proficiency and with visual, graphic, or interactive support, students will interact with grade level words, expressions, sentences and discourse to process or produce language necessary for academic success. The ELD standard should specify a relevant content area concept or topic of study chosen by curriculum developers and teachers which maximizes an ELL’s need for communication and social skills. To access an ELL supporting document which delineates performance definitions and descriptors, please click on the following link: https://cpalmsmediaprod.blob.core.windows.net/uploads/docs/standards/eld/si.pdf.
Accommodations
Federal and state legislation requires the provision of accommodations for students with disabilities as identified on the secondary student's Individual Educational Plan (IEP) or 504 plan or postsecondary student's accommodations' plan to meet individual needs and ensure equal access. Accommodations change the way the student is instructed. Students with disabilities may need accommodations in such areas as instructional methods and materials, assignments and assessments, time demands and schedules, learning environment, assistive technology and special communication systems. Documentation of the accommodations requested and provided should be maintained in a confidential file.
In addition to accommodations, some secondary students with disabilities (students with an IEP served in Exceptional Student Education (ESE) will need modifications to meet their needs. Modifications change the outcomes and or what the student is expected to learn, e.g., modifying the curriculum of a secondary career and technical education course.
Additional Resources
Additional resources and a free curriculum that may be utilized for this course can be found at https://curriculum.code.org/csd-18/.
QUALIFICATIONS
As well as any certification requirements listed on the course description, the following qualifications may also be acceptable for the course:
Any field when certification reflects a bachelor or higher degree.
In order for this course to be taught with fidelity teachers without a computer science certification or related postsecondary coursework should, at a minimum, have completed a course in computer science such as those offered through a MOOC from a reputable institution or by attending a training such as those offered by code.org.
General Information
Course Number: 0200315 |
Course Path: Section: Grades PreK to 12 Education Courses > Grade Group: Grades 9 to 12 and Adult Education Courses > Subject: Computer Education > SubSubject: General > |
Abbreviated Title: COMP SCI PRINCIPLES | |
Number of Credits: One (1) credit | |
Course Attributes:
|
|
Course Type: Core Academic Course | Course Level: 2 |
Course Status: State Board Approved | |
Grade Level(s): 9,10,11,12 | |
Graduation Requirement: Mathematics | |