Information and Computer Sciences

Degrees and Certificates

Classes

ICS 100: Computing Literacy and Applications

Credits 3 Lecture Hours 3

Fundamental information technology concepts and computing terminology, productivity software for problem solving, computer technology trends and impact on individuals and society. Emphasizes the utilization of operating systems and the production of professional documents, spreadsheets, presentations, databases, and web pages.

Course Outcomes
  • Utilize the basic features of computer applications to communicate effectively (major content area).
  • Utilize operating system interfaces to manage computing resources effectively and securely.
  • Utilize online resources for research and communication.
  • Define, explain, and demonstrate proper computing terminology usage in areas such as hardware, software, and communications.
  • Describe ethical and security issues involved in the use of computing technology.

ICS 101: Digital Tools for the Information World

Credits 3 Lecture Hours 3

Fundamental information technology concepts and computing terminology, productivity software for problem solving, computer technology trends and impact on individuals and society. Emphasizes the utilization of operating systems and the production of professional documents, spreadsheets, presentations, databases, and web pages.

Course Outcomes
  • Utilize the appropriate computing applications to produce professional documents, spreadsheets, presentations, databases, and webpages for effective communication (major content area).
  • Utilize operating system interfaces to manage computing resources effectively and securely.
  • Extract and synthesize information from available Internet resources using intelligent search and discrimination.
  • Define, explain, and demonstrate proper computing terminology usage in areas such as hardware, software, and communications to effectively interact with other computer users and to prepare for higher-level computer courses.
  • Describe ethical issues involved in the use of computer technology.

ICS 105: Introduction to Computing Skills

Credits 3 Lecture Hours 3

In this introductory computing course, students will learn basic file management, digital communication, word processing, and presentation software. Students will explore various computing systems and terminology. This course is recommended for students inexperienced in computing.

Course Outcomes
  • Use appropriate computing tools to communicate effectively.
  • Demonstrate basic file management tasks.
  • Identify computing terminology, systems, and issues.

ICS 107: Web Site Development

Credits 3 Lecture Hours 3

An introduction to the concepts and skills for developing websites from planning through publishing. Design, usability, accessibility, markup and styling language, and integrating media will be emphasized. Web development software utilized.

Course Outcomes
  • Demonstrate the website development cycle.
  • Use appropriate web development software to create an effective website that communicates a message, incorporates appropriate media, and adheres to usability and accessibility standards.
  • Describe ethical issues involved in the development and use of websites.

ICS 111: Introduction to Computer Science I

Credits 3 Lecture Hours 3

Intended for computer science majors and all others interested in a first course in programming. An overview of the fundamentals of computer science emphasizing problem solving, algorithm development, implementation, and debugging/testing using an object-oriented programming language.

Prerequisites

MATH 103 with a grade of “C” or better, placement into MATH 135, or consent of instructor.

Course Outcomes
  • Use an appropriate programming environment to design, code, compile, run, and debug computer programs.
  • Demonstrate basic problem solving skills: analyzing problems, modeling a problem as a system of objects, creating algorithms, and implementing models and algorithms in an object-oriented computing language.
  • Illustrate basic programming concepts such as program flow and syntax of a high-level general purpose language and basic security practices.
  • Demonstrate working with primitive data types, strings, and arrays.

ICS 119: Introduction to Social Media

Credits 3 Lecture Hours 3

This computing course explores the foundations of building a presence on the Web, developing an entity’s brand and creating a social channel to share ideas, expertise and business philosophies. Topics covered: choosing a domain name, securing a content hosting service, initiating content creation, and constructing a social web channel.

Course Outcomes
  • Use the appropriate social media tools to create an online identity.
  • Create content that uniquely represents an entity’s image.
  • Plan and implement a social media campaign and analyze its effectiveness.
  • Analyze the ethical roles and responsibilities of a content creator.

ICS 121: Computing Topics

Credits 1 4 Lecture Hours 1

This course covers current computing topics. The course is designed to have variable credits to coincide with the rigor of the topic. Maybe repeated up to 6 credits with different topics. A course description will be on record to designate the various topics for a student’s transcript.

Prerequisites

TBA based on course topic.

Course Outcomes
  • Produce a final project to demonstrate knowledge of the computer topic.

ICS 123: Introduction to Digital Audio and Video Production

Credits 3 Lecture Hours 3
Designation
DA

This is an introductory course covering concepts and skills of working with digital audio and video including recording, editing and publishing online.

Course Outcomes
  • Record, edit and produce digital audio.
  • Produce a digital video project to communicate an effective message.
  • Define audio and video terminology and ethical practices as they apply to the use of digital media.

ICS 129: Introduction to Databases

Credits 3 Lecture Hours 3

This course covers the fundamental concepts in database technology, including storage structures, access methods, recovery, concurrency, and integrity. The relational model and its implementation will be covered in depth together with an overview of SQL and its role in application development. The course will also present an overview of database administration, including modeling and design activities. A substantial part of the course involves the development of an understanding of database concepts.

Course Outcomes
  • Define common database terminology.
  • Create Entity Relationship Diagrams (ERD).
  • Design and create a relational database using the normalization process.
  • Use Structured Query Language (SQL) to manipulate data.
  • Follow best practices in secure database design.

ICS 141: Discrete Mathematics for Computer Science I

Credits 3 Lecture Hours 3
Designation
FQ

This course covers logic, sets, functions, matrices, algorithmic concepts, mathematical reasoning, recursion, counting techniques, and probability theory.

Prerequisites

Grade of “C” or better in MATH 103 or placement into MATH 135 or higher, or consent of instructor.

Course Outcomes
  • Analyze issues and apply mathematical problem solving skills to plan courses of action in decision-making situations.
  • Solve problems by using basic mathematical formal logic, proofs, recursion, analysis of algorithms, sets, combinatorics, relations, functions, matrices and probability.

ICS 163: Design for Print

Credits 3 Lecture Hours 3

Upon completion of this course, the student will (1) understandhow to design professional print materials which integrate typography, images, space, and color theory; (2) be able to use desktop publishing software; (3) have developed familiarity with manipulating digital images; and (4) be able to produce materials such as business cards, fliers, brochures, and multi-page documents.

Course Outcomes
  • Produce professional documents to meet business needs.
  • Demonstrate awareness of design principles in the creation of projects from initial design to final production.
  • Create projects from initial design to final production.

ICS 171: Introduction to Computer Security

Credits 3 Lecture Hours 3

Examines the essentials of computer security, including risk management, the use of encryption, activity monitoring, intrusion detection; and the creation and implementation of security policies and procedures to aid in security administration.

Prerequisites

ICS 184 with a C or better, or concurrent enrollment, or consent of the instructor.

Course Outcomes
  • List the first principles of security and describe why each principle is important to security and its relationship to the development of security mechanisms and security policies.
  • Describe why good human machine interfaces are important to system use, the interaction between security and system usability and the importance for minimizing the effects of security mechanisms.
  • Analyze common security failures and identify specific design principles that have been violated, and the needed design principle, when given a specific scenario.
  • List the fundamental concepts of the Information Assurance/ Cyber Defense discipline and describe how they can be used to provide system security.
  • Identify the elements of a cryptographic system and describe the differences between symmetric and asymmetric algorithms, which cryptographic protocols, tools and techniques are appropriate for a given situation, and implementation issues.

ICS 184: Introduction to Networking

Credits 3 Lecture Hours 3

This course provides the student with the knowledge and skills to manage, maintain, troubleshoot, install, operate and configure basic network infrastructure, as well as to describe networking technologies, basic design principles, and adhere to wiring standards and use testing tools. The course also introduces the student to network security concepts.

Course Outcomes
  • Manage networking projects as part of a team.
  • Discuss information security technologies such as cryptography, digital signatures, key management, and authentication as they relate to computer networks.
  • Describe the fundamental concepts, technologies, components, terminology, protocols, standards organizations, and business, legal, ethical, and security issues related to communications and data networks.
  • Describe a basic secure network architecture in accordance with current best practices given a specific need and set of hosts/clients.
  • Use current network tools to monitor, map and troubleshoot a network and to track and identify packets.

ICS 193V: Cooperative Education/Internship/Practicum

Credits 1 3 Lecture Hours 1

Cooperative program between the student, an employer, and the College that integrates classroom learning with supervised practical experience. Reflects the student’s major interest area and availability of job assignments. Offers the opportunity to develop workplace employability skills dependent on job assignments and course of study.

Prerequisites

Various as determined by the particular course of study and placement of the cooperative education/internship practicum in the sequence of courses.

Course Outcomes
  • Complete computer assignments in a job that is cooperatively supervised by the employer and College.
  • Demonstrate the skills in the above assignments to both the College and the employer.

ICS 203: Digital Image Editing

Credits 3 Lecture Hours 3
Designation
DA

Introduction to the terminology, tools, features and techniques of digital image editing.

Course Outcomes
  • Use photographic practices and concepts to demonstrate the merits of digital photography.
  • Implement skills for digital image capture and manipulation with a variety output formats and input devices.
  • Apply the visual elements of line, shape, value, color, texture, space, time and motion as well as the design principles of balance, rhythm, emphasis, contrast, variation and unity in the creation of digital art works.
  • Complete the creative process from concept development through revisions to final output using problem-solving strategies.

ICS 207: Building Web Applications

Credits 3 Lecture Hours 3

Web Applications introduces programming for the web. Topics include: problem solving; web interactivity for websites; building applications with web authoring languages for markup, styling and scripting; presenting applications for mobile devices.

Course Outcomes
  • Programming with javascript
  • Utilizing javascript with HTML and CSS to create a web application.
  • Using events to trigger an action
  • Drawing on the web canvas
  • Using video and audio files on a web page
  • Going beyond standard fonts
  • Detecting the screen size of a device and optimize the application for the different sizes
  • Using local storage to remember data across web sessions.

ICS 208: Website Design

Credits 3 Lecture Hours 3

Introduces basic principles related to website design including terminology, tools, media, layout principles, and concepts. Topics and tasks include the creation of digital images and media for Web use, the integration of design elements into websites, and the development of skills in industry-standard computer programs.

Prerequisites

ICS 107 or consent of instructor.

Course Outcomes
  • Demonstrate understanding of important design techniques, concept development and composition.
  • Utilize image editing tools to create and edit images.
  • Apply web media and consistent styling to increase appeal throughout a website while maintaining usability and accessibility.

ICS 211: Introduction to Computer Science II

Credits 3 Lecture Hours 3

Reinforce and strengthen problem-solving skills using abstract data types and introduce software development practices. Emphasize the use of searching and sorting algorithms and their complexity, recursion, object-oriented programming, and data structures.

Prerequisites

A grade of “C” or better in ICS 111 or consent of instructor.

Course Outcomes
  • Use and implement abstract data types such as lists, stacks, queues, and trees.
  • Select the appropriate searching or sorting algorithm based on the algorithm’s behavior.
  • Develop recursive algorithms and programs.
  • Use standard libraries or packages as well as advanced object-oriented programming techniques (polymorphism, inheritance, and encapsulation).
  • Produce robust and secure programs using exception handling and extensive program testing.

ICS 212: Program Structure

Credits 3 Lecture Hours 3

Program organization paradigms, programming environments, implementation of a module from specifications, the C and C++ programming languages.

Prerequisites

Grade of “C” or better in ICS 211 or consent of instructor.

Course Outcomes
  • Use an editor, make file, and compiler in the UNIX environment.
  • Use recursion, arrays, pointers, character variables, bitwise operators, structures, and linked data structures in C.
  • Use classes (constructors, destructor, and overloading assignment), operator overloading, inheritance, and polymorphism in C++.
  • Use linked data structures and recursion in C++.
  • Use standard C++ strings and C++ STL library data structures, such as STL lists.

ICS 215: Introduction to Scripting

Credits 3 Lecture Hours 3

Introduction to scripting languages for the integration of applications and systems. Scripting in operating systems, web pages, server-side application integration, regular expressions, event handling, input validation, selection, repetition, and parameter passing for languages such as Perl, JavaScript, PHP, Python, and/ or shell scripting.

Prerequisites

Grade of “C” or better in ICS 211 or consent of instructor.

Course Outcomes
  • Use regular expressions to solve different problems.
  • Produce robust client and server side scripts in a variety of scripting languages using software engineering techniques such as review and extensive program testing.
  • Handle user and system generated events using various scripting languages.
  • Validate user input using various scripting languages for security purposes.

ICS 240: Operating Systems

Credits 3 Lecture Hours 3

This course introduces students to various aspects of Operating Systems. This course examines and explores the structure, basic functionality, administration, troubleshooting, and installation of operating systems and related applications. Advanced topics include scripting, operating system security, maintenance and services.

Prerequisites

Grade of C or better in ICS 111.

Course Outcomes
  • Install and maintain an operating system and essential system services.
  • Describe the core components within operating system.
  • Demonstrate proper use of common operating system commands.
  • Write simple shell scripts to perform different tasks.

ICS 241: Discrete Mathematics for Computer Science II

Credits 3 Lecture Hours 3

Includes program correctness, recurrence relations and their solutions, divide and conquer relations, graph theory, trees and their applications, Boolean algebra, introduction to formal languages and automata theory.

Prerequisites

Grade of “C” or better in ICS 141 or consent of instructor.

Course Outcomes
  • Analyze issues and apply more complex mathematical problem solving skills to plan courses of actions in high-level decision-making situations.
  • Utilize such tools as graphs, trees, boolean algebra, and recurrence relations.
  • Explain discrete math concepts such as formal languages, finite-state machines, and program correctness.

ICS 281: Ethical Hacking

Credits 3 Lecture Hours 3

This course covers basic ethical hacking techniques also known as white hat hacking. It stresses the moral and legal issues about hacking and how these techniques can be used to defend against attacks as well as to perform authorized system security evaluation testing.

Prerequisites

Grade of C or better in ICS 171, or consent of instructor.

Course Outcomes
  • Demonstrate how to apply current cyber-attack, countermeasures and best practices using current cyber defense tools, methods and components.
  • Implement a defense incident response and recovery strategies.
  • Evaluate the moral and legal obligations of an ethical hacker.
  • Apply the knowledge gained in hardening systems to prevent or minimize attacks.

ICS 282: Computer Forensics

Credits 3 Lecture Hours 3

This course covers basic computer forensics including operating system diagnostics, the use of forensic toolkits to examine and validate computer activity and techniques for the proper collection, examination and preservation of forensic evidence.

Prerequisites

Grade of C or better in ICS 171, or consent of instructor.

Course Outcomes
  • Discuss the rules, laws, policies, and procedures that affect digital forensics.
  • Demonstrate the proper use of one or more common digital forensics tools.
  • Describe the steps in performing digital forensics from the initial recognition of an incident through the steps of evidence gathering, preservation and analysis, through the completion of legal proceedings.