Aug 24, 2019  
2018-2019 Course Catalog 
    
2018-2019 Course Catalog [ARCHIVED CATALOG]

[Add to Portfolio]

CIS 450 - PLTW Computer Science Principles

Credits: 3
Lecture Hours: 3
Lab Hours: 0
Practicum Hours: 0
Work Experience: 0
Course Type: Voc/Tech
This course is designed to be the first computer science course for students who have never programmed before. ICS is an optional starting point for the PLTW Computer Science program. In this course, students will create interactive stories in Scratch™ (an easy-to-use programming language); work in teams to create simple apps for mobile devices using App Inventor; and analyze data about students’ health, social habits, and interests using functions in Excel®. Students will learn the impact of computing in society and the application of computing across career paths. They will also transfer the understanding of programming gained in App Inventor to a third language, Python®, in which they learn introductory elements of text-based programming. The course aligns with the Computer Science Teachers Association (CSTA) 3A standards.
Competencies
  1. Evaluate programming ablities
    1. Create original programs in Scratch
    2. Incorporate audio and visual elements in programs
    3. Solve algorithmic problems in programming
  2. Analyze existing code with an emphasis on the roles of variables
    1. Design and create an Android application
    2. Identify binary representations of numbers, letters, colors, and images
    3. Use CS unplugged to create physical representations of data storage
    4. Make minor modifications to existing App inventor programs
    5. Analyze complex programs and incorporate event handlers into programs in meaningful ways
  3. Prove understanding of algorithms with the use of a new language
    1. Utilize Python with functional, imperative, and declarative programming paradigms
    2. Simulate program execution in a model assembly language
    3. Create Python algorithms
  4. Use object-oriented libraries to become independent learners of a programming language
    1. Manipulate image files by modifying pixel data
    2. Use code libraries
    3. Use Application-programming interfaces (APIs)
    4. Read discuss and debate intellectual property issues associated with digital data
  5. Create Graphical User Interfaces (GUI) with considerations of audience and accessibility
    1. Generalize a user interface topic to the field of human-computer interactions
    2. Use an API to acquire methods that affect an object?s state
    3. Modify elements of a pattern to a stated programming need
    4. Create and model-view controller GUI
  6. Assess the components of a digital footprint
    1. Compare designs, strengths and weaknesses of content and flow of data of existing web pages
    2. Compare results from a variety of search engines to refine search techniques
    3. Explore the hierarchical nature of DNS and IP
    4. Use HTML and CSS to learn the tree structure of web documents
  7. Analyze client-side code, server-side code, and databases for delivery of interactive web content
    1. Collaborate between client-side code and server-side code to publish content on the web
    2. Use JavaScript and PHP code to problem solve
    3. Compare languages to generalize concepts of sequencing instructions, selection of instructions by conditionals, iterations and variables
    4. Explore and compare career paths within computing
  8. Maintain online security and improve personal cyber security hygiene
    1. Explore cyber security from the perspective of user, software developer, and a business
    2. Explore parallel strands in encryption and security
    3. Use encryption as a route to explore the efficiency of algorithms
  9. Create visualizations to analyze sets of larger data and interpret patterns
    1. Discuss societal concerns related to the collection and persistence of Big Data
    2. Use Python to make meaningful graphic representations of data
    3. Use basic Excel spreadsheet programming and cell manipulation
  10. Apply statistics to deepen the meaning of knowledge gained by visualization of data
    1. Draw conclusions from relevant data
    2. Manipulate and visualize data using multiple platforms
    3. Experiment with object recognition and facial recognition software
    4. Identify clustering and linear correlation patterns in data
  11. Use Moore’s law and computer modeling
    1. Discuss Moore’s law and its application to computer modeling and simulation
    2. Manipulate discrete electronic components to create logic gates and comparable results using integrated circuits
    3. Explore simulation in NetLego
    4. Examine the code of ethics for simulations
  12. Evaluate intelligent and complex behavior arising from simple rules and unintelligent agents
    1. Manipulate models to change behaviors
    2. Explore the generation and observation of fractals and diffusion limited aggregation models



[Add to Portfolio]