Clackamas Community College

Computer Science (CS)

CS-120  Survey of Computing  
4 credits, Fall/Winter/Spring/Summer  

A computer competency course to familiarize students with computer concepts, software applications and the implications of living in the digital age. Introduces students to computer concepts, including, but not limited to the Microsoft Windows environment, Microsoft Office Applications, hardware terminology, social media and the Internet.

Required: Flash drive
Prerequisites: Placement in CS-120, and WRD-098 or placement in WR-121
  
CS-125H  HTML & Web Site Design  
3 credits, Fall/Winter/Spring/Summer  

Hands-on approach to planning, design, and developing published web sites using HTML tags in a text editor. The class focuses on basic HTML coding using HTML 5 models. Hyperlinks, images, cascading style sheets, forms, accessibility and design principles will be covered, as well as tools such as FTP clients, accessibility checkers, and validators.

Recommended: CS-120 or equivalent experience  
CS-133S  Introduction to JavaScript & Server-Side Scripting  
3 credits, Winter  

Design, programming, testing of scripted web pages using JavaScript for client-side applications and to call PHP-based server-side applications. Introduction to fundamental concepts of interactive web pages and server-side connectivity. Covers the Document Object Model (DOM) and programming constructs like variables, operators, functions, control structures, and exception handling.

Prerequisites: CS-125H, and MTH-060 or placement in MTH-065  
CS-133VB  Visual Basic.NET I  
3 credits, Fall/Spring  

Hands-on approach to software design using object-oriented programming. Planning an application, building a user interface, using variables and constants, calculating, accumulating, counting, making decisions, using functions, and using menus.

Prerequisites: BA-131 or CS-120, and MTH-060 or placement in MTH-065  
CS-135DB  Microsoft Access  
3 credits, Fall/Spring  

Focuses on the advanced database capabilities using a current version of Microsoft Access. Topics include design, construction, and documentation of a database management system, designing reports, forms, advanced form techniques, advanced queries, customizing tables, and creating and using an application system with macros.

Prerequisites: CS-120 or equivalent level of computer literacy  
CS-135I  Advanced Web Design With Dreamweaver  
3 credits, Spring  

Plan and publish a standards-based, accessible web site via a variety of tools, including the Adobe Creative Suite. Complete market and user-needs analysis to best target site content and design. Create a graphical web site mock-up, then use CSS (including a framework and pre-processors), scripts, and multimedia to realize site goals. Emphasizes professional design techniques.

Prerequisites: CS-125H, or equivalent experience with hand-coded HTML and CSS  
CS-135S  Microsoft Excel  
3 credits, Fall/Winter/Spring  

Focuses on advanced spreadsheet capabilities using a current version of Microsoft Excel. Topics include design, construction, and documentation of spreadsheets, use of templates, multiple worksheets, complex formulas, functions and filtering, Pivot Tables, advanced chart features, sorting, database capabilities, finding data, creating subtotals, using lookup tables, finding trends and forecasting, creating and editing macros, validating data, and working with controls.

Prerequisites: CS-120 or BA-131, or equivalent level of computer literacy  
CS-135W  Microsoft Word  
3 credits, Winter  

This course focuses on advanced word processing features using the latest version of Microsoft Word. Topics include using tables, merging form letters and data source files, desktop publishing, large document capabilities including master documents and indexes, and linking and embedding objects between Office applications.

Prerequisites: BA-131 or CS-120, or equivalent level of computer literacy  
CS-140  Introduction to Operating Systems  
4 credits, Fall/Spring  

Introduction to the theory and practical foundations of the Windows, Linux/UNIX, and macOS desktop operating systems. Discussion of and practice with OS administration through installation, configuration, networking, security, and virtualization.

Prerequisites: CS-120 or equivalent placement, and MTH-060 or placement in MTH-065, and WRD-098 or placement in WR-121  
CS-140L  Linux for Programmers  
4 credits, Spring  

Introduction to the Linux command line and software development tools. Covers how to use the command line and build tools, including VIM, GCC/G++, make, gdb, and others. Students will gain experience with the build tools by writing and debugging relatively complex programs in both C and C++.

Prerequisites: CS-162  
CS-151  Networking I  
4 credits, Winter  

This course introduces the architecture, structure, functions, components, and models of the Internet and other computer networks. The principles and structure of IP addressing and the fundamentals of Ethernet concepts, media, and operations are introduced to provide a foundation for the curriculum. By the end of the course, students will be able to build simple LANs, perform basic configurations for routers and switches, and implement IP addressing schemes. This course, along with CS-152, cover the topics on the CISCO CCENT exam.

Prerequisites: CS-160 or Student Petition  
CS-152  Networking II  
4 credits, Spring  

Practices the building and servicing of basic computer networks. Topics include physical media, network design, addressing, routing, switching, and management used in common LANs and the Internet. This course, in conjunction with CS-151, covers the topics of the CompTIA Network+ exam.

Prerequisites: CS-151 and CS-227  
CS-160  Computer Science Orientation  
4 credits, Fall/Winter/Spring  

Examines foundational computing subjects used in Computer Science and Information Technology. Topics include computer architecture, electronic logic, data representation, networking, algorithms and programming, which are used in successive Computer Science courses. Information about degrees in Computer Science and Information Technology is also covered.

Recommended: MTH-060 or placement in MTH-065. WRD-098 or placement in WR-121. CS-120 or placement in CS-121  
CS-161  Computer Science I  
4 credits, Fall/Winter  

Introduction to fundamental concepts of structured programming, including problem solving, algorithm and program design, data types, loops, control structures, subroutines, and arrays. Learn to write structured programs in a high level programming language.

Prerequisites: MTH-111 or placement in MTH-112, or 4 years high school math  
CS-162  Computer Science II  
4 credits, Winter/Spring  

Introduces fundamental concepts of object oriented programming and dynamic memory management. Covers objects, classes, pointers, dynamic memory allocation, linked lists, and program correctness, verification, and testing.

Prerequisites: CS-161  
CS-181  CMS Web Development  
3 credits, Winter  

Explores creating dynamic and interactive websites via the use of a current content management systems (CMS). Includes installation of CMS/database, working with templates, creating efficient site navigation, enhancing sites using components, modules, plugins, and extensions, to include shopping cart utilities.

Prerequisites: CS-125H, or equivalent experience with HTML & CSS  
CS-201  Computer Systems II  
4 credits, Fall  

Introduction to computer systems from a software perspective. Topics include: Basic machine organization, system programming in C and assembly language, introduction to system programming tools (gcc, makefile, gdb), data representation (bits & bytes, characters, integers, floating point numbers), implementation of control flow, procedure calls, and complex data types at the machine level, linking and loading, exceptions and interrupts, process control and signals, system calls, file I/O, timing and improving program performance, basic memory hierarchy, and dynamic memory allocation techniques.

Prerequisites: CS-162  
CS-202  Program Structures  
4 credits, Winter  

Students will become familiar with advanced C++ and Java syntax for object-oriented programming. Use of the file system, operating system calls, and shell-level programming; low-level debugging of high-level programs. Programming exercises will include applications of data structures and memory management techniques.

Prerequisites: CS-162  
CS-225  Computer End User Support  
3 credits, Fall/Spring  

Addresses professional and interpersonal skills needed by technicians who support and manage hardware and software information systems. Customer service skills; troubleshooting; helpdesk operation; product needs analysis, evaluation, purchase, and installation; technical documentation and training.

Prerequisites: CS-120 or placement in CS-121 or equivalent experience. WRD-098 or placement in WR-101 or WR-121  
CS-227  Computer Hardware & Repair  
4 credits, Fall  

An in-depth course in computer hardware. Covers operational concepts, identification, installation, configuration, and troubleshooting of power supplies, motherboards, microprocessors, memory modules, disk drives, optical drives, and expansion cards. This course, in conjunction with CS-228, covers the topics of the CompTIA A+ certification exam.

CS-228  Computer OS Maintenance & Repair  
4 credits, Winter  

An in-depth course in operating system maintenance and troubleshooting. Covers configuration, maintenance, and troubleshooting of desktop and mobile operating systems, the fundamentals of cloud computing, and client network configuration and troubleshooting. This course, in conjunction with CS-227, covers the topics on the CompTIA A+ certification exam.

Prerequisites: CS-227  
CS-234J  jQuery Web Development  
3 credits, Spring  

In-depth exploration of creating dynamic websites using the jQuery function library. Topics include creating AJAX applications, XML and JSON data formats, image effects like sliders and lightboxes, navigation effects, mobile-friendly effects and more.

Prerequisites: CS-133S or previous HTML and programming experience  
CS-234P  PHP/MySQL Web Development  
3 credits, Spring  

Use PHP and MySQL to develop dynamic web sites for use on the Internet. Develop web sites ranging from simple online information forms to complex online applications. Introduce programming fundamentals including variables, control structures, functions and objects. Applications developed use MySQL as the backend database and will explore database connectivity, querying, and security.

Prerequisites: CS-125H or equivalent experience
Recommended: CS-275
  
CS-240L  Linux Administration I  
4 credits, Fall/Spring  

Covers the fundamentals of the Linux operating system. Topics include: system architecture, installation, command line and file system. This course, along with CS-241L, covers the topics of the Linux LPIC-1 (or CompTIA Linux+) certification exam.

Prerequisites: CS-140  
CS-240M  macOS Administration  
3 credits, Winter  

Covers the fundamentals of installing, configuring, troubleshooting, and supporting the macOS operating system. Topics include: installation and setup, user accounts, file systems, data management, applications, network configuration, network services, peripherals, startup and troubleshooting. This course covers the topics of the Apple macOS Support Essentials certification exam.

Prerequisites: CS-140  
CS-240W  Windows Desktop Administration  
3 credits, Winter  

Covers the fundamentals of installing, configuring, troubleshooting, and supporting the Windows operating system. Topics include: installation, managing disks and file systems, file access security, users, profiles and policies, groups, security, backup, remote access, printing, and troubleshooting. This course covers the topics of the Microsoft Configuring Windows Devices certification exam.

Prerequisites: CS-140  
CS-250  Discrete Structures I  
4 credits, Winter  

Students will be introduced to discrete structures and techniques for computing. The course, which is the first in the two-term sequence, aims to convey the skills in discrete mathematics that are used in the study and practice of computer science. Topics include: Sets; Graphs and trees; Functions: properties, recursive definitions, solving recurrences; Relations: properties, equivalence, partial order; Proof techniques: inductive proof; Counting techniques and discrete probability.

Prerequisites: MTH-251  
CS-251  Discrete Structures II  
4 credits, Spring  

Continuation of the introduction to discrete structures and techniques for computing started in CS-250. The course, which is the second in the two-term sequence, aims to convey the skills in discrete mathematics that are used in the study and practice of computer science. Topics include: Logic: propositional calculus, first-order predicate calculus; Formal reasoning: natural deduction, resolution; Applications to program correctness and automatic reasoning; Introduction to algebraic structures in computing.

Prerequisites: CS-250  
CS-260  Data Structures  
4 credits, Fall/Spring  

Covers common data structures used for the storage and manipulation of data, as well as data abstraction, sorting algorithms, and algorithm analysis. Data structures include linked lists, stacks, queues, binary trees, btrees, hash tables, and graphs.

Prerequisites: CS-162  
CS-275  Database Design  
3 credits, Winter  

Focuses on design of a relational database management systems (RDMS). Topics will include database development using the a) requirement, b) design, c) implementation model, database theory from flat table design to relational systems, entity-relationship models, one-to-one, one-to-many, and many-to-many relationships, referential integrity, normalization of tables, database programming and querying with SQL, and database security. Although other platforms may be demonstrated, the majority of work will be done with MySQL Server.

Prerequisites: CS-120 and BA-131, or equivalent level of computer literacy  
CS-279W  Windows Server Administration  
4 credits, Spring  

Covers the fundamentals of installing, configuring, troubleshooting, and supporting the Microsoft Windows Server operating system and network infrastructure. Topics include: installation, Active Directory, data storage, resource access, security, monitoring, and disaster recovery. This course introduces the topics of the Microsoft Installation, Storage, and Compute with Windows Server certification exam.

Prerequisites: CS-151 and CS-240W  
CS-280  Computer Science/CWE  
1-6 credits, Fall/Winter/Spring/Summer  

Cooperative Work Experience. This course provides supervised work experience to supplement the academic classroom environment. Work examples include user support, work with computer applications or programming languages, installation or management PC computer systems, and developing websites. Variable Credit: 1-6 credits. May be repeated for up to 9 credits. Required: Student Petition.

Corequisites: CWE-281  
CS-284  Network Security  
3 credits, Winter  

This course provides an introduction to the core security skills needed for monitoring, detecting, investigating, analyzing and responding to security events, thus protecting systems and organizations from cybersecurity risks, threats and vulnerabilities. This course covers the topics of the Cisco Cybersecurity Fundamentals and Cybersecurity Operations certification exams.

Prerequisites: CS-151
Recommended: CS-240L and CS-240W
  
CS-288W  Windows Network Administration  
4 credits, Winter  

Continued coverage of network services and administration using Microsoft Windows Server. Topics include: IPv4 and IPv6 addressing, DNS, DHCP, IPAM, network protection, and remote access. This course covers the topics of the Microsoft Networking with Windows Server certification exam.

Prerequisites: CS-279W  
CS-289  Web Server Administration  
4 credits, Spring  

An introduction to Apache httpd and Microsoft Internet Information Server. Topics include: installation, administration, security, and troubleshooting, as well as the http, https, and ftp protocols.

Prerequisites: CS-240L and CS-240W  
CS-297N  Networking Capstone  
4 credits, Spring  

The capstone course for the Computer & Network Administration AAS program. Provides the opportunity to combine the discrete information learned from program classes together towards the completion of an enterprise-level computer project. Focus can also be placed on researching, practicing, and obtaining an industry-standard certification credential. Emphasis will be placed on project planning, timeline management, creation of training documentation, and oral presentation of completed works.

Prerequisites: CS-152 and CS-288W  
CS-297W  Website Capstone  
3 credits, Spring  

The capstone course for the web development AAS programs. Provides the opportunity to function in a production design environment, work cooperatively with students from other focus areas, and research emerging website technologies. Emphasis will be placed on client interaction, project teams, and accountability, as well as the development of a professional portfolio web site or completion of a research project in an emerging web-related technology.

Prerequisites: CS-133S and CS-135I