Department of Computer and Information Sciences

Dr. Alberto LaCava, Chairperson

The Department of Computer and Information Sciences offers four programs leading towards the Bachelor of Science degree in Computer Science. Students may concentrate in Computer Information Systems, Cyber Security, Artificial Intelligence and Machine Learning or Computer Science. Transfer students who major in CS must complete a minimum of six CS and/or IS courses at the University for the Bachelor of Science degree. For students not majoring in Computer Science, we offer Minors in Computer Science and Cyber Security. For students majoring in Criminal Justice, the Department offers a concentration in Cyber Security and Computer Forensics.

Requirements for Computer Science Major/Computer Information Systems Option

Degree of Bachelor of Science

This option is designed for those who wish to become programmers or systems analysts. Application programming and business information systems are studied. Six of the required credits for the major count towards the Core Curriculum Requirements.

MA-123Elementary Calculus I 13
MA-124Elementary Calculus II 13
CS-177Intr to Computer Science & Cybersecurity3
CS/IS-180Introduction to Programming3
IS-195Information Technology Fundamentals3.00
CS-231Software Engineering3
CS-332Advanced Computing3
IS-410Total Business Info Systems3
CS-370Data Structures3
MA-212Elementary Statistics3
MA-214Mathematics of Finance3
MA-216Computer Mathematics3
MA-218Quantitative Methods for Business3
CS-499Capstone for Computer Science3
CS/IS-CS or IS Electives (IS-230 or higher OR CS-300 or higher) 26
Total Credits48
1

May count towards the Core Mathematics Requirement.

2

IS-295 Co-op may be counted as only one Information Science elective.

Special Note on Core Curriculum Requirements for Computer Science Major/Computer Information Systems Option

1

Majors in CS/CIS may not use CS or IS courses for the Core Natural Science Requirement.

Special Notes on Major Requirements for Computer Science Major/Computer Information Systems Option

1

A student must maintain a 2.0 average in the CS-231 and CS-332 sequence to continue as a computer science major.

2

CS/CIS majors may be eligible for a minor in mathematics.

3

CS/CIS majors are encouraged to study a commercially popular programming language
such as Python and/or Java.

Requirements for Computer Science Major/Cyber Security Option

Degree of Bachelor of Science

This option is designed for those who wish to learn the technology and security architecture that is necessary to help protect and defend information systems from cyber-attacks. 

MA-123Elementary Calculus I 13
MA-124Elementary Calculus II 13
MA-212Elementary Statistics3
CS-177Intr to Computer Science & Cybersecurity3
CS-190Secure Software Development3.00
CS-231Software Engineering3
CS-332Advanced Computing3
CS-260Information Technology Ethics3
CS-339Computer Architecture & Operating System3
IS-380Database and Data Administration3
IS-381Cyber Security Planning and Risk Mgmt3
IS-425Disaster Recovery/Business Continuity3
CS-489Network Technology Protocols & Defense3
CS-495Cryptology3
CS-496Cybersecurity and Digital Forensics Lab3
CS-499Capstone for Computer Science3
Total Credits48

Special Notes on Core Curriculum Requirements for Computer Science Major/Cyber Security Option

1

May count towards the Core Mathematics Requirement.

2

Majors in CS/Cyber Security may not use CS or IS courses for the Core Natural Science 
Requirement.

Special Note on Major Requirements for Computer Science Major/Cyber Security Option

1

A student must maintain a 2.0 average in the CS-231 and CS-332 sequence to continue as a computer science major.

Requirements for Computer Science Major/Artificial Intelligence and Machine Learning

Degree of Bachelor of Science

This option is designed for those who wish to learn the technology and architecture that is necessary to use Artificial Intelligence and Machine Learning methods in the computing disciplines.

MA-123Elementary Calculus I 13
MA-124Elementary Calculus II 13
MA-212Elementary Statistics3
CS-177Intr to Computer Science & Cybersecurity3
CS/IS-180Introduction to Programming3
CS-231Software Engineering3
CS-241Python Programming for Comp Scientists3
CS-332Advanced Computing3
CS-346Machine Learning I3.00
CS-370Data Structures3
CS/MA-337Statistical Computing With R3.00
CS-415Robotics Fundamentals and Programming3
CS-446Machine Learning II3.00
CS-470Introduction to Artificial Intelligence3
CS or IS Elective3
CS-499Capstone for Computer Science3
Total Credits48

Special Notes on Core Curriculum Requirements for Computer Science Major/Artificial Intelligence and Machine Learning Option

1

May count towards the Core Mathematics Requirement.

2

Majors in CS/Artificial Intelligence and Machine Learning may not use CS or IS courses for the Core Natural Science Requirement.

Special Note of Major Requirements for Computer Science Major/Artificial Intelligence and Machine Learning Option

1

A student must maintain a 2.0 average in the CS-231 and CS-332 sequence to continue as a computer science major.

Requirements for Computer Science Major/Computer Science Option

Degree of Bachelor of Science

This option is designed for those who wish to study the theory of programming. Any student who wishes to go to graduate school in Computer Science should consider taking this option.

Six or eight of the required credits for the major count towards the Core Curriculum Requirements.

MA-143Differential Calculus 14
MA-144Integral Calculus 14
CS-177Intr to Computer Science & Cybersecurity3
CS/IS-180Introduction to Programming3
CS-231Software Engineering3
CS-332Advanced Computing3
CS-339Computer Architecture & Operating System3
CS-355Found of Programming Systems3
CS-370Data Structures3
MA-247Introductory Linear Algebra3
MA-250Transition to Advanced Mathematics3
MA-273Multivariable Calculus I4
MA-335Probability Theory3
or MA-212 Elementary Statistics
Two Natural Science Laboratories 22
CS-499Capstone for Computer Science3
CS-CS Electives: choose 2 courses from CS-237 or CS-300-level6
CS/IS-CS/IS Electives: choose 2 courses from CS-300-level or IS-400-level6
Total Credits59
1

May count towards the Core Mathematics Requirement.

2

Taken with natural science courses for Core Requirements

Special Notes on Core Curriculum Requirements for Computer Science Major/Computer Science Option

1

Students who have taken MA-123 Elementary Calculus I/MA-124 Elementary Calculus II, may fulfill the requirement by taking MA-125 Intermediate Calculus. These courses may not be taken on a Pass/Fail basis.

2

Majors in CS/CS may not use CS or IS courses for the Core Natural Science Requirement. Laboratories must be taken with the two courses chosen to satisfy the Core Natural Science Requirement.

Special Notes on Major Requirements for Computer Science Major/Computer Science Option

1

A student must maintain a 2.0 average in the CS-231 and CS-232 sequence in order to continue as a computer science major.

2

CS/CS majors may be eligible for a minor in mathematics.

3

CS/CS  majors are encouraged to study a commercially popular programming language such as Visual BASIC and/or JAVA.

Requirements for Criminal Justice Major with a Concentration in Cyber Security and Computer Forensics

For details about this program see the Criminal Justice Department.

Requirements for Minor in Cyber Security

Students Majoring in Computer Science are not eligible for this minor

IS-381Cyber Security Planning and Risk Mgmt3
CS-489Network Technology Protocols & Defense3
CS-496Cybersecurity and Digital Forensics Lab3
CSCS Electives9
Total Credits18

Requirements for Minor in Computer Science

Students majoring in Computer Science are not eligible for this minor

CSCS Electives15
CS or IS CS or IS Elective3
Total Credits18

CS Courses

CS-150. Intro Computers & Information Processing. 3.00 Credits.

Study of computer systems including programming, hardware, software, information processing using business and scientific applications, robotics, and security. Emphasis on the theoretical as well as research and development aspects of computers. Students will work on assignments/projects aligned with their major and will develop web pages. Course Type(s): Stem.

CS-157. Ms Excel for Accounting and Business Env. 3.00 Credits.

Students will gain proficiency in Microsoft Excel for accounting and business environments. The course will cover understanding basic spreadsheet terminology and navigation including filters and sorts; basic and intermediate formulas such as Dsum, Vlookup, and Match; analytical tools such as PIVOT tables; and presentation skills such as formatting, graphs, and charts. This course will use a case study approach that will enable students to learn from sample client needs and constraints (for example, putting raw data into a format needed for client analysis). Upon completion of this course, students should have a strong proficiency in Excel that they can apply in a professional capacity.

CS-177. Intr to Computer Science & Cybersecurity. 3.00 Credits.

This course is an introduction to computer science and cybersecurity. The goal of the course is to teach basic principles and at the same time prepare students for a major in computer science/cybersecurity. Topics include: The von Neumann architecture, algorithms, data structures, hardware and software, application systems, programming, cyber security, information technology ethics, and data science.

CS-180. Introduction to Programming. 3.00 Credits.

This course will teach job-market driven programming languages. Students will construct web pages using HTML and JavaScript, then move to C++, and finally Python. By the end of the course students should understand the concepts, methodologies, and techniques used in programming, including compilation, testing, and debugging. Programming constructs include syntax, control statements, arrays, strings, objects, and event handlers.

CS-190. Secure Software Development. 3.00 Credits.

This is a programming course required for Cyber Security students. Students will learn how to write, test, and debug programs using secure programming techniques. They will learn how to identify key characteristics and design patterns for secure coding, and develop programs in a secure environment using the software development life cycle. Students demonstrate their knowledge through hands-on programs, exercises and case study assignments.

CS-231. Software Engineering. 3.00 Credits.

This course will teach students how to develop a software system from scratch by guiding them through the development process and giving them the fundamental principles of system development with object oriented technology. It will also introduce students to software development methodology, project management, and systems analysis and design as a problem-solving activity. Students will work with C++ and Python using control structures, functions, return statements, reference, arrays, and pointers. Data will be read from text files and databases. Prerequisites: CS/IS-180 OR CS-190 MA-101 OR MA-105 OR MA-123 OR MA-133 OR MA-143 OR MA-273.

CS-237. Java Programming. 3.00 Credits.

This course is an introduction to Java, object-oriented techniques, and Java applets for the World Wide Web. Java applications are introduced prior to applets so a student has a more thorough understanding of the programming process. Java applications are built from the beginning rather than having the user manipulate pre-written objects. Pre-requisite: CS/IS-180 Prerequisites: CS/IS-180 OR CS-190.

CS-241. Python Programming for Comp Scientists. 3.00 Credits.

Python programming and coding practice. Object-oriented concepts. Python use in Artificial Intelligence applications. Prerequisites: CS/IS-180 OR CS-190.

CS-260. Information Technology Ethics. 3.00 Credits.

This course addresses the assessment of ethical principles within the application of information technologies to produce and store data and disseminate and use information. It will define and discuss computer ethics within a historical, current and future perspective by dealing with ethical issues in the workplace, privacy and anonymity, property rights, professional responsibility and globalization from the viewpoint of the individual, business and government. Prerequisites: CS-150 OR CS-177 OR CS/IS-180 OR CS-190; COMPLETE 6 CREDITS: 1 COURSE FROM COURSES PL-130 PL-140 AND 1 COURSE FROM COURSES TH-110 TH-120; Course Type(s): Values.

CS-271. Decision Support Systems. 3.00 Credits.

Concepts of Decision Support Systems: Decision Support System technologies, operations research, systems analysis, decision analysis, DBMS, artificial intelligence. Decision Support System tools: data mining, data management, EXCEL. In-depth analysis of business applications, including ERP Systems, data warehouse systems and electronic commerce. Students will be required to complete a final project on designing a computer based decision support system. Prerequisites: CS-177 OR CS-180(12188) OR CS-190 OR BA-151 OR BA-155.

CS-295. Credited Internships. 3.00 Credits.

CS-298. Cyber Security Virtual Internship. 3.00 Credits.

In this course, students will become "cyber interns" and work in teams with course faculty, graduate assistants, and industry experts as mentors using the iQ4 online/cloud communication platform. The goal of the course is to enable students to analyze realistic case scenarios and identify the depth and breadth of cybersecurity from multiple perspectives. Students will focus on the interrelated dimensions of threats (which may include but are not limited to technical, procedural, legal, behavioral, skills/proficiencies) and the spectrum of constituent cyber domains/functional areas in which to identify solutions. The content for the course covers core competencies e.g., knowledge, skills, and abilities relating to the identification, detection, protection against, response to, and recovery from an insider threat including how to build and maintain communications with executives, peers and regulators. In addition, essential skills (e.g., teamwork and communications skills), which are required in the workforce. The assignments in the course are designed to assess both core competencies and essential (soft/professional) skills.

CS-299. Experiential Learning Internship. 3.00 Credits.

Depending on the topic, students will develop, test, and/or conduct ethical hacking on devices, games and/or other coded programming; students may also conduct computer laboratory research. Sections topics may include IoT Pentesting, Gaming Development, SIEM Splunk, CJ Digital Forensics, Cyber Security Research.

CS-317. C# Programming for Web-Based Application. 3.00 Credits.

The design and construction of Web-based applications using the C# programming language. Students will learn how to build, manage, and deploy a database driven Web site. Prerequisites: CS/IS-180 OR CS-190.

CS-320. Augmented Reality. 3.00 Credits.

This course covers the technical and experiential design foundation required for the implementation of immersive environments in current and future virtual, augmented and mixed reality platforms. The curriculum covers a wide range of literature and HCI concepts following the evolution of all supporting technologies including visual displays for VR, AR and MR, motion tracking, interactive 3D graphics, multimodal sensory integration, immersive audio, user interfaces, IoT, games and experience design.

CS-330. Data Structures & Algorithms With Python. 3.00 Credits.

Data structures are essential to storing and organizing data within applications. Selecting the correct data structure and algorithm, is significant in the performance of the application, especially as the volume of data increases. This course covers the following topics: arrays, sorting, stacks and queues, linked lists, recursion, trees, hash tables, heaps, and graphs. A significant part of this course involves actually writing Python programs that implement the above. Prerequisites: CS-241.

CS-332. Advanced Computing. 3.00 Credits.

This course will build on the CS180 and CS231 sequence. It will teach advanced concepts in job-market driven programming languages like Python, C++, PHP, Ruby, and Perl, and include the study of Data Center and Cloud Computing technology. Students will learn advanced object-oriented concepts, linked-lists, queues, stacks, maps, string processing and be able to read data from SQL Server databases. Prerequisites: CS-231.

CS-337. Statistical Computing With R. 3.00 Credits.

In this course students explore the fundamental principles of statistical computing in R. Learners will engage in topics such as the fundamentals of R, data types, matrices, data frames, control structures, input/output, libraries (e.g. ggplot2), visualizations, statistical inference, and simulations. Prerequisites: MA-212.

CS-339. Computer Architecture & Operating System. 3.00 Credits.

This course covers computer architecture and operating systems. From a computer architecture standpoint, we will study hardware components, gates/buses/memory, and their use in constructing adders, comparators and addressing schemes. We will also cover machine level representation of data, computer architecture and organization, assembly level machine organization, interfacing and communication, memory systems organization and architecture, functional organization, multiprocessing and alternative architectures, performance enhancements, and distributed architectures. From an operating systems standpoint, we will study privileged and non-privileged states, processes and threads (and their management), memory (real, virtual, and management), files systems, access controls (models and mechanisms), access control lists, virtualization/hypervisors, how does an OS protect itself from attack?, security design principles as applied to an OS, domain separation, process isolation, resource encapsulation, and least privilege. Prerequisites: CS-231 AND/OR CS-332.

CS-346. Machine Learning I. 3.00 Credits.

Machine learning concepts include neural network and data analysis using deep learning. Classification of images and object detection using industry standard open source machine learning platform. Programs will be written in Python within a cloud computing environment. Prerequisites: CS-231 OR CS-241.

CS-355. Found of Programming Systems. 3.00 Credits.

A comprehensive overview of the design and implementation of modern programming systems. Programming languages and compiling techniques, operating systems, database structures, artificial intelligence, and knowledge based systems are studied. Prerequisites: CS-231.

CS-370. Data Structures. 3.00 Credits.

This course provides students with an understanding of the basic abstract data types, associated operations and applying them to solve problems. Topics include: strings, lists, vectors, arrays, heaps, queues, stacks, buffers, searching and sorting, trees, and data formats. Prerequisites: CS-332 OR MA-123 OR MA-143.

CS-399. Cyber Crime: The Dark Side of the Web. 3.00 Credits.

In this course, students will become "cyber interns" and work in teams with course faculty and industry experts as mentors using the iQ4 online/cloud communication platform. The goal of the course is to enable students to analyze realistic case scenarios in fraud, cyber terrorism/warfare, extortion, cyber theft, and trafficking and identify the depth and breadth of cybersecurity from multiple perspectives. Students will focus on these types of threats: brute force attacks, ransomware, data breaches, illicit traffic, phishing, and denial of service. The content for the course covers core competencies e.g., knowledge, skills, and abilities relating to the identification, detection, protection against, response to, and recovery from cyber-attacks including how to build and maintain communications with executives, peers and regulators.

CS-415. Robotics Fundamentals and Programming. 3.00 Credits.

Introduction to parallel programming in Ada and Java. Students will write programs for cell phones and intelligent devices such as a robot. Additional course fee of $75. Prerequisites: CS-231 OR CS-237.

CS-446. Machine Learning II. 3.00 Credits.

Machine learning concepts include neural network and data analysis using deep learning. Classification of images and object detection using industry standard machine learning framework. Programs will be written in C# within an integrated development environment. Prerequisites: CS-346.

CS-470. Introduction to Artificial Intelligence. 3.00 Credits.

Knowledge representation, cognitive simulation, machine learning, natural language processing, network technology. Prerequisites: CS-370.

CS-489. Network Technology Protocols & Defense. 3.00 Credits.

In this course we will provide students with an understanding of the components in a network environment, their roles, and communication methods and the techniques that can be taken to protect network and communication assets from cyber threats. Topics include: network architectures/infrastructure/services/protocols (TCP/IP - v4 and v6, DNS, HTTP, SSL, TLS), network address translation and sub-netting, network analysis/troubleshooting, network evolution (change management, BYOD), remote and distributed management, implementing IDS/IPS, firewalls and VPNs , honeypots and honeynets, network monitoring and traffic analysis, minimizing exposure (attack surface and vectors), network access control (internal and external), DMZs / proxy servers, network hardening, mission assurance, network policy development and enforcement, network operational procedures, and network attacks (e.g., session hijacking, man-in-the-middle). Prerequisites: IS-380 OR IS-381.

CS-495. Cryptology. 3.00 Credits.

This course gives a historical introduction to Cryptology, the science of secret codes. It begins with the oldest recorded codes, taken from hieroglyphic engravings, and ends with the encryption schemes used to maintain privacy during Internet credit card transactions. Since secret codes are based on mathematical ideas, each new kind of encryption method leads in this course to the study of new mathematical ideas and results. The first part of the course deals with permutation-based codes: substitutional ciphers, transpositional codes, and Vigenere ciphers. In the second part of the course, the subject moves to bit stream encryption methods. These inlcude block cipher schemes such as the Data Encryption Standard (DES). Public key encryption is the subject of the final part of the course. We learn the mathematical underpinnings of Diffie-Hellman key exchange, RSA and Knapsack codes. Software packages and tools will also be studied. Prerequisites: IS-381.

CS-496. Cybersecurity and Digital Forensics Lab. 3.00 Credits.

This course is designed to provide students with hands-on experience with cyber security and digital forensics tools and the skills to apply forensics techniques throughout an investigation life cycle with a focus on complying with legal requirements. The course will accomplish its goals through lecture, classroom discussion, and a number of in-lab exercises and projects. Topics and assignments cover: network attacks, intrusion detection systems, digital forensics tools, legal compliance and applicable laws, affidavits , how to testify, case law, chain of custody procedures, digital investigations, E-discovery, authentication of evidence, metadata, root cause analysis, and using virtual machines for analysis. Additional course fee of $75. Prerequisites: IS-381 OR CS-495.

CS-499. Capstone for Computer Science. GPS Mapping - Credit.

The Capstone Course offers students the opportunity to integrate the knowledge acquired in preceding computer science and information system courses. Students work on projects specific to their Computer Science concentration. Team projects in software design, programming, and implementation will be assigned. Components that are emphasized include analysis and design, team dynamics, project management, documentation, verification and validation of implementation, and communication skill (oral and written). Final projects are to be evaluated by Department of Computer Science faculty. Students present their final projects. Example of project categories: -.

IS Courses

IS-195. Information Technology Fundamentals. 3.00 Credits.

This course is the first step towards an IT career, and opens a clear pathway to more advanced training steps. At its completion, the student will be able to demonstrate understanding of basic IT concepts, terminology, infrastructure, applications, software, software development concepts, database fundamentals, security, hardware, equipment and tools. At the same time, this course prepares the student for the IT Fundamentals + Certification Exam offered by CompTIA.

IS-235. Visual Basic. 3.00 Credits.

The design and construction of Windows-based applications using the Visual BASIC programming language. Design of GUI screens, writing code modules, drag and drop techniques, planning menus and dialogs. Prerequisites: CS-180 OR IS-180.

IS-377. Linux. 3.00 Credits.

Installation, configuration, and administration of the Linux operating system and related programs. File, user account, process management, Shell (bash) and Perl programming will be studied.

IS-380. Database and Data Administration. 3.00 Credits.

This course teaches students how database systems are used and managed, and the issues associated with protecting associated data assets. In addition, it will teach the methods to protect the confidentiality, integrity, and availability of data throughout the data life cycle. Topics include: relational databases, no-SQL databases, object based vs. object oriented, big data, Hadoop / Mongo DB / HBASE, data policies/quality/ ownership/warehousing, long term archival, data validation, data security (access control, encryption), database vulnerabilities, database topics/issues (indexing, inference, aggregation, polyinstantiation), hashing and encryption, database access controls (DAC, MAC, RBAC, Clark-Wilson), information flow between databases/servers and applications, database security models, security issues of inference and aggregation, and common DBMS vulnerabilities. Prerequisites: CS/IS-180 OR CS-190.

IS-381. Cyber Security Planning and Risk Mgmt. 3.00 Credits.

This course provides students with the ability to develop plans and processes for a holistic approach to cyber security for an organization. Topics include CBK, operational, tactical, strategic plans and management, security architecture, policies, standards, procedures, business continuity/disaster recovery, C-level functions, making cyber security a strategy (part of core organizational strategy), and change control. Prerequisites: CS-180 OR IS-180.

IS-410. Total Business Info Systems. 3.00 Credits.

In-depth analysis of business applications including enterprise resource planning and electronic commerce. Basic and advanced applications with emphasis on enterprise database management systems. Prerequisites: CS-231 OR IS-380.

IS-425. Disaster Recovery/Business Continuity. 3.00 Credits.

In this course, students will learn to identify vulnerabilities and implement appropriate countermeasures to mitigate risks. Techniques will be taught for creating a continuity plan and methodology for building an infrastructure that supports its effective implementation. Throughout this course, practical skills will be acquired through a series of interactive workshops and case studies. Students design and develop a disaster recovery plan. Prerequisites: IS-380 OR IS-381.

IS-451. Adv Web Page Development. 3.00 Credits.

Students will learn how to combine HTML, CSS and JavaScript to create dynamic and interactive Web Pages (DHTML). Students will design and implement Web Server applications in Perl/CGI, PHP, VBScript/ASP, Python, and XHTML. Prerequisites: CS-180 OR IS-251.

IS-490. Indep Study in Information Science. 3.00 Credits.

Under faculty supervision, independent study and research topics not covered in courses offered.