Computer Science

Tom Willingham
509.793.2191
computerscience@bigbend.edu

The Computer Science program offers industry-recognized training for high-demand careers in various sectors of information technology at Big Bend Community College. Students can earn associate degrees, short-term certificates, or take courses for transfer to a four-year college or University.

Current Department of Labor statistics indicate that 8 of the 9 fastest growing occupations will be in the area of Information Technology. According to Money Magazine, 23 of the top 100 best jobs in America are in the Information Technology sector in fields such as Network Administrator, IT Specialist, Software Developer, Software Tester, Information Systems Security, IT Manager, Web Master, and Programmer.

Program prerequisites: Basic computer literacy, keyboarding, and familiarity with word processing and spreadsheet software; pre-college math and English courses may be required depending on student placement level. Degree options include an Associate in Computer Science DTA/MRP and a Systems Administration, Associate in Applied Science degree.

Certificate options include Cisco Networking Certificate of Achievement and Certificate of Accomplishment, Computer Support Specialist Certificate of Accomplishment, a Network Support Specialist Certificate of Accomplishment, and a Systems Administration Certificate of Achievement.

Big Bend Community College’s CS Department is a Microsoft Data Center Academy, a CompTIA Academic Partner, a Cisco Networking Academy, and an active member of the National Cybersecurity Training & Education Center (NCyTE). We work with these and other organizations worldwide to ensure that our program is relevant to and meeting industry needs.

Degrees and Certificates

Courses

CS& 131: Computer Science I: C++

Credits 5
An introduction to computer programming design and development with a primary focus on data structures and abstraction using the C++ object-oriented programming language. Topics include logical problem-solving, algorithm development, and programming basics, including an understanding of pointers, dynamic memory allocation, and data structures such as linked lists.

CS& 141: Computer Science I: Java

Credits 5
An introduction to computer programming using the Java programming language. Students learn algorithm development and computational problem solving while writing Java programs. Language features that are studied include keywords, variables, data types, control structures, arrays, methods, classes, and objects.

CS 101: Intro to Computer Science

Credits 3
An introduction to computer science concepts and the role of computers in society. Topics include the history of computing, computer hardware, operating systems, the Internet, database management, an overview of programming languages, careers in computer technology, and the ethics of computing. This course is designed for Computer Science majors, and will emphasize principles and underlying computer technology concepts.

CS 103: Intro to Computer Hardware & Operating Systems

Credits 6

This course covers basic concepts of computing hardware and operating systems (O/S) design structure, and mechanisms.  Coursework will address the impact of hardware design on applications and systems software including computer software systems performance, memory, kernel structure, input/output (I/O) devices, file system functions, virtualization, and securing the operating system.  Students will learn how computers work, how to replace parts and upgrade components, and how to install and configure major modern client operating systems.  Students completing CS 103 have the knowledge and skills necessary for CompTIA A+ Certification exam preparation.

CS 104: Intro to Computer Hardware

Credits 3
This course covers basic concepts of computing hardware and addresses the impact of hardware design on applications and systems software. Students will learn how computers work and be able to replace parts and upgrade components. Students completing CS 104 and CS 105 will have the knowledge and skills necessary for CompTIA A+ Certification exam preparation.

CS 105: Intro to Computer Operating Systems

Credits 3
An introduction to operating systems (O/S) design, structure, and mechanisms. Topics include computer software systems performance, memory, kernel structure, input/output (I/O) devices, file system functions, virtualization, and securing the operating system. Students will install and configure major modern client operating systems Students completing CS 104 and CS 105 will have the knowledge and skills necessary for CompTIA A+ Certification exam preparation.

CS 106: Intro to Virtualization

Credits 5

This introductory course is an overview and hands-on exploration of virtualization in desktop, server, and cloud environments. Concepts covered include an introduction to virtualization technologies and how to deploy and manage a virtual server environment. Course topics include virtualization concepts and terms, installing and deploying virtual machines using Hyper-V, VM Ware, and XenServer, and implementing a secure virtual environment.

CS 110: Networking Fundamentals

Credits 4
An introduction to the basic concepts of computer networking, including: the OSI model, working with network-related hardware, network configuration with TCP/IP, network operating system basics, fault tolerance issues, and troubleshooting network problems. The course prepares students for the CompTIA Network+ certification exam. Note: This courses learner outcomes align to the common IT course, IT 115: Introduction to Networking, and is accepted as a transfer course with participating Washington State community and technical colleges. Look for this notation if transferring to another IT program at a Washington State community or technical college.

CS 111: Intro to Programing

Credits 5
An introductory computer programming course. Students learn to write and debug simple text based programs while exploring the fundamental principles of programming. Topics for study include input / output, statements, expressions, operations, variables, data types, control structures, program modularization, basic data structures and file input and output.

CS 115: Intro to Database Design & Management

Credits 5
This course will examine the theory of database design and management, including how collections of data are organized, stored, and analyzed. Topics include the fundamentals of the relational model, Structured Query Language (SQL), data modeling, database design and administration, and web database processing. Introductory business and financial services applications will be used to illustrate course concepts through lectures and hands-on labs.

CS 116: Networks & Network Security I

Credits 3
An introduction to computer and device networking is required by anyone becoming involved in any technical field. Todays personal computers, microcontrollers and PLCs no longer work in isolation. They constantly exchange a variety of information through wired and wireless networks. This course will provide a basic understanding of the Theory of Operation, security, technical design, and architecture of network and Internet communication. The course is designed for all audiences, including those with absolutely no prior technical experience or math skills. The Internet is amazingly designed and should be understood by all who use it.

CS 117: Networks & Network Security II

Credits 3
This course will provide the operational commands, knowledge, skills, and abilities needed to use, debug, explore, maintain, modify, troubleshoot and defend networks based on the Theory of Operation. The student will learn requisite Command Line Interface (CLI) and Graphical User Interface (GUI) skills and utilities for Windows and Linux networking utilities. These skills are required to successfully support personal and organizational networks, data centers, and internet connectivity. The course will build on network security and add internet, WiFi, industrial and organizational security including firewalls, Industry 4.0, Industrial Internet of Things (IIoT), Internet of Things (loT), Long Range (LoRa). Learning experiences will be augmented by learning to setting up several small, functional desktop networks at home or in the lab. Student ownership of a small home lab equipment setup will be covered by class lab fees.

CS 120: A+ Prep & Certification

Credits 1 Max Credits 2

This course is intended for students taking the CompTIA A+ certification exam. Content from the prerequisite courses will prepare the students for the exams. Instructors for this course will provide materials, support, and practice exams to facilitate student preparation

CS 121: Network+ Prep & Certification

Credits 1

This course is intended for students taking the CompTIA Network+ certification exam. Students will have materials, support, and practice exams provided to facilitate their preparation.

CS 122: Server+ Prep & Certification

Credits 1
This course is intended for students taking the CompTIA Server+ certification exam. Students will have materials, support, and practice exams provided to facilitate their preparation.

CS 123: Security+ Prep & Certification

Credits 1
This course is intended for students taking the CompTIA Security+ certification exam. Students will have materials, support, and practice exams provided to facilitate their preparation.

CS 124: Cloud+ Prep & Certification

Credits 1
This course is intended for students taking the CompTIA Cloud+ certification exam. Students will have materials, support, and practice exams provided to facilitate their preparation.

CS 132: Advanced Programming with C++

Credits 5
This course expands on the fundamentals covered in CS& 131. Students will develop intermediate C++ programs for both traditional data processing and object-oriented applications. Through the experience of creating these programs and methods the student will learn advanced features of C++ object-oriented programming to solve problems in various domains.

CS 142: Advanced Programming with Java

Credits 5
This course expands on the programming fundamentals covered in CS& 141. Students learn to develop advanced object-oriented Java programs of increasing complexity using advanced design and data abstraction techniques. Language concepts explored include recursion, inheritance, polymorphism, exception handling, interfaces, file processing and graphical programs.

CS 151: Introduction to Digital Forensics

Credits 5

This course is an introduction to the methods used to properly conduct a computer forensics investigation. Topics covered include an overview of computer forensics as a profession; how computer crime affects forensics, forensic methods, and labs; branches of digital forensics; email forensics, mobile forensics, data acquisition and analysis; and, a review of computer forensics tools.

CS 152: Ethical Hacking

Credits 5 Max Credits -1

This course is an introduction to Cybersecurity. There is an exponential growth in the Information Technology sector for trained security specialists with in-depth knowledge and experience analyzing data and securing networks, computers and mobile devices. Learning techniques of threat management is mission critical to prevent data breaches. This course prepares students for an entry level IT position focused on cybersecurity which is required for many Information System Technician, Network Administration, and other IT Specialist positions.

CS 171: Cisco Networking: Intro to Networks

Credits 6

This course introduces the architectures, models, protocols, and networking elements that connect users, devices, applications and data through the Internet and across modern computer networks - including IP addressing and Ethernet fundamentals. This is the first of three courses comprising the Cisco CCNAv7 curricula and covers the technical knowledge and skills required to take the Cisco CCNA exam.

CS 172: Cisco Networking: Routing, Switching, & Wireless Essentials

Credits 6
This course focuses on switching technologies and router operations that support small-to-medium business networks and includes wireless local area networks (WLANs) and security concepts. Students learn key switching and routing concepts. By the end of this course, students will be able to perform basic network configuration and troubleshooting, identify and mitigate LAN security threats, and configure and secure a basic WLAN. This is the second of three courses comprising the Cisco CCNAv7 curricula and covers the technical knowledge and skills required to take the Cisco CCNA exam.

CS 173: Cisco Networking: Enterprise Networking, Security, and Automation

Credits 6
This course helps students develop workforce readiness skills and build a foundation for success in networking-related careers and degree programs. Students learn, apply, and practice CCNA knowledge and skills through a series of in-depth hands-on experiences and simulated activities including comprehensive networking concepts and skills, from network applications to the protocols and services provided to those applications. Upon completion of CS 171, CS172, and CS 173, learners will be prepared to take the Cisco CCNA Unified certification exam.

CS 195: Internship: Work Based Learnin g

Credits 1 Max Credits 4
Students will participate in a supervised internship with regional computer and information technology employers. Students will acquire industry work experience that validates employability skills. Course may be repeated up to a maximum of 4 credits.

CS 197: Internship: Work Based Learning Seminar

Credits 1
Students participating in internships share feedback and discussion to integrate work-based learning experiences with classroom instruction. Students are expected to participate in class discussions and develop a computer science career-based employment resume.

CS 205: Windows Server Administration

Credits 5

This course focuses on Windows Server Administration. Topics include the communication, design and implementation of the Active Directory, DNS, Group Policy Objects, disaster recovery, configuring the web server, security, and working knowledge of Microsoft Exchange.

CS 206: Linux Server Administration

Credits 5

In this course students will customize the BASH environment, build shell scripts in the Korn shell, control the Linux system, manage user accounts, manage system software in Linux, and manage file systems in Linux. Students will also troubleshoot the system, configure the client/server environment, apply security practices to Linux systems, and improve system performance. (Formerly UNIX/Linus Server Administration)

CS 207: Introduction to Security Administration

Credits 5

This course builds on prior course work in computer hardware, operating systems, and networks. Students will acquire the specific skills required to implement basic security services on any type of computer network and be prepared to take the CompTIA Security+ exam.

CS 211: Intro to Scripting

Credits 3

An introductory scripting course. Students will explore the fundamental principles of scripting and learn to write and debug simple scripting language to add functionality to programs. Topics for study include input/output, operations, pipes, shell variables, control structures, file input and output, regular expressions, and navigation within a file system

CS 235: Data Structures and Algorithms with C++

Credits 5
The 3rd course in a yearlong study of the foundations of Computer Science. In this course a variety of data structures and their associated algorithms are implemented and utilized. Basic data structures such as arrays, linked lists, stacks, queues, sets, and trees are studied and applied to problems in data storage and manipulation. Basic sorting algorithms are studied. Design, analysis and implementation techniques are discussed to illustrate and apply the concepts of the course.

CS 245: Data Structures and Algorithms with Java

Credits 5
The 3rd course in a yearlong study of the foundations of Computer Science. In this course a variety of data structures and their associated algorithms are implemented and utilized. Basic data structures such as arrays, linked lists, stacks, queues, sets, and trees are studied and applied to problems in data storage and manipulation. Basic sorting algorithms are studied. Design, analysis, and implementation techniques are discussed to illustrate and apply the concepts of the course.

CS 260: Computer Programming Topics

Credits 5
This course highlights a new emerging software development, programming language, cloud computing, web application, or mobile application topic. In consultation with their Computer Science program advisor, students choose a specialized or in-depth programming related project and apply new and emerging computing and information technologies. Completed projects are presented and shared with fellow students.

CS 295: Internship: Work Based Learning II

Credits 1 Max Credits 4
Students will participate in an advanced internship with regional computer and information technology employers. Course may be repeated up to 4 credits.

CS 297: Internship: Work Based Learning Seminar II

Credits 1
Continuation of internship work based learning seminar. Students will provide feedback and discussion to integrate and relate internship/work-based learning experience and classroom instruction.