Computer Science

This is an archived copy of the 2018-2019 catalog. To access the most recent version of the catalog, please visit

Department of Computer Science

The Computer Science program offers an undergraduate education that promotes lifelong intellectual growth and prepares students for professional careers and advanced study. The program is grounded in the principles, theories, and application of the science of computing with a special emphasis in the areas of Big Data Analytics and Software Development.

Students will develop the ability to effectively apply discipline knowledge to solve real-world problems, adapt as the field changes and make ethical decisions. The curriculum provides the foundations of team skills, and allows students to improve their interpersonal skills and professional attitudes. Students will have an opportunity to participate in an internship and in undergraduate research.


Sarmad A. Al Aloussi, Assistant Professor (2017), B.Sc., M.Sc., Baghdad University; Ph.D., University of Banking and Financial Services, Computer Information Systems, Amman Jordan

Elena Braynova, Department Chair, Professor (2003), M.S. State University of New York Buffalo; M.S.,Ph.D. Moscow State University Russia

Aparna Mahadev, Professor (1999), B.Sc.,M.Sc. University of Madras India; M.S. Indian Institute of Technology India; Ph.D. University of Waterloo Canada

Hemant Pendharkar, Professor (2001), B.S.,M.S. University of Bombay India; M.S.,Ph.D. University of New Hampshire

Karl R. Wurst, Professor (1999), B.S. Central Connecticut State University; M.S.,Ph.D. University of Connecticut


CS-101 Basics of Computer Science

LASC Categories: QR

Prerequisites: Familiarity with basic computer operations. Math placement code of 3 or above

A survey course that provides a foundation in computer science by presenting a practical and realistic understanding of the field.

Fall and Spring. 3 Credits

CS-120 Microcomputer Applications

LASC Categories: QR

Prerequisites: Familiarity with basic computer operations. Math placement code of 3 or above

Learning state-of-the-art application packages including but not limited to word processing, file and database management systems and spreadsheets.

Fall and Spring. 3 Credits

CS-124 Health Informatics

LASC Categories: QR

Prerequisites: Familiarity with basic computer operations. Math placement code of 3 or above.

Use of computers and information systems in health care. Databases and spreadsheets. electronic health records. [Credit will not be awarded for both CS-120 and CS-124.]

Every year. 3 Credits

CS-135 Programming for Non-CS Majors

LASC Categories: QR

Prerequisites: Familiarity with basic computer operations. Math placement code of 3 or above.

Introfuction to programming. Emphasis on practial skills, working with data sets, doing analysis and visualization. No prior programming experience required.

Every year. 3 Credits

CS-140 Introduction to Programming

Prerequisites or Corequisite: CS-101

Introduction to fundamental structures and concepts of Computer Science including object-oriented programming; three lecture hours and one two-hour laboratory.

Every year. 4 Credits

CS-155 Computer Networking and Security

LASC Categories: QR

This course covers network protocols and the Internet; computer security fundamentals.

Spring only and every year. 3 Credits

CS-161 Web Design Using HTML

Introduces concepts needed for creation, design and implementation of effective web pages. Latest versions of mark-up language(s) will be used.

Every year. 3 Credits

CS-165 Digital Forensics

Prerequisites: CS-155

Digital forensics investigation; data acquisition; processing crime and incident scenes; multiple operating systems and file fomats; digital forensics tools, analysis and validation.

Every year. 3 Credits

CS-193 Special Topics in Computer Science for First Year Students

LASC Categories: FYS

Introductory level course covering topics of special interest to first year students. Offered only as a First Year Seminar.

3 Credits

CS-225 Discrete Structures I

Prerequisites: MA 180 or math placement code 6 or above.

Asymptotic notation, sequences, recursions and methods to solve them, proof techniques, relations, functions, sets and their basic properties.

Every year. 3 Credits

CS-242 Data Structures

LASC Categories: QAC

Prerequisites: CS-140.
Prerequisites or Corequisite: Pre-requisite or co-requisite of CS-225.

Introduces time complexity and covers fundamental data structures: lists, stacks, ques, search trees , dictionaries, priority ques, B-trees and inverted files.

Every year. 3 Credits

CS-248 Algorithm Analysis

Prerequisites: CS-242
Prerequisites or Corequisite: CS-295.

Different algorithm design strategies, sorting, searching graph algorithms, parallel algorithms, algorithm complexity, turing machines, NP-hard and NP-complete problems.

Every year. 3 Credits

CS-254 Computer Organization and Architecture

LASC Categories: NLL

Prerequisites: CS-140 EN-102.
Corequisites: Pre-requisite or co-requisite of CS-295.

Combinational and sequential circuits, assembly language programming, digital computer architecture, instruction sets, addressing modes, memory hierarchies, I/O, and control circuits. Three lecture hours and two laboratory hours per week.

Every year. 4 Credits

CS-265 Database Applications

LASC Categories: QR

Prerequisites: Familiarity with basic computer operations. Math placement code of 3 or above.

This course introduces basic database concepts and teaches how to create a database; use SQL; and create database application. [Formerly CS 125 Database Software] Credit will not be awarded for both CS 265 and CS 286.

Spring only and every 2-3 years. 3 Credits

CS-282 Unix Systems Programming

Prerequisites: CS-242

Problem soling and software design using C; introduction to UNIX programming utilities and text manipulation; low-level system programming in UNIX and C.

Every year. 3 Credits

CS-286 Database Design and Applications

Prerequisites: CS-140

Covers relational databases; database design using ER model; query processing using SQL; other database models. Credit can not be awarded for both: CS 265 and CS 286.

Every year. 3 Credits

CS-295 Discrete Structures II

Prerequisites: CS-225

Logic, basic counting techniques, probabilities, basic graph theory.

Every year. 3 Credits

CS-297 Selected Topics in Computer Science

Topics of mutual interest to students and faculty.

1-4 Credits

CS-335 Networking and Web Security

Prerequisites: CS-282

This course covers web and security problems, solutions, and techniques. Encryption, worms, viruses, firewall, safe practices, etc. are covered.

Every 2-3 years. 3 Credits

CS-343 Software Construction, Design and Architecture

Prerequisites: CS-286 EN-252
Prerequisites or Corequisite: CS-248 and CS-348

Software construction techniques and tools, software architectures and frameworks, design patterns, object-oriented design and programming. efficiency, reliability and maintainability of software.

Every year. 3 Credits

CS-348 Software Process Management

Prerequisites: CS-282
Prerequisites or Corequisite: EN-252 and UR-230 and CM-110

Project management including planning, progress measurement, estimation, and risk assessment. Functional and non-functional requirements. Software licenses, contracts and intellectual property.

Every year. 3 Credits

CS-353 Information Organization, Management, and Retrieval

Prerequisites: CS-155 CS-242.
Prerequisites or Corequisite: Pre-requisite or co-requisite of CS-373.

The course introduces fundamental concepts, standards, technologies and methods for information organization, storage, management, retrieval and recovery.

Every year. 3 Credits

CS-373 Operating Systems

Prerequisites: CS-254 and CS-282

Hardware and Software as an integrated system; development of system software for process management, resource allocation, memory management and I/O processing. [Formerly CS 385 Operating Systems]

Every year. 3 Credits

CS-380 Systems Programming

The design and implementation of assemblers, linkers, loaders, editors, and high level translation software. Algorithms solving specific problems of a system program are investigated.

Other or on demand. 3 Credits

CS-383 Cloud, Parallel an Distributed Computing

Prerequisites: CS-348
Prerequisites or Corequisite: CS-373

The course introduces basics of Cloud Computing and fundamental computing technologies used for Big Data platforms such as Parallel, Distributed Computing.

Every year. 3 Credits

CS-405 Data Communications and Networking

Prerequisites: CS-373, EN-252 and CM-110.

Data transmission, encoding, interfacing, synchronization, data-link control, multiplexing, networking, circuit switching, packet switching, radio and satellite, local area networks, network access protocols.

Every 2-3 years. 3 Credits

CS-408 Directed Study: Computer Science

Directed study offers students, who because of unusual circumstances may be unable to register fro a course when offered, the opportunity to complete an existing course with an established syllabus under the direction and with agreement from a faculty member.

3 Credits

CS-443 Software Quality Assurance and Testing

Prerequisites: CS-348 and either MA-150 or MA-302

Requirements analysis and test plan design. Testing strategies and techniques. Test coverage using statistical techniques. Code reviews and insepctions.

Every year. 3 Credits

CS-448 Software Development Capstone

LASC Categories: CAP

Prerequisites: CS-343
Prerequisites or Corequisite: CS-373 and CS-443 as prereq or coreq.

Development of a significant software system, following appropriate project and team management techniques. Requirements, design, implementation, quality assurance, professional, social and ethical issues.

Every year. 3 Credits

CS-453 Data Mining

Prerequisites: CS-286 CS-248 CM-110 UR-230 Take MA-150 or MA-302;

Topics include data warehousing and mediation techniques; data mining meathods: rule-based learning; decision trees, association rules and sequence mining.

Every year. 3 Credits

CS-471 Artificial Intelligence

Prerequisites: CS-371 CS-242 EN-252

Introduction to central issues of constructing intelligence systems. Examines historical and future trends of AI intelligence.

Every 2-3 years. 3 Credits

CS-472 Robotics

Prerequisites: CS-254 CS-282

Design and implementation of robotic systems, snesors and sensing, effectors, mechanics, control startegies and architectures, hardware and software issues.

Every 2-3 years. 3 Credits

CS-483 Big Data Analytics Capstone

LASC Categories: CAP

Prerequisites: CS-453
Prerequisites or Corequisite: CS-383

The course introduces methods and techniques used for Big Data analysis. The course discusses Analytics tools for a variety of data applications and includes a major team project.

Every year. 3 Credits

CS-497 Selected Topics: Computer Science

Prerequisites: CS-282

Selection of topics of mutual interest to student and faculty.

Other or on demand. 1-6 Credits

CS-498 Internship: Computer Science

Prerequisites: 21 credit hours in Computer Science courses including CS-282

Working in and for an organization where skills can be tested in real situations in order to gain experience, increase knowledge in various functional areas, and establish important contacts with an organization.

Every year. 3 Credits

CS-499 Independent Study: Computer Science

Prerequisites: 18 credit hours in Computer Science including CS-282.

An opportunity for advanced students to examine topics not normally taught in other mathematics or computer courses. Geared to the interests of both the student and the instructor.

Every year. 1-6 Credits