Computer Science

Bachelor of Science in Computer Science

The Computer Science Department also offers the Bachelor of Science in Information Systems Security
Undergraduate Minor
Master of Science
Graduate Certificates – 2

csc.uis.edu/
Email: csc@uis.edu
Office Phone: (217) 206-6770
Office Location: UHB 3100

Departmental Goals and Objectives

The Bachelor of Science in Computer Science degree is designed to provide students with a strong foundation in computer science and experience in mastering problem-solving skills relevant to the business, scientific, and public sectors.

Graduates of the Bachelor of Science in Computer Science degree program have been successful in earning advanced degrees and in pursuing careers in research and application-oriented positions in business, industry, government, and education. The diversity of course offerings and rigorous degree requirements ensure that B.S. in Computer Science graduates acquire the knowledge necessary to support their career goals, including the breadth of knowledge required to pursue advanced computing degrees. Students will become proficient in programming, software testing and analysis; learn about the design principles and implementation of programming languages, elementary computer architecture and organization, reduced instruction set computing, and operating systems; and complete a software engineering project that requires them to participate in all phases of the software life cycle. The B.S. in Computer Science is offered in both on ground and online formats.

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) www.cssia.org/.

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.

Assessment

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

Internships

Students have the opportunity to gain credit toward the degree through Internships and Prior Learning (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 in Computer Science

Advising

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 Computer Science BS are evaluated on a case-by-case basis and approved by Student Petition.

Degree Requirements

The core curriculum provides a strong foundation in computer science. 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 405Exit Assessment0
CSC 376Computer Organization4
CSC 385Data Structures and Algorithms4
CSC 387Foundations of Computer Science4
CSC 389Introduction to Operating Systems4
CSC 388Programming Languages4
CSC 478Software Engineering Capstone4
Elective Courses 2
CSC Computer Science Software Electives12
Total Hours36
1

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

2

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 CSC 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.

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
 Hours13
Spring  
ENG 1022College Writing and Civic Engagement3
CSC 2751Computer Programming Concepts II3
CSC 3021Discrete Structures4
Social Science23
Comparative Societies (Humanities or Soc Sci)23
 Hours16
Year 2
Fall  
CSC 3854Data Structures and Algorithms4
COM 1122Oral Communication3
Social/Behavioral Science course23
Science without lab (Life or Physical Sci)23
Visual/Performing Arts Humanities Requirement23
 Hours16
Spring  
CSC 3874Foundations of Computer Science4
Science with lab (Life or Physical Sci)24
Social/Behavioral Science course23
Humanities GE23
UNI 3013ECCE: Speakers Series1
 Hours15
Year 3
Fall  
CSC 442 (ECCE U.S. Communities)4ECCE: Internet in American Life4
CSC 3764Computer Organization4
CSC Elective44
MAT 1211Applied Statistics3
 Hours15
Spring  
CSC 315 (ECCE Global Awareness)3RoboEthics4
CSC Elective44
CSC 3884Programming Languages4
Lower or upper division elective OR minor course54
 Hours16
Year 4
Fall  
CSC 3894Introduction to Operating Systems4
ECCE Elective31
Upper-division elective OR minor course32
CSC Elective44
Lower or upper division elective OR minor course54
 Hours15
Spring  
CSC 4784Software Engineering 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
 Hours14
 Total Hours: 120
1

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

2

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

3

Students need to complete ECCE in at least 2 of the 3 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 1 additional hour of ECCE (requires a petition of approval). You may choose to take IPL 300 for 3 hours and meet both the ECCE 1 hour and the 2 hours of general electives requirement.

4

CSC Major Course work- 36 Hours

5

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 Computer Science, the B.S. in Information Systems Security and the M.S. in Computer Science 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 online 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.

Computer Science Minor

A minor in Computer Science is designed for students who wish to develop a working knowledge of computing that will allow them to apply effective computing techniques and computational problem-solving skills in a variety of contexts. It is useful for students with virtually any academic major, including accountancy, business administration, clinical laboratory science, economics, health care, management, and others. A working knowledge of computers allows people to apply computer techniques in their careers and to introduce effective, computer-based methods.

Appropriate CSC electives for the minor are numbered 350 or higher and must be chosen in consultation with a CSC academic advisor. CSC courses must be taken for a letter grade.  Courses numbered CSC 410, CSC 442 or CSC courses that include “ECCE” in the title may not be counted toward the minor.

Transfer Courses

Transfer courses for the Computer Science Minor are evaluated on a case-by-case basis and approved by Student Petition.

Course Requirements
CSC 302Discrete Structures4
or MAT 302 Discrete Mathematics
or MAT 114 Finite Mathematics and Its Applications
CSC 225Computer Programming Concepts I3
CSC 275Computer Programming Concepts II3
CSC Electives 112
Total Hours22
1

Prior approval by CSC Advisor or Department Head required.  Applicable CSC electives are numbered CSC 350 or higher and must be chosen in consultation with a CSC academic advisor.  CSC courses must be taken for a letter grade.  Courses numbered CSC 410, CSC 442 or CSC courses that include “ECCE” in the title may not be counted toward the minor.

 
Degree Program Program Type Dept Application Materials and Admission Criteria Prerequisite Course Requirements Department ADM Review Dept Conditional Admits Dept Appeal Process
Computer Science BSOn campus & Online*Formal application to the degree is required for admission.


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

Online Only: Submit Statement of Purpose Form found at https://illinois.edu/fb/sec/8834440/
*Two semesters Java programming (CSC 225 and CSC 275 or equivalents)

*One semester each of business calculus or calculus, discrete structures or discrete mathematics or finite mathematics

*One semester of statistics

(Students may take these entrance requirements at UIS)
N/AOn Campus: N/A; Online: YesN/A

Courses

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.

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 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 511. Fundamental Concepts of Networks for Teachers. 4 Hours.

The purpose of this course is to provide teachers with a working knowledge of how to install and teach the first semester of the Cisco Networking Academy On-line Curriculum. The first semester curriculum focuses on fundamental concepts of networks. Emphasis is placed on the OSI model, IP addressing, addresses resolution protocols, networking media, topologies, cabling and network management.

CSC 512. Fundamental Concepts of Routing for Teachers. 2 Hours.

The purpose of this course is to provide teachers with a working knowledge of how to install and teach the second semester of the Cisco Networking Academy On-line Curriculum. The second semester curriculum focuses on fundamental concepts of network routers. Emphasis is placed on the OSI model, WAN's, routing and using a router, router components, router configuration, IOS, TCP/IP, IP addressing and routing protocols.

CSC 513. Advanced Concepts of Networks and Routing for Teachers. 2 Hours.

The purpose of this course is to provide teachers with a working knowledge of how to install and teach semesters three and four of the Cisco Networking Academy On-line Curriculum. The curriculum for semesters three and four focuses on advanced concepts of networks and routers. Emphasis is placed on router configuration, configuring routers for IPX, managing network traffic with access lists, Wide Are Networking, WAN protocols, X25, frame relay, point-to-point and ISDN.

CSC 514. IT Essentials I For Teachers. 3 Hours.

The purpose of this course is to provide teachers with a working knowledge of how to install and teach the first course in a two course sequence on IT Essentials as part of the Cisco Academy On-line Curriculum. The first course of the curriculum focuses on fundamental concepts of computer hardware and software. Emphasis is placed on developing a working knowledge of the hardware components of a computer and their functionality. In the class the teachers taking the class will learn how to teach the topics listed in the attached course outline to their students. Some laboratory activities include trouble shooting, computer hardware and software and peripherals including various types of disk drives, video cards, and printers.

CSC 515. IT Essentials II For Teachers. 3 Hours.

The purpose of this course is to provide teachers with a working knowledge of how to install and teach the second course in a two course sequence on IT Essentials as part of the Cisco Networking Academy On-line Curriculum. The first course of the curriculum focuses on fundamental concepts of computer hardware and software. This second course focuses on network operating systems. Emphasis is placed on developing a working knowledge of the network operating systems and network security. In the class the teachers taking the class will learn how to teach the topics listed in the attached course outline to their students. Some laboratory activities include installing Microsoft based operating systems including Windows 2000 and XP and the free Unix based network operating system Linux. Other laboratory activities include trouble shooting network and security related problems.

CSC 521. IT Security and Data Assurance I for Teachers. 3 Hours.

Provides a comprehensive view of policy and practices used to identify the resources at risk to malicious attacks or natural disasters and the results. Surveys viruses and effective anti-virus prevention policies. Will include use and demonstration of several instruments used to assess vulnerability including penetration analysis, scanners, and probes. Will also use case studies to identify when an institution should look to outside consultants for assessment and vulnerability testing. Course Information: Restricted to Online Graduate Certificate In Information Assurance.

CSC 522. IT Security and Data Assurance II Access Control Systems and Methodology for Teachers. 3 Hours.

Provides a comprehensive examination of a multi-vendor approach to access control and management of an enterprise network. Examines directory services, file security, single logon solutions and database security. Examines a holistic approach to data protection and privacy. Introduces the deployment of access management protocols including TACACS+, Radius, and Kerberos. Other topics examined include auditing, and device monitoring using SNMP and RMON. Course Information: Restricted to Online Graduate Certificate In Information Assurance.

CSC 523. Computer Forensics for Teachers. 3 Hours.

Deals with the preservation, identification, extraction, documentation and interpretation of computer data. Topics covered include evidence handling, chain of custody, collection, preservation, identification and recovery of computer data. Course Information: Restricted to Online Graduate Certificate In Information Assurance.

CSC 524. Information Assurance System Design and Analysis for Teachers. 3 Hours.

The capstone design course for the Graduate Certificate in Information Assurance. Emphasizes a group approach to information assurance system design and data collection. Cohort groups will be required to develop a comprehensive plan for protecting systems against intrusion and for collecting evidence from systems that have been intruded upon. The plan will include operational policies and procedures. Students are also required to implement the plan using tools including TACACS+, Radius, Kerberos, encryption software, and software tools used in evidence collection. Course Information: Restricted to Online Graduate Certificate on Information Assurance.

CSC 525. Information Assurance Graduate Portfolio. 3 Hours.

Participants in the Graduate Certificate in Information Assurance must complete a comprehensive portfolio. The portfolio will document their experiences with the certificate program and how they plan to incorporate the topics covered in the certificate program into the courses they teach. The portfolio will document how program participants have mastered the material covered in each course. Guidelines for completing the requirement are available at csc.uis.edu/ and should be consulted by the certificate program participants. Course Information: Restricted to Online Graduate Information Assurance.

CSC 526. Security Awareness for Teachers. 1 Hour.

This short course is designed to provide an overview of the consequences of information assurance and privacy for the user of information systems. The course provides a practical consideration of all aspects of network security. Course topics include legal aspects of information privacy, security awareness, and roles and responsibilities of end users. Examines several case studies that will illustrate the types of problems that can occur if good systems security measures are not followed. Course Information: Restricted to Online Graduate Certificate in Systems Security.

CSC 527. Network Security I for Teachers. 3 Hours.

Introduction to Network Security course focusing on the overall security processes with particular emphasis on security policy design and management. This course will also provide a survey of security technologies, products and solutions. Includes hands-on exercises focusing on firewall design, installation, configuration, & maintenance AAA implementation using routers and firewalls. Virtual Private Networks will also be introduced using routers and firewalls. Course Information: Restricted to Online Graduate Certificate in Systems Security.

CSC 528. Network Security II for Teachers. 3 Hours.

This course provides an introduction to the knowledge and skills needed to describe, configure, verify and manage IPSec features in VPN solutions. Also provides a multi-vendor solution to VPN design. Examination of both VBPN client and server products will prepare students to deploy VPN technologies in both site-to-site and client-to-site configurations. Surveys many of the encryption technologies including : PKI, IPSEC and #DES. Digital certificates and certificate authorities are introduced in this course. The course will also emphasize intrusion detection systems, a systematic approach to perimeter security. Course Information: Restricted to Online Graduate Certificate in Systems Security.

CSC 529. Emerging Technologies Wireless Networks for Teachers. 3 Hours.

Provides an introduction to wireless local area networks. Instruction will focus on the design, planning, implementation, operation and troubleshooting of wireless networks. It covers a comprehensive overview of technologies, security, and design best practices with particular hands-on skills. Course Information: Restricted to Online Graduate Certificate in Systems Security.

CSC 530. Security Design for Teachers. 3 Hours.

This capstone design course for the Graduate Certificate in Systems Security emphasizes a group approach to security systems design. Student cohort groups will be required to develop a comprehensive security plan based on British Standard 7799. The plans will include operational policies and procedures. Students are also required to design a secure enterprise network including multi-vendor solutions. They will use hardware and software tools to implement firewalls, email system protection, virtual private network management protocol, and remote monitoring. Course Information: Restricted to Online Graduate Certificate in Systems Security.

CSC 531. Security Graduate Portfolio. 3 Hours.

Participants in the Graduate Certificate in Systems Security program must complete a comprehensive portfolio. The portfolio will document their experiences with the certificate program and how they plan to incorporate the topics covered in the certificate program into the courses they teach. The portfolio will document how program participants have mastered the material covered in each course. Guidelines for completing the requirement are available at csc.uis.edu/ and should be consulted by the certificate program participants. Course Information: Restricted to Online Graduate Certificate in Systems Security.

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.