Information Systems Security

Bachelor of Science
Office Phone: (217) 206-6770
e Location: UHB 3100

Departmental Goals and Objectives

In the Bachelor of Science in Information Systems Security, housed in the Department of Computer Science, students will learn the fundamentals of information security including design and implementation of secure systems, security assessment, and computer security ethics. Students will utilize a variety of cutting edge technologies and labs in many hands-on learning activities. Following completion of the B.S. in Information Systems Security degree students will:

  1. exhibit understanding of the crucial concepts of information systems security;
  2. demonstrate and communicate best security practices and ethics; and
  3. be able to design and implement secure systems. The B.S. in ISS will be offered in both on-ground and online formats.

Graduates of the B.S. in Information Systems Security program will have the necessary skill set to enter into security-centric careers in network and computer administration, system analysis, computer support, and the like. In addition, students will be equipped to enter into related graduate level programs in Computer Science.

Students have access to an outstanding variety of computing systems including a Sun fileserver, additional UNIX-based computers, a parallel processing cluster, microcomputers, and a hands-on network configuration laboratory. UIS has received national recognition as a partner in the NSF Center for Systems Security and Information Assurance (CSSIA)

The UIS Computer Science Department is a Cisco Regional Networking Academy, serving as the instruction center for local academies at high schools, career centers, community colleges, and universities in central Illinois.

The Computer Science Department's curriculum is certified by the Committee of National Security Systems and the National Security Agency. The Computer Science Department has been designated as a National Center of Academic Excellence in Information Assurance Education. The National Security Agency (NSA) and the Department of Homeland Security (DHS) jointly sponsor the National Centers of Academic Excellence in Information Assurance Education (CAEIAE) Program.

Computer laboratories are open evenings and weekends; some systems are available 24 hours a day. On-campus students have high-speed, wired and wireless internet access.


The Computer Science Department assesses all students for communication skills and for knowledge of computer science. Assessment is intended to help students in their academic planning and their development as computer scientists.

The process begins in CSC 305 Entrance Assessment, which must be taken the first semester of enrollment as a Information Systems Security major. The entrance assessment is an examination of the student’s knowledge of the core areas of computer science. During this course, students begin a portfolio to which selected assignments will be added from each of the core computer science courses. The process concludes with CSC 405 Exit Assessment, which must be taken the final semester before graduation. The exit assessment helps students assess their progress and helps the faculty revise the curriculum.


Students have the opportunity to gain credit toward the degree through internships (IPL). This is an excellent opportunity for students to gain practical in-the-field or on-the-job experience. Placements have included state agencies, insurance companies, the SIU School of Medicine, computer companies, and other businesses throughout central Illinois. Online students can arrange for local placements.

The Bachelor's Degree


On acceptance, students are assigned a member of the Computer Science faculty to serve as their academic advisor. Before registering for the first time, the student should discuss an appropriate course of study with their academic advisor.

Grading Policy

CSC courses must be taken for a letter grade. A cumulative grade point average of 2.0 is required to graduate.

Transfer Courses

Transfer courses for the Information Systems Security BS are evaluated on a case-by-case basis and approved by Student Petition.

Degree Requirements

The core curriculum provides a strong foundation in information systems security. CSC electives are chosen in consultation with the student's academic advisor, to ensure depth of knowledge in topics of particular interest to the student.

Core Courses 1
CSC 305Entrance Assessment0
CSC 368Systems Programming Languages4
CSC 405Exit Assessment0
CSC 421Introduction to Computer Networks4
CSC 430Foundations of Network Security and Information Assurance4
CSC 431Network Security & Computer Ethics4
CSC 438Systems Security and Information Assurance Capstone4
CSC 465Windows Network Administration4
Elective Courses 2
CSC Information Systems Security Electives12
Total Hours36

Core courses must be taken at UIS. Exceptions may be requested.


Applicable CSC electives are numbered CSC 350 or higher and must be chosen in consultation with a CSC academic advisor.  Courses numbered CSC 410, CSC 442 or CSC courses that include “ECCE” in the title may not be counted as a ISS Elective. 

Students should consult with advisors in the major for specific guidance regarding completion of general education requirements.

Degree Plan*

*Listed below is a SUGGESTED Degree Plan.  For OFFICIAL program information, please refer to the catalog content above and consult your academic advisor.

Recommended Course Schedule - UIS Gen Ed

Year 1
Fall Hours
ENG 1012Rhetoric and College Writing3
Freshman Seminar (Humanities or Soc Sci)23
CSC 2251Computer Programming Concepts I3
MAT 113 or 1151Business Calculus4
CSC 3054Entrance Assessment0
ENG 1022College Writing and Civic Engagement3
CSC 2751Computer Programming Concepts II3
CSC 3022Discrete Structures4
Social Science23
Comparative Societies (Humanities or Soc Sci)23
Year 2
CSC 4214Introduction to Computer Networks4
COM 1122Oral Communication3
Social/Behavioral Science course23
Science without lab (Life or Physical Sci)23
Visual/Performing Arts Humanities Requirement23
CSC 4304Foundations of Network Security and Information Assurance4
Science with lab (Life or Physical Sci)24
Social/Behavioral Science course23
Humanities GE23
UNI 3013ECCE: Speakers Series1
Year 3
CSC 442 (ECCE U.S. Communities)4ECCE: Internet in American Life4
CSC 4314Network Security Computer Ethics4
ISS Elective44
MAT 1211 2Applied Statistics3
ISS Elective44
ECCE Global Awareness Elective4
CSC 3684Systems Programming Languages4
Lower or upper division elective OR minor course54
Year 4
CSC 4654Windows Network Administration4
ISS Elective34
ECCE Elective31
Upper-division elective OR minor course32
Lower or upper division elective OR minor course54
CSC 4384Systems Security and Information Assurance Capstone4
Lower or upper division elective OR minor course (Calc II recommended)54
Lower or upper division elective OR minor course53
Lower or upper division elective OR minor course53
CSC 4054Exit Assessment0
 Total Hours: 120

Math and CSC Courses Required in Addition to the Core CSC - 17 Hours


These Courses Fulfill General Education Requirements- 39 Hours
If Freshman Seminar = Humanities then Comparative Societies = Social Science and visa versa.


Students need to complete ECCEs in at least two of the three ECCE categories - U.S. Communities, Global Awareness, Engagement - per major requirements in addition to Speaker Series - 10 Hours.  You may repeat UNI 301 Speaker Series for one additional hour of ECCE (requires a petition of approval). You may choose to take IPL 300 for three hours and meet both the ECCE one hour and the two hours of general electives requirement.


ISS Major course work- 36 Hours


These courses may be lower or upper division electives or minor courses.  You will need to make sure you have at least 48 hours of upper division credits.

Online Degree

UIS offers the B.S. in Information Systems Security online. Applicants to the online degree program must have at least 30 semester hours of college-level transfer credit with a cumulative grade point average of at least 2.00 on a 4.00 scale. The online Computer Science degrees have the same requirements as the on-campus degrees, allowing students to actively participate in dynamic, diverse, and interactive online learning. The online format enables them to complete course work using the latest networked information technologies for increased interaction with educational resources, advisors, and materials. Applicants to either the online or on campus B.S. degree are accepted each spring and fall semester. The Computer Science Department may, at its own discretion, accept new students in other terms.

Degree Program Program Type Dept Application Materials and Admission Criteria Prerequisite Course Requirements Department ADM Review Dept Conditional Admits Dept Appeal Process
Information Systems Security BS On campus & Online Additional Application Materials:

*Formal application to the degree is required for admission.

*Submit a Statement of Purpose form:

*Students whose native language is not English must meet the Basic Entrance Requirement for English Language Proficiency

Online Only: Applicants to the online degree program must have at least 30 semester hours of college-level transfer credit with a cumulative grade point average of at least 2.00 on a 4.00 scale.
*Entrance requirements for transfer students are the equivalent of two semesters of Java programming and one semester each of business calculus or calculus, discrete or finite mathematics, and statistics.

(Students may take these entrance requirements at UIS)


CSC 225. Computer Programming Concepts I. 3 Hours.

Structured programming techniques. Emphasis on control structures, procedures, simple data types, and structured data types, including arrays, records, and files. Assigned problems require considerable time in the computer lab. Prior programming experience is recommended.

CSC 275. Computer Programming Concepts II. 3 Hours.

Extensive top-down design principles to solve non-trivial problems. Emphasis on advanced array applications, dynamic storage, and classes. Programming assignments include implementation of lists, stacks, queues, and recursions. Course Information: Prerequisite: CSC 225.

CSC 302. Discrete Structures. 4 Hours.

This course is designed to introduce the participants to the topics from discrete structures that are relevant to computer science. Topics covered are not limited to number systems, sets, logic, functions and relations, combinations, permutations, probability and statistics. Course Information: Prerequisite: C or better in college algebra. This course fulfills a general education requirement at UIS in the area of Mathematics (IAI Code: M1905).

CSC 305. Entrance Assessment. 0 Hours.

Evaluation of computer science knowledge on entering the program. CSC 305 must be taken during the student's first semester of enrollment. Course Information: Credit/No Credit grading only.

CSC 315. RoboEthics. 4 Hours.

An overview across time, continents and disciplines of robots and cyborgs, which are challenging the definition of "person". Students will read contemporary literature in computer science, philosophy and science fiction, creating original works that explore policies/perspectives on potential communities that include humans and robots.

CSC 316. ECCE: Wired Perspectives. 4 Hours.

This course examines global power inequities such as global North/South, first world/third world, developed and underdeveloped communities. It promotes knowledge and appreciation of the contributions of understudied and undervalued cultures in developing countries. It examines inequalities in resources in a global context. The vehicle this course uses in this discourse is the digital divide, the dichotomy between the global wired and the global tired. Course Information: This course fulfills an Engaged Citizenship Common Experience requirement at UIS in the area of Global Awareness.

CSC 317. Software Packages. 2 Hours.

A large part of computing today is accomplished through general programs designed to handle a wide range of problems rather than through programs designed to solve a specific problem. This course covers these general programs (software packages) from the viewpoint of the task to be performed and addresses how a specific package can be used to accomplish the job. Examples are taken from spreadsheet, database, and the Windows operating system. Considerable time in the computer lab is required.

CSC 318. Computer Literacy. 4 Hours.

Introduction to computers for personal and professional use. A course of general interest, which builds experience with personal computer software, including word processing, spreadsheet, database, and electronic communication applications; information retrieval from the Internet; and fundamental computer literacy. Considerable time in computer lab is required.

CSC 319. Computer Programming. 4 Hours.

An introduction to structured programming. Emphasis on control structures, simple data types including arrays, and creating simple Windows applications. Assigned problems require considerable time in the computer lab. For students who do not intend to major in computer science. Course Information: Prerequisite: CSC 318 or equivalent computer experience with Windows applications.

CSC 320. Introduction to HTML/Web Development. 4 Hours.

This course is designed to introduce a student to the principles of publishing on the World Wide Web (WWW). The course is designed to be platform independent and will enable a student to create "web pages" on any server on the Internet that runs a standard http server. The focus will be on the background code (Hyper-Text Markup Language) not on editors or programs that convert other types of documents into html.

CSC 321. Intermediate HTML Design and Usability. 4 Hours.

Introduces students to basic HTML programming and to a number HTML editors. Special emphasis will be made on the use of Dreamweaver, a Macromedia product, rated among the best HTML editors. Course Information: Prerequisite: CSC 320.

CSC 368. Systems Programming Languages. 4 Hours.

Design principles and implementation of systems programming languages. Topics include syntax data types, control structures, storage management. Four systems programming software language tools will be studied: shell scripts, Perl, PHP, SQL. Class activities and hands-on laboratories. Typical laboratories and class assignments, repetitive tasks, scheduled file maintenance, log file analysis, electronic administrator notification. Prerequisite: CSC 275.

CSC 376. Computer Organization. 4 Hours.

Introduction to elementary computer architecture and assembly/machine language. Emphasis on the fetch-execute cycle and CPU organization, binary information representations, combinational logic, and sequential circuits. An overview of the memory hierarchy and I/O interfaces included as time permits. Course Information: Prerequisite: CSC 275 and CSC 302. CSC 302 may be taken concurrently.

CSC 385. Data Structures and Algorithms. 4 Hours.

Object-oriented software design including sorting and searching algorithms. Implementation of trees, graphs, and other advanced data structures. Algorithm analysis of running times and storage requirements. Course Information: Prerequisite: CSC 302 and CSC 275.

CSC 387. Foundations of Computer Science. 4 Hours.

An overview of selected computer science topics: computers and society, software engineering, file structures, database structures, artificial intelligence, theory of computation, and human-computer interaction. Topics are selected to complement material in the core computer science curriculum. Course Information: Prerequisite: CSC 275.

CSC 388. Programming Languages. 4 Hours.

Design principles and implementation of computer programming languages. Topics include syntax, data types, control structures, storage management, and binding. Four programming language paradigms studied: imperative, object-oriented, functional, and logical. Languages studied may include C#, Smalltalk, Java, LISP, and Perl. Course Information: Prerequisite: CSC 385.

CSC 389. Introduction to Operating Systems. 4 Hours.

Assemblers, macro processing, loaders, time sharing operating system, process control, I/O, primary memory allocation, and virtual memory. Course Information: Prerequisite: CSC 275.

CSC 399. Tutorial. 1-12 Hours.

Intended to supplement, not supplant, regular course offerings. Students interested in a tutorial must secure the consent of the faculty member concerned before registration and submit any required documentation to him or her. Course Information: May be repeated to a maximum of 12 hours if topics vary.

CSC 405. Exit Assessment. 0 Hours.

Evaluation of computer science knowledge on graduation. Exit assessment helps students assess the body of knowledge they've attained and helps the program revise its curriculum. CSC 405 must be taken during the student's final semester before graduation. Course Information: Credit/No Credit grading only.

CSC 410. Current Topics for Professional Development. 1-4 Hours.

Includes materials on current topics that are identified as being on the cutting-edge of computer science. Descriptions change according to topic. CSC majors need prior approval to apply this course to their degree requirements. Course Information: May be repeated if topics vary. Students may register in more than one section per term.

CSC 421. Introduction to Computer Networks. 4 Hours.

Includes CCNA1 & CCNA2 Cisco Networking Academy. Emphasis on LANs, network design, virtual circuits, protocols, routing algorithms, network hardware devices. IP addressing. Labs.

CSC 422. Routing Configuration in WAN Environment. 4 Hours.

Includes CCNA3 & CCNA4 Cisco Networking Academy. Emphasis will be placed on configuring routers and switches to operate in a secure WAN environment. Includes configuring access lists, remote access and VPNs. Course Information: Prerequisite: CSC 421.

CSC 430. Foundations of Network Security and Information Assurance. 4 Hours.

Students learn to identify system resources at risk to malicious attacks. Network tools designed to detect and prevent unauthorized access are covered. Demonstrations of tools used to assess and identify vulnerability including penetration analysis, scanners and probes are covered. Case studies and exploit scenarios give students hands-on practice reducing network security threats. Course Information: Prerequisite: CSC 421.

CSC 431. Network Security & Computer Ethics. 4 Hours.

This course introduces the basics of network security while describing how the technical decisions associated with network security interact with the values of individuals, organizations, and society. The course includes methods of avoiding, detecting, and analyzing intrusions. Students will examine tradeoffs inherent in security policies, behaviors, and protocols.

CSC 432. Hardware/Firewall Security Implementation. 4 Hours.

The course focuses on overall security processes with particular emphasis on security policy design and management. This course also provides a survey of security technologies, products and solutions. Labs focus on firewall design, installation, configuration and maintenance of firewalls. Course Information: Prerequisite: CSC 421.

CSC 433. Intrusion Detection. 4 Hours.

Topics will include network and host based intrusion, detection, intrusion detection system implementation Schemes, IP packet analysis tools, schemes for analysis including rules and anomaly detection, and attack signatures. Several IDS tools will be explored by demonstration and exercises. These tools will include Windump, Ethereal, and Snort. Case reports of various recognized attacks will be studied.

CSC 436. Secure Programming. 4 Hours.

The course introduces the secure software development process including secure applications, writing secure code that can withstand attacks, and security testing and auditing. It focuses on the security issues a developer faces, common security vulnerabilities and flaws, and security threats. The course explains security principles, strategies, coding techniques, and tools that can help make code more resistant to attacks. Students will write and analyze code that demonstrates specific security development techniques. Course Information: Prerequisite: CSC 385.

CSC 438. Systems Security and Information Assurance Capstone. 4 Hours.

This is the capstone course for the Systems Security and Information Assurance concentration in the Computer Science Bachelor's Degree. This course will provide a broad look at Information Security, examining the eight security domains as defined by (ISC)2, the sanctioning organization governing the Certified Information Systems Security Professional (CISSP) certification for information security professionals. Course Information: CSC 421 and one additional security elective.

CSC 442. ECCE: Internet in American Life. 4 Hours.

With far-ranging influences on commerce, education, news, entertainment, information, and more, the Internet has had an enormous impact on American society over the past decade. This course examines that impact with an emphasis on planning and public policy. Course Information: This course fulfills an Engaged Citizenship Common Experience requirement at UIS in the area of U.S. Communities.

CSC 452. Web Design. 4 Hours.

Learn basic principles of web design and use HTML, XHTML, XML, CSS (Cascading Style Sheets), design and critic a variety of templates, etc. Topics include elements of good design, fonts, and typography, how to use color, graphics, images, multimedia formats, web layout basics, tackling web navigation, accessibility and usability, web design software, and learn HTML, XML, and CSS. Course Information: Prerequisites: CSC 275 or equivalent computer programming experience.

CSC 453. Web Development and Programming. 4 Hours.

Learn dynamic web page creation and server-side scripting that tailors the content toward the visitor and his or her preferences. A scripting language such as PHP will be taught to enable students to access databases for dynamic content. A comprehensive overview of the basics of PHP, covering important subjects such as control structures, operators, strings and string functions, arrays and array functions, predefined variables, I/O, cookies and sessions, and more. Course Information: Prerequisite: CSC 452.

CSC 454. Client-side Scripting. 4 Hours.

Learn to create Rich Internet Applications (RIAs) using JavaScript and XML (AJAX) in a new way to create fast, responsive user interfaces, and functionalities similar to windows desktop applications. Students will learn scripting in JavaScript and basics of XML. Topics will include XML basics, JavaScript basics, JavaScript objects, JavaScript cookies, JavaScript validations, XSLT, XML parsers, XML CSS, XML DOM, XML to HTML, and XML JavaScript. Course Information: Prerequisite: CSC 453.

CSC 463. Introduction to Distributed Computing. 4 Hours.

An introduction to the fundamental concepts and principles of distributed programming techniques. Topics include Java I/O, Interprocess Communications, Distributed Computing paradigms, TCP/IP, The Socket APL, client-server paradigm, Group Communication, Distributed Objects, Internet Applications, and advanced topics. Course Information: Prerequisite: CSC 385.

CSC 465. Windows Network Administration. 4 Hours.

The purpose of this course is to provide students with an organizational and technical look at network administration. Emphasis is placed on Microsoft Windows operating system. The laboratory assignments will involve a considerable amount of hands-on installation, account management, performance monitoring, security, troubleshooting. Course Information: Prerequisite: Familiarity with computer hardware/software.

CSC 470. Topics in Computer Science. 1-4 Hours.

Various topics; description changes according to topic offered. See course schedule for prerequisites. Course Information: May be repeated if topics vary. Students may register in more than one section per term.

CSC 471. Computer Ethics for Computing Professionals. 4 Hours.

Computer ethics explores the interaction between technical decisions and human values. We also study how computing and telecommunications impact society. This class is limited to computer science majors and students with equivalent backgrounds.

CSC 472. Introduction to Database Systems. 4 Hours.

Examine of file organizations and file access methods, as well as data redundancy. Studies various data models including relational, heretical, network, and object-oriented. Emphasis given to the relational data model SQL, the data definition and manipulation language for relational databases, is described, including database security. Course Information: Course is restricted to MS CSC majors and MS DAT majors only. Prerequisites: CSC 275. Same as DAT 472.

CSC 476. Introduction to Microprocessors and Computer Architecture. 4 Hours.

Analysis and synthesis of combinational and sequential circuits, counters, and decoders. Details of computer organization as applied to microcomputers. Time permitting: control unit design, microprogramming, I/O channels, and memory systems. Course Information: Prerequisite: CSC 376.

CSC 477. Usability Engineering. 4 Hours.

Provides an analysis of the science and art of graphical user interfaces. Topics will include quantitative methodologies, user interaction, design imperative. Requires extensive Visual Basic programming. Prerequisite: CSC 385.

CSC 478. Software Engineering Capstone. 4 Hours.

Study of the software life cycle with emphasis on design, documentation, and implementation. Team projects and technical communication skills are emphasized. Students should take this course within their last 12 hours of CSC course work. Course Information: Prerequisite: CSC 385.

CSC 479. Introduction to Artificial Intelligence. 4 Hours.

Problem solving methods, data representation and list processing, state-space search strategies, game playing programs, knowledge representation, logic and theorem proving, question answering systems, and natural language processing. Course Information: Prerequisite: CSC 385.

CSC 481. Introduction to Computer Graphics. 4 Hours.

Basic concepts, display hardware and techniques, raster graphics, 3-D graphics, and processing of pictorial information. Course Information: Prerequisite: CSC 275.

CSC 484. Introduction to Parallel Processing. 4 Hours.

Familiarizes students with the broad field of parallel computing and parallel algorithms, while giving hands-on experience with computing on a parallel architecture. Course Information: Prerequisite: CSC 376.

CSC 485. Object-Oriented Design. 4 Hours.

Study of object-oriented design and programming to solve problems. Topics include classes, inheritance, polymorphism, design notations, development environments, and a survey of languages. Java is used as the implementation language. Course Information: Prerequisite: CSC 385.

CSC 499. Tutorial. 1-12 Hours.

Intended to supplement, not supplant, regular course offerings. Students interested in a tutorial must secure the consent of the faculty member concerned before registration and submit any required documentation to him or her. Course Information: May be repeated to a maximum of 12 hours if topics vary.

CSC 501. Graduate Programming Practicum. 4 Hours.

The course teaches graduate object-oriented programming and development using Java. Students learn how to write, test, and debug advanced-level object oriented programs and how to implement various data structures using Java. Some top-down design principles are covered to solve non-trivial problems.

CSC 540. Graduate Research Seminar. 4 Hours.

Students will investigate research and writing techniques in the field of computer science. Students must produce a formal document that demonstrates they have attained an appropriate understanding of professional ethics and research skills required of IT professionals. CSC 540 serves as the master's closure exercise and must be taken for a letter grade. NOTE: Students who have NOT made satisfactory progress in CSC 540 will be assigned a grade lower than B- and will have to register for and retake the course. Students who have made satisfactory progress in CSC 540, but have not completed the final course document can petition the Department of Computer Science to complete the remaining document by enrolling in CSC 541 Graduate Research Seminar Continuing Enrollment (zero credit hours, one billable hour) for a maximum of two consecutive non-summer semesters.

CSC 541. Graduate Research Seminar Continuing Enrollment. 0 Hours.

Refer to NOTE in course description for CSC 540. Course Information: May be repeated for a maximum of two consecutive non-summer semesters.

CSC 550. Master's Project/Thesis. 4 Hours.

An individual study to demonstrate the ability to formulate, investigate, and analyze a problem and to report results. Written report and oral presentation are required. Guidelines for completing this requirement are available from the CSC program and must be consulted before any work is begun. NOTE: If the project/thesis is not completed during the initial four-hour enrollment, students must register for CSC 551 for zero credit hours (one billable hour) in all subsequent semesters until the project/thesis is completed. Course Information: Credit/No Credit grading only. May be repeated to a maximum of 4 hours. Prerequisite: Approval of the project/thesis supervisor.

CSC 551. Master's Project/Thesis Continuing Enrollment. 0 Hours.

Refer to NOTE in course description for CSC 550. Course Information: May be repeated.

CSC 560. Directed Graduate Research. 4 Hours.

Students will work under the supervision of a graduate faculty member as a member of a research team. Students will complete assigned readings, literature reviews, conduct research and report research results. Students must have approval of the graduate faculty member supervising the research to enroll in the course.

CSC 561. NoSQL Databases. 4 Hours.

Traditional data management techniques (schema-driven databases) do not meet the need to manage the varying storage techniques and technologies used for today?s data. NoSQL (Not only SQL) databases have emerged as a means of managing distributed, high-volume, complex data. This course will use a hands-on laboratory approach to explore the different types of NoSQL Databases. Course Information: Course is restricted to MS CSC majors and MS DAT majors only. Prerequisites: CSC 385 and CSC 472. Same as DAT 566.

CSC 562. Data Visualization. 4 Hours.

This course is designed to help students acquire the knowledge and skills to analyze information and, more importantly, to draw conclusions from analysis. This course is not about using advanced mathematics to solve problems. It?s about learning to use computer technology, especially visualization (graphs, histograms, pie charts), to look at and understand data in a more intuitive and visual manner. Course information: Course is restricted to MS CSC majors and MS DAT majors only. Prerequisites: CSC 385. Same as DAT 569.

CSC 563. Computer Cryptography and Digital Steganography. 4 Hours.

This course provides the fundamentals of modern cryptography and steganography. Cryptography is usually considered to be the art and science of scrambling a message in order to make it unreadable, whereas steganography is the art and science of hiding the very existence of the message. The course focuses on both theory and practice. Students will learn how to use Java to write cryptographic applications.

CSC 564. Computer Security. 4 Hours.

This course provides students with a background, foundation, and insight into the subject of Computer Security at a graduate level. It covers various attack techniques and defenses. The course surveys different threats to computer security and methods for preventing intrusions. We study how computer vulnerabilities arise and survey the controls that can reduce or block security.

CSC 570. Advanced Topics in Computer Systems. 1-4 Hours.

Topics vary. See course schedule for prerequisites. Course Information: May be repeated if topics vary. Students may register in more than one section per term.

CSC 572. Advanced Database Concepts. 4 Hours.

Study of the implementation of relational database management systems. Topics include database design algorithms, query implementation, execution and optimization, transaction processing, concurrency control, recovery, distributed query processing, and database security. One of the following advanced database topics will also be discussed: deductive databases, parallel databases, knowledge discovery/data mining, data warehousing. Course Information: Course is restricted to MS CSC majors and MS DAT majors only. Prerequisites: CSC 472. Same as DAT 565.

CSC 573. Data Mining. 4 Hours.

This course teaches advanced techniques for discovering hidden patterns in the rapidly growing data generated by businesses, science, web, and other sources. Focus is on the key tasks of data mining, including data preparation, classification, clustering, association rule mining, and evaluation. Course Information: Course is restricted to MS CSC majors and MS DAT majors only. Prerequisites: CSC 385. Same as DAT 551.

CSC 574. Distributed Computing. 4 Hours.

This course covers advanced topics in computer operating systems with a special emphasis on distributed systems. Topics include middleware, naming and directory services, security, remote method invocation, concurrency, transactions, replication, and message passing. Course Information: Prerequisite: CSC 389.

CSC 577. Software Testing and Reliability. 4 Hours.

Advanced and classic models of testing software are reviewed and critiqued. Current practice and novel theories of reliability are studied, using primary computer science research literature. Some automated testing tools will be used. Course Information: Prerequisite: CSC 478.

CSC 578. Software Engineering. 4 Hours.

Problem analysis, system requirements specification, system design, testing methodologies, quality assurance, software maintenance, and automated documentation systems. Team project involving the analysis and creation of a design specification for and formal presentation of a significant software project. Course Information: Prerequisite: CSC 478.

CSC 581. Computer Graphics. 4 Hours.

Lighting models, ray tracing, radiosity, texture mapping, and other advanced rendering techniques for creating highly realistic images of three-dimensional scenes. Contemporary and classic articles from the computer graphics literature are studied. Course Information: Prerequisite: CSC 481.

CSC 582. Design and Evaluation of User Interfaces. 4 Hours.

Structured approach for designing graphical user interfaces that are easy to use. Empirical evaluation techniques are used to verify that the software is easy to use. Course Information: Prerequisite: CSC 385.

CSC 583. Network Programming. 4 Hours.

A historical and technical study of network programming. Emphasis is placed on various network protocols and on the TCP/IP protocol in particular. Assignments involve writing client/server code for Unix in the Java programming language. Course Information: Prerequisite: A working knowledge of Unix and the ability to program in Java.

CSC 599. Tutorial. 1-12 Hours.

Intended to supplement, not supplant, regular course offerings. Students interested in a tutorial must secure the consent of the faculty member concerned before registration and submit any required documentation to him or her. Course Information: May be repeated to a maximum of 12 hours if topics vary.