Generated on Tue Oct 25 10:19:18 2022

CS 111: Computer Science Principles (JSON)

Catalog description: This course provides a broad and exciting introduction to the field of computer science and the impact that computation has today on every aspect of life. It focuses on exploring computing as a creative activity and investigates the key foundations of computing: abstraction, data, algorithms, and programming. It looks into how connectivity and the Internet have revolutionized computing and demonstrates the global impact that computing has achieved, and it reveals how a new student in computer science might become part of the computing future.

Prerequisites: MATH 120 or higher    (Catalog Link)

Credits: 4 (3+2P)

Coordinator: Shaun Cooper

Textbook: Principles of Computer Science, Schaum's Outline, Carl Reynolds & Paul Tymann, McGraw Hill, ISBN 978-0-07-146051-4, 2008
    (also: online readings)

BS degree role: elective

Course Learning Objectives

  1. Identify and differentiate programming constructs like IF, FOR, and WHILE
  2. Convert numbers between Hexadecimal, Binary and Decimal
  3. Write pseudo code to manipulate a robot
  4. Use an ASCII table to translate HEX strings into characters
  5. Encrypt and Decrypt simple messages with a Caeser Cypher

Course Practicum Requirements

  1. Use the internet to find specfic information about a person
  2. Use an IDE for programming in Java

Course Topics

  1. Algorithms -- the processes taken to map a problem into small steps which can be implemented in a software platform
  2. Computer Organization -- how computers are constructed and how the computer processor works with Input/Output devices
  3. Software -- Languages used to implement algorithms which can be translated into computer architecture information
  4. Imperative Programming -- using Java, learning the techniques to make a computer functional
  5. Block programming -- using SNAP, use a programming environment that uses visual programming
  6. Networking -- how computers are connected
  7. Social Issues -- how computers have changed our lives in society.

Course Improvement Decisions

(Course improvement decisions or recommendations from past assessments)

  1. none

ABET Outcome Coverage

(Provide Mapping to ABET Student Outcomes)

  1. TBD

Other Notes

(Any important notes or issues to consider)

  1. SP19 learning objectives are below
  2. To understand how a Java Program is written, compiled and run
  3. To understand how block programming is used in implementing high level visual tasks
  4. To understand how to create an algorithm, applying the algorithm to a larger set of common problems
  5. Understand computer science terms and structures
  6. To learn about data abstraction and to create Computer Science artifacts
  7. To understand how computer networks operate
  8. To understand how Computer Science principles are a part of our everyday lives