Principles of Computer Science - CSC 110
https://courses.vccs.edu./courses/CSC110-PrinciplesofComputerScience
Effective: 2022-03-31
Course Description
Provides a broad introduction to the field of computer science. Introduces design techniques, development of algorithms, and applications of computer science. Includes the idea of abstraction as a problem solving technique. Examines the functionality of computing innovations and computing systems. Discusses the potential impacts of these innovations from a social, legal, and ethical perspective. The assignments in this course require mathematical problem solving skills, algebraic modeling and functions, and use of variables. This is a UCGS transfer course.
Lecture 3 hours. Total 3 hours per week.
3 credits
The course outline below was developed as part of a statewide standardization process.
General Course Purpose
CSC 110 is designed as an introductory computing course for general education. This course may meet the computing competency requirement for non-CS majors as determined by the institution. It is not meant as part of a sequence and is a terminal course.
Course Objectives
- Civic Engagement
- Identify and discuss ideas about the civic impact of computing. Explore potential contributions to existing societal problems
- Critical Thinking
- Retrieve relevant information from the perspective of other disciplines to develop solutions using computing principles.
- Written Communication
- Communicate technical information through the use of appropriate language and computing-specific design representations or diagrams.
- Quantitative Literacy
- Perform basic numerical conversion relevant to computing.
- Develop solutions which require the use of arithmetic and logical operators and interpret quantitative results.
- Scientific Literacy
- Assess how current and emerging technologies contribute to technological development and dissemination
- Professional Readiness
- Work well with others and display situationally and culturally appropriate demeanor and behavior
- Creative Development
- Collaborate in the development of solutions to problems
- Identify the purpose of the program and develop potential inputs
- Design an appropriate method or approach to solve the problem.
- Correct errors in the algorithm, including error discovery through desk checking.
- Data
- Explain how computers represent text, images, and sounds using digital data.
- Explain the consequences of using bits to represent data
- Convert from decimal to binary and vice versa for positive integers to develop an understanding of how the computer represents data.
- Algorithm and Programming
- Develop algorithmic solutions using logical design tools such as flowchart or pseudocode
- Identify program inputs and outputs
- Use arithmetical and logical operators as part of expressions
- Apply conditional and iterative structures
- Describe basic concepts used in computing such as lists, binary search, modules, random values and libraries
- Compare the efficiency of different algorithms for solving a problem.
- Computer Systems and Networks
- Explain how computing devices work together in a network.
- Explain the basic structure and data transmission across the Internet.
- Explain how the Internet is different from the World Wide Web.
- Describe the concept and benefits of fault tolerance.
- Recognize sequential, parallel, and distributed computing.
- Define cybersecurity.
- Explain why cybersecurity is important, on an individual level, when using computers and mobile devices.
- Explain the relationship between the hardware, system software, and application software
- Social, Legal and Ethical Impact of Computing
- Explain how an effect of a computing innovation can be both beneficial and harmful
- Describe issues that contribute to the digital divide.
- Explain how bias exists in computing innovations.
- Explain how people participate in problem-solving processes at scale.
- Explain the concepts of intellectual property in computing.
- Identify behaviors that support a secure cyber presence
Major Topics to be Included
- Creative Development
- Data
- Algorithm and Programming
- Computer Systems and Networks
- Social, Legal and Ethical Impact of Computing