Saint Xavier University Chicago Campus Residence Halls

Computer Science


Prerequisite/Corequisite Key

P = Course must be taken previously C = Course must be taken concurrently E = Course can be taken previously or concurrently
(RQ) = Required (RM) = Recommended  

CMPSC 112

Survey of Computer Science

3 credit hours

This course takes a breadth-first view of the discipline of computer science, focusing on what computers are, how they work, what they can and cannot do, and the impact they have on society. The course focuses on algorithms and how they are expressed through hardware, virtual machines, software and applications. This takes the course through many aspects of the discipline, including social impact. This course is required for all computer science and computer studies majors and minors. Students from other majors may take the course but applicability to their majors or minors may be determined only by the student's department.

CMPSC 160

Special Topics: Programming Competition Preparation

1 credit hour

Pre-requisite: P (RQ) CMPSC-203

Students will prepare for the Spring Programming Competitions. They will perform practice tests using questions from the previous competitions.

CMPSC 200

Virtual Worlds

4 credit hours

Pre-requisite: E (RQ) CMPLB-200

This course provides an introduction to programming using the Alice system, which provides a programming environment that supports objects, methods, functions, variables, parameters, recursion, arrays and events. Students will learn to write stories and storyboards and then drag-and-drop their objects into a 3-D micro world. Alice is provided free at http://www.alice.org.

CMPSC 201

Visual Basic Programming

4 credit hours

Pre-requisite: P (RQ) MATH-099, CMPSC-112

This course introduces the students to programming using the Visual Basic programming language. Students create simple programs that use the basic elements of programming: control structures, logical expressions, variables, arrays and screen, and file input and output. Students are evaluated on their ability to write programs. NOTE: Credit for this course will not be given to a student who has previously completed CMPSC 202.

CMPSC 202

Principles of Computer Programming I

4 credit hours

Pre-requisite: E (RQ) CMPLB-202 and P: CMPSC-112 MATH-112 (RQ)

This is the first programming course in the basic sequence for computer science majors. The course will introduce the student to problem solving, algorithm development and the concept of structured programming using Java. Assignment, selection, control statements, data types, functions and arrays will be studied. The student will design, code and debug a variety of application programs. Emphasis will be on programming techniques, style and documentation. Offered every fall semester.

CMPSC 203

Principles of Computer Programming II

4 credit hours

Pre-requisite: E (RQ) CMPLB-203 and P: CMPSC-202, MATH-200 (RQ)

Building on the techniques developed in CMPSC 202, the student will acquire a deeper understanding of structured programming concepts. Data structures such as arrays, stacks, queues and binary trees will be studied. Offered spring semester.

CMPSC 206

Web Applications I

3 credit hours

This course teaches basic website creation and maintenance including: the defining of a website, the development of pages and the use of text, graphics, hyperlinks, tables, forms, layered objects, frames, multimedia, templates, behaviors, style sheets and other features. As one of the course projects, students establish their own Web presence by developing a personal website.

CMPSC 235

Systems Analysis and Design

3 credit hours

Pre-requisite: P (RQ) CMPSC-112

This course covers the major aspects of the systems development life cycle. It includes such topics as data collection, cost analysis, file design, input/output design, project documentation, system testing and implementation.

CMPSC 255

Fundamentals of Computer Networking

3 credit hours

Pre-requisite: P (RQ) CMPSC-112 or consent of instructor

This is the first course in the Cisco CCNA Routing and Switching curriculum teaching students the architecture, structure, functions and components of the Internet and other computer networks. By the end of this course, students will be able to build simple LANS, perform basic configurations for routers and switches, and implement IP addressing schemes.

CMPSC 256

Operating Systems for Practioners

3 credit hours

Pre-requisite: P (RQ) CMPSC-255

This course introduces the student to hardware and software implementation issues surrounding operating systems. Topics include: file, memory, process, device and network management, the user interface and key features and implementations of popular operating systems such as Microsoft Windows Linux/UNIX and Android. NOTE: Credit for this course will NOT be given to a student who has previously completed CMPSC 301.

CMPSC 260

Topics in Computer Science (Credit varies)

1 credit hour

This course is provided for special topics in computer science of particular interest to faculty or students. Approval for course topic must be given by the department. Consent of the instructor is required.

CMPSC 266

Network Routing and Configuration

3 credit hours

Pre-requisite: P (RQ) CMPSC-255

This is the second course in the CCNA Routing and Switching curriculum teaching students how to configure a router and a switch for basic functionality. By the end of this course, students will be able to configure and troubleshoot routers and switches and resolve common issues with RIPv1, RIPng, single-area and multi-area OSPF, virtual LANs, and inter-VLAN routing.

CMPSC 267

Routing and Switching Protocols

3 credit hours

Pre-requisite: P (RQ) CMPSC-266

This is the third course in the CCNA Routing and Switching curriculum, teaching students how to configure routers and switches for advanced functionality. By the end of this course, students will be able to configure and troubleshoot routers and switches, and resolve common issues with OSPF, EIGRP, and STP.

CMPSC 268

WAN Technologies

3 credit hours

Pre-requisite: P (RQ) CMPSC-267

This is the fourth and final course in the CCNA Routing and Switching curriculum covering the WAN technologies and networks services employed by converged applications in a complex network. By the end of this course, students will be able to configure and troubleshoot network devices and resolve common issues with data link protocols.

CMPSC 280

Web Servers

3 credit hours

Pre-requisite: P (RQ) CMPSC-255

This course is concerned with the tools and techniques needed by a Web server administrator and the tasks they are expected to perform. Topics include the basics of the job, server installation, and the installation and configuration of various kinds of Web servers. Linux and Windows server environments will be used.

CMPSC 281

Introduction to Cyber Security

3 credit hours

This course provides a management overview of information security and a thorough treatment of the administration of information security. Over the past few years, technology has become a critical part of business operations of all sizes. While the threats to security are well-known, as are the general techniques for protecting information, management has not kept pace. Because so much is at stake, both personally and professionally, through the administration of computer security, this course will provide a necessary background for managing the complexities of that arena. (Formerly Web Security)

CMPSC 285

Digital Forensics

3 credit hours

Pre-requisite: P (RQ) CMPSC-280 or consent of instructor

This course introduces students to the techniques and tools of computer forensics investigations in civil and criminal venues. Topics include coverage of the latest technologies (including PDAs, cell phones, and thumb drives), civil procedures, criminal procedures, analysis techniques, reporting, professional responsibility and ethical considerations. Hands-on activities using the most common forensic tools are an integral part of the coursework.

CMPSC 301

Operating Systems

3 credit hours

Pre-requisite: P (RQ) CMPSC-345

The basic functions of operating systems have not changed over time, however, the expression of those functions has. This course looks at that critical layer of software and the mechanisms employed to provide a seamless interface between the user (or using application, in the case of an embedded system) and the underlying hardware of the computer device itself. Topics studied include: the history and evolution of computer operating systems, basic structure, process management, processor management, file management, memory management, input-output (or I/O) management, multimedia systems, multi-processor systems, and an in-depth look at the Linux and Windows Vista operating systems. NOTE: Credit for this course will NOT be given to a student who has previously completed CMPSC 256.

CMPSC 306

WWW Applications II

3 credit hours

Pre-requisite: P (RQ) CMPSC-206

This course introduces the student to several languages and software applications that extend the capabilities of basic HTML. Database-driven pages explored in this course include: Dynamic HTML, XHTML, XML, VBScripting and Active Server Pages.

CMPSC 309

Issues in Computing

3 credit hours

This course examines the social and ethical consequences of widespread computer usage in the context of society's increasing dependence on information and telecommunications technology. A survey of prominent and interesting ethical issues and problems is provided. Students will learn to use the tools of ethical analysis to address these problems and will identify issues of professional responsibility.

CMPSC 311

Data Structures and Algorithms

4 credit hours

Pre-requisite: P (RQ) CMPSC-203

This course expands on the coverage of data structures in CMPSC 203. Topics include a further examination of linked lists, recursion, graph representations and algorithms, trees, hashing and methods of external sorting.

CMPSC 321

Relational Database Theory and Design

4 credit hours

Pre-requisite: P (RQ) CMPSC-201 or CMPSC-202

This course introduces the student to the design and implementation of relational databases. Topics include: the relational model, entity-relationship modeling, normalization, Structured Query Language (SQL), database redesign, privacy and security.

CMPSC 345

Computer Systems and Organization

4 credit hours

Pre-requisite: P (RQ) CMPSC-202, MATH-200

This course introduces students to the internal architecture of computer systems. The course material addresses the relationships among a computer's hardware components, native instruction set, assembly language, and high-level languages. Basic concepts in computer systems and their effect on the performance of programs are introduced. Assembly language programming exercises are used to explore computer architecture.

CMPSC 350

Internship

1 to 12 credit hours

The internship opportunity is reserved for students who are employed in positions that involve computer science/studies knowledge and skills. We provide this opportunity to encourage students to gain practical, real-world experience that can enhance their understanding of the discipline and their potential as computer professionals. The student must apply for the academic credit at the time the internship takes place. See department chairperson for internship guidelines.

CMPSC 351

Algorithm Analysis and Design

3 credit hours

Pre-requisite: P (RQ) MATH-200, CMPSC-203

This course provides an introduction to different design and analysis approaches of computer algorithms. These include: searching, sorting and graph algorithms. Analytic approaches including proof of correctness and calculations of time and memory complexity are covered. The concept of distributed algorithms is introduced and compared to centralized algorithms.

CMPSC 360

Special Topics in Computer Science

2 credit hours

This course provides the student with an opportunity to study in detail one specific topic or area in computer science. The specific topic presented can be an area of particular interest to faculty or students, but must receive approval of the Department. Possible topics include object-oriented programming, distributed systems, queueing theory, artificial intelligence and parallel processing.

CMPSC 370

Independent Study

1 to 4 credit hours

Individual study projects for advanced students in computer science. Topic to be determined by instructor and student.

CMPSC 395

Computer Studies Capstone Course

3 credit hours

This is the capstone course for the computer studies major. Students will first study and then create a professional report on one of the most recent developments in the field. The report and presentation is expected to showcase senior level skills and knowledge. Special attention will be given to career strategies and preparation for the job search.