Computer Studies and Information Processing

In response to the impact of computer technology on communications and industry, CCRI offers various degree and certificate programs through the Computer Studies and Information Processing Department.

Associate in Science (A.S.) Degree Programs

Student Using ComputerThe Computer and Information Processing degree programs prepare students for careers in Computer Programming, Computer Support Specialist, Networking Technology, and Web Technologies.

Cybersecurity is one of the fastest-growing, high-demand fields of information technology and the workplace in general. The Cybersecurity A.S. degree program offers students the opportunity to acquire the skills needed to compete for these jobs and to prepare for a career in cybersecurity. The program will also provide a strong foundation for students intending to pursue a bachelor’s degree in the field as well as an opportunity for industry professionals to update their skills to meet the demands of their employers.

Certificate Programs

The department offers certificate programs in the areas of Computer Support Technician, Cyber Defense, Data Analytics, Network Software, Network Support TechnicianNetworking Technician, Pathway to Cyber ReadinessSoftware Development, and Web Technologies

Joint Admissions Agreement (JAA) Transfer Degrees

The JAA transfer degrees in computer science are designed to provide students with foundational knowledge and skills in programming, data structures, and algorithms, preparing them to transfer to Rhode Island College (RIC) or the University of Rhode Island (URI) for advanced studies in the field.

Courses

CMP Networking Virtual Tech (CNVT)

CNVT 1000  - Computer Repair A+ Hardware  
(3 Credits)  
This course covers the installation, configuration and troubleshooting of hardware components. The material is presented to prepare the student for the A+ Core Hardware examination.

Lecture: 2 hours, Lab: 2 hours
  
CNVT 1010  - Computer Repair A+ Software  
(3 Credits)  
This course covers installation, configuration and troubleshooting of software/operating system components. The material is presented to prepare the student for the A+ OS Technologies examination.

Lecture: 2 hours, Lab: 2 hours
  
CNVT 1810  - Networking 1  
(3 Credits)  
Introduction to Networks covers the architecture, structure, functions and components of the Internet and other computer networks. Students achieve a basic understanding of how networks operate and how to build simple Local Area Networks (LAN), perform basic configurations for routers and switches, and implement Internet Protocol (IP).

Lecture: 2 hours, Lab: 2 hours
  
CNVT 1820  - Networking 2  
(3 Credits)  
Switching, Routing, and Wireless Essentials (SRWE) covers the architecture, components, and operations of routers and switches in small networks and introduces wireless local area networks (WLAN) and security concepts. Students learn how to configure and troubleshoot routers and switches for advanced functionality using security best practices and resolve common issues with protocols in both IPv4 and IPv6 networks.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): CNVT 1810
  
CNVT 1830  - Networking 3  
(3 Credits)  
Describes the architecture, components, operations, and security to scale for large, complex networks, including Wide Area Network (WAN) technologies. Emphasizes network security concepts and introduces network virtualization and automation. Students will learn how to configure advanced routing and switching protocols; identify threats and enhance network security; implement IPv4 Access Control Lists (ACLs); configure Network Address Translation (NAT) services; explain virtualization, software defined networking, and automation.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): CNVT 1820
  
CNVT 2030  - Core Networking  
(5 Credits)  
Cisco Certified Network Professional (CCNP) Enterprise: Core Networking (ENCOR) provides students with a broad scope of architectural understanding and implementation skills required by enterprise networks. The course covers switching, routing, wireless, and related security topics along with the technologies that support software-defined, programmable networks. (Spring only)

Lecture: 3 hours, Lab: 5 hours
  
Prerequisite(s): CNVT 1830
  
CNVT 2100  - Basic Voice Over Internet Protocol (VoIP)  
(3 Credits)  
This course concentrates on the transmission of Voice Over Internet Protocol (VoIP). Focus is on the transmission of voice over high-speed network connections and quality of service issues and solutions associated with this transmission. VoIP technology, signaling standards, network configuration and queuing are addressed. (Fall only)

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): CNVT 1830 (may be taken concurrently)
  
CNVT 2200  - Network Security Hardware  
(4 Credits)  
The Security course provides a next step for individuals who want to enhance their networking skill set to help meet the growing demand for network security professionals. Course introduces the core security concepts and skills needed for the installation, troubleshooting, and monitoring of network devices to maintain the integrity, confidentiality, and availability of data and devices.

Lecture: 3 hours, Lab: 3 hours
  
Prerequisite(s): CNVT 1820
  
CNVT 2310  - Desktop Technician  
(3 Credits)  
In this course, students learn how to install and support desktop applications running under the Microsoft Windows operating system. Applications include the complete Office Suite, Outlook and Internet Explorer. Students learn how to set up standard and custom configurations for these applications. They also learn how to manage security issues and respond to breaches. Troubleshooting problems associated with these applications, including connectivity issues, also are explored. (Fall Only)

Lecture: 2 hours, Lab: 2 hours
  
CNVT 2400  - Foundations of Cloud Computing  
(3 Credits)  
This course is for individuals who want to develop a fundamental understanding of the Amazon Web Services (AWS) Cloud, independent of any specific technical role. You will learn about AWS Cloud concepts, core AWS services, security, architecture, pricing, and support to build students AWS Cloud knowledge. This course will also help students prepare for the AWS Certified Cloud Practitioner exam.

Lecture: 2 hours, Lab: 2 hours
  
CNVT 2410  - Cloud Architecture & Security  
(3 Credits)  
This course covers the fundamentals of building Information Technology (IT) infrastructure. The course is designed to teach architects how to optimize cloud services and how these services fit into cloud-based solutions. Architectural solutions can differ depending on industry, type of applications, and size of business. This course emphasizes best practices and recommends various design patterns to help students think through the process of architecting optimal IT solutions. It also presents case studies throughout the course. Students will build a variety of infrastructures via a guided, hands-on approach.

Lecture: 2 hours, Lab: 2 hours
  

Computer Science (COMP)

COMP 1200  - Database Design & Management  
(3 Credits)  
This course is an introduction to database theory and database design. Emphasis on database terminology and the roots of database theory will prepare students to utilize data modeling techniques including Entity Relationship Design and Normalization to create a database environment. Structured Query Language (SQL) is used to illustrate techniques for maintaining and working with a database. Finally, the concept of Concurrency Control will be introduced to discuss the management of a database in a distributed/multi-user environment.

Lecture: 2 hours, Lab: 2 hours
  
COMP 1230  - Systems Analysis and Design^  
(4 Credits)  
This course serves as a capstone course and offers an introduction to concepts, methodology, and techniques used in business-systems analysis and the design of computerized business systems. A project-team approach is used to solve a case study with an end user.

Lecture: 3 hours, Lab: 2 hours
  
COMP 2430  - Operating Systems  
(4 Credits)  
This course covers the structure and components of operating systems. Topics include controlling system resources, interface concepts, multiprogramming, networks and command language techniques of current operating systems. Laboratory assignments provide application of these principles. (Fall only)

Lecture: 3 hours, Lab: 2 hours
  
COMP 2500  - Cybersecurity Practicum/Capstone Course^  
(3 Credits)  
The Cybersecurity Practicum/Capstone course provides “hands on” experience to promote development of important skills. Weekly meetings with the course instructor will review key program topics. To complete the course, the student is required to spend an average of 10 hours per week of field work under the guidance of industry professionals in order to apply the accumulation of program knowledge in a real world setting. The student will be required to produce a report relating to the work experience and how it is connected to the content of this program. This class also has an on-campus meeting requirement which will be used to develop a portfolio identifying the experiences the student has been exposed to in the field. Students will keep a working journal during the semester to help assess the progress of their experience.

Lecture: 1 hour, Other: 9 hours
  
Prerequisite(s): CNVT 1830 (may be taken concurrently) and COMI 2037
  

Computer Studies & Information Processing (COMI)

COMI 1050  - Survey of Computer Studies  
(3 Credits)  
Computer science is a broad field that touches every aspect of our lives. In this course, you will learn about current specializations within computer science for which CCRI has degree programs. You will explore these areas through hands-on labs and learn about real-world applications and employment opportunities.

Lecture: 2 hours, Lab: 2 hours
  
COMI 1100  - Introduction to Computers  
(3 Credits)  
This computer literacy course provides a comprehensive introduction to the principles of computers and information processing. Students are introduced to the operation and terminology of computer systems as well as certain selected application software packages such as word processing, spreadsheets, and presentation software.

Lecture: 2 hours, Lab: 2 hours
  
COMI 1150  - Programming Concepts  
(3 Credits)  
This course introduces important concepts and skills necessary for computer programming. Emphasis is on structured programming techniques and top-down design.

Lecture: 2 hours, Lab: 2 hours
  
COMI 1170  - Scripting for System Administration  
(3 Credits)  
This course introduces the use of scripting languages for system administration, automation, and security. Most of the work and learning takes place in hands-on lab exercises on virtual machines using a "learn by example" model where students can examine and analyze example scripts as the basis for creating their own scripts to accomplish lab goals and tasks. Scripting languages such as BASH, PowerShell, and Python are used to accomplish and automate common system administration tasks. Scripts are developed on both Linux and Windows platforms to illustrate similarities and differences in scripting languages and environments.

Lecture: 2 hours, Lab: 2 hours
  
COMI 1215  - Programming in C++  
(3 Credits)  
This course introduces the C++ programming language. Topics include conditionals, repetition structures, functions, pointers and reference types, file handling, security, and object-oriented design.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1150 or COMI 1225 or COMI 1510 or COMI 2040
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 1225  - Programming in C#  
(3 Credits)  
This course covers the fundamentals of software development using Microsoft’s Visual Studio C# object-orientated programming language. Data Structures, Methods, Classes, Decision Making, Iteration and Arrays are covered.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1150 or COMI 1215 or COMI 1510 or COMI 2040
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 1240  - Object-Oriented Programming  
(3 Credits)  
This course introduces students to the fundamentals of designing and coding object-oriented programs. Basic topics such as objects, classes and class inheritance are discussed. Students write programs using one of the object-oriented languages.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1150 or COMI 1215 or COMI 1225 or COMI 1510 or COMI 2040
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 1260  - Introduction to SQL  
(3 Credits)  
This course offers a foundation in the fundamentals of Structured Query Language (SQL). Particular attention is devoted to the use of ANSI-Standard SQL to construct and manipulate database objects. Students create database tables, work with Functions and Operators, and generate SQL scripts to extract and manipulate data from the database. (Spring only)

Lecture: 2 hours, Lab: 2 hours
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 1300  - Introduction to Data Analytics  
(3 Credits)  
This course provides an introduction to the concepts and procedures in Data Analytics. The course introduces students to the underlying skills required in the collection, manipulation, and analysis of data needed to begin the process of reporting and creating visualizations used in Data Analytics. An overview of data collection, cleansing, and manipulation of data for analysis and reporting are introduced and reviewed. Emphasis is placed on the tools used for statistical analysis and visualization such as: Excel, PowerBI, and Tableau.

Lecture: 2 hours, Lab: 2 hours
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 1350  - Data Analytics Programming  
(3 Credits)  
This course provides students with the fundamental skills required to effectively manipulate and visualize data. The course covers the topics of structuring data, descriptive statistics, machine learning algorithms, and visualization methods used in Data Analytics. Emphasis is placed on using a statistical programming language. (Spring only)

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1150 or COMI 1300 or COMI 1260
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 1450  - WINDOWS Operating System  
(3 Credits)  
This course familiarizes students with the Windows operating system. Basic and advanced features of Windows are demonstrated. Students explore topics in system diagnostics and troubleshooting, networking, configuration, customization, and commonly used software tools as well as learning about new developments in Windows. (Spring only)

Lecture: 2 hours, Lab: 2 hours
  
COMI 1510  - Java Programming  
(3 Credits)  
This course introduces students to topics in programming and software design using the Java programming language. Specific topics reflect current technologies and might include an introduction to object-oriented program design, data analysis, and search and sort algorithms.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1150 or COMI 1215 or COMI 1225 or COMI 1240 or COMI 2040
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 1750  - Web Development 1  
(3 Credits)  
This course provides an in-depth introduction to Hypertext Markup Language version 5 (HTML 5) and Cascading Style Sheets version 3 (CSS 3) emphasizing conformance to W3C (World Wide Web Consortium) specifications. Students begin by creating simple web pages and progress to include images, hyperlinks, tables, web forms, animations, and transitions. A portfolio website will be created, including examples of attempts at cloning existing websites.

Lecture: 2 hours, Lab: 2 hours
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 1770  - Web Development 2  
(3 Credits)  
This course provides an in-depth introduction to a variety of technologies used in modern web development. Building on a base of Hypertext Markup Language version 5 (HTML 5) and Cascading Style Sheets version 3 (CSS 3), students will explore JavaScript, JQuery and related technologies for building dynamic web sites. Students will also be introduced to server-side scripting and best practices for web hosting. (Spring only)

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1750
  
COMI 1800  - Computer Networking Software Linux  
(3 Credits)  
This course presents the administration of a LINUX network. Topics include installing, using, administering, and maintaining a LINUX network. This course prepares students for the CompTIA Linux+ certification.

Lecture: 2 hours, Lab: 2 hours
  
COMI 1840  - Microsoft Windows Server  
(3 Credits)  
This course presents the terminology and operating principles of Microsoft Windows server software. Students learn how to use, install and maintain Microsoft Windows networking software.

Lecture: 2 hours, Lab: 2 hours
  
COMI 2010  - Client-Side Scripting Languages  
(3 Credits)  
This course introduces the use of scripting languages for client-side website development, with an emphasis on JavaScript and related technologies.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1150
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 2015  - Introduction to Microsoft Project  
(1 Credit)  
This module introduces students to project management software, an essential tool used by most information technology environments. Upon completion of this course, students can create and analyze projects using Microsoft Project Manager.

Lecture: 2 hours, Lab: 2 hours
  
COMI 2020  - Network Security Software Fundamentals  
(3 Credits)  
This course introduces students to networking security, a critical knowledge point for technology professionals. This course provides students with introductory concepts and technical skills needed to create and maintain a secure network environment. (Fall only)

Lecture: 2 hours, Lab: 2 hours
  
COMI 2031  - Computer Support: Concepts  
(3 Credits)  
This course introduces students to basic technical concepts, functions and support systems. (Fall only)

Lecture: 2 hours, Lab: 2 hours
  
COMI 2033  - Computer Support: Network and Virtual Machine  
(3 Credits)  
This course covers information on basic networks, network components, how to build networks, and how to create different virtual machines. The material presented helps prepare the student for the Network+ examination. (Spring only)

Lecture: 2 hours, Lab: 2 hours
  
COMI 2035  - Introduction to Computer Forensics  
(3 Credits)  
This course starts with the basics of computer technology to build a foundation for understanding where evidence can be found. It introduces students to the technology and procedures of acquiring and analyzing digital evidence taken from computers. This course also exposes students to the software being used in the industry.

Lecture: 2 hours, Lab: 2 hours
  
COMI 2036  - Introduction to Computer Ethics  
(3 Credits)  
This course explores the ethical impact of computer technology on the world, as well as the rules and regulations that ensure the proper use of technology. Internet crime, privacy protection and first amendment rights that protect our freedoms in cyberspace are closely examined.

Lecture: 2 hours, Lab: 2 hours
  
COMI 2037  - Foundations of Cybersecurity  
(3 Credits)  
This course introduces students to the opportunity that exists in the cybersecurity field. Topics such as certified ethical hacking, cyber threats and vulnerabilities and cryptography are introduced.

Lecture: 2 hours, Lab: 2 hours
  
COMI 2038  - Ethical Hacking  
(3 Credits)  
This course is an introduction to hacking tools, techniques, and incident handling. Topics of instruction include: the evolution of hacking and penetration testing; the basics of cryptology for information security; footprinting; vulnerability scanning and exploit; wireless, web, and database attacks; malware and system exploit; traffic analysis; incident response; and defensive technologies and controls. In this course, the students will learn how to discover vulnerabilities, how to attack and defend systems, how to respond to attacks, and how to identify and design controls to prevent future attacks. This course prepares students to pass the EC-Council Certified Ethical Hacker certification exam. (Spring only)

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): CNVT 1820 or COMI 1800 or COMI 2037
  
COMI 2040  - Beginning Game Programming  
(3 Credits)  
This course will introduce the student to game development and the beginning principles of game programming.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1150 or COMI 1215 or COMI 1225 or COMI 1510
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 2225  - Advanced Programming in C#  
(3 Credits)  
This course introduces the student to advanced topics in programming and software design using Microsoft’s C# programming language. Topics covered include classes, abstract classes, inheritance, ADO.Net data driven applications using a database, ASP.Net for Web applications, collections, and file streams.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1225
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 2510  - Advanced Java Programming  
(3 Credits)  
This course introduces students to advanced topics in object-oriented programming and software design in Java and UML. Specific topics reflect current technologies and might include graphical user interfaces and the event loop, software testing and security, and recursion, among others.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 1510
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 2520  - Data Structures and Algorithms  
(3 Credits)  
This course introduces the student to data structures, algorithm design, and space and time complexity analysis. Topics include common data structures such as linked lists, stacks, queues, binary trees, searching and sorting algorithms, maps, and hash tables, and techniques of run-time complexity analysis such a Big O notation.

Lecture: 3 hours, Lab: 1 hour
  
Prerequisite(s): COMI 2510 or COMI 2225
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 2530  - Introduction to Software Engineering^  
(4 Credits)  
This course introduces students to important concepts in software engineering. Students will learn how to take a project through all stages of the Software Development Life Cycle, including requirements analysis and implementation. Topics may include Unified Modeling Language (UML), Design Patterns, Version Control Systems, Agile, Validation/Correctness, and developing an understanding of current best practices in software engineering.

Lecture: 3 hours, Lab: 2 hours
  
Prerequisite(s): COMI 2510 (may be taken concurrently) or COMI 2225
  
Course completes the following requirements:
Computer Programming Rqmt
  
COMI 2900  - Data Analytics Internship^  
(3 Credits)  
The opportunity to implement the skills and knowledge learned in the classroom through “hands on” experience in a business setting is a critical aspect of gaining a thorough understand of how Data Analytics is utilized. To complete the course, the student is required to spend an average of 10 hours per week of field work under the guidance of industry professionals. This work experience will constitute the practicum and capstone for the program. The student will be required to produce a portfolio relating to the work experience and how it is connected to the content of this program. Students will keep a working journal during the semester to help assess the progress of their experience. (Spring only)

Lecture: 2 hours, Other: 10 hours
  
Prerequisite(s): COMI 1350 (may be taken concurrently)
  

Cybersecurity (CYBR)

CYBR 1100  - Defending External Threats  
(3 Credits)  
This course focuses on techniques, considered preventative in nature, which are used to manage and protect networking devices from external attacks. This course utilizes hands-on virtual labs which allow students to examine sophisticated devices such as Adaptive Security Appliance (ASA) firewalls and to explore how these devices may be used to control access to resources. We will also explore methods to test, audit, and analyze the outcomes of a cyber-attack.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): COMI 2037 and CNVT 1830
  
CYBR 1200  - Defending Internal Threats  
(3 Credits)  
This course focuses on techniques, considered preventative in nature, which are used to manage and protect networking devices from internal attacks. This course utilizes hands-on virtual labs which allow students to examine sophisticated devices such as Adaptive Security Appliance (ASA) firewalls and to explore how these devices may be used to control access to resources. We will also explore methods to test, audit, and analyze the outcomes of a cyber-attack.

Lecture: 2 hours, Lab: 2 hours
  
Prerequisite(s): CNVT 1830 and COMI 2037