Computer Science
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.
Faculty
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
Courses
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
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