Computer & Information Science (CIS)

Courses

CIS 0822. Technological Horizons: Information Technology in the 21st Century. 3 Credit Hours.

This single semester course hopes to equip students with critical consciousness around information technologies. The course is designed with the presumption that living and working with 21st Century technologies requires not only vocational skills but also theoretical grounding. Key themes such as "Computational Thinking" or "21st Century Economics and Global Communication" embed an introduction to highly impactful technologies within a discussion of their historical, economic, and cultural contexts, highlighting the importance and impact information and communication technologies have on the students' lives today. Throughout the course, virtual coding lab will give students hands-on, practical experience with the computational thinking that underlies the many technologies addressed. By requiring all students to be exposed to a multi-faceted and rigorous understanding of computational thinking, societal and cultural issues raised by technology, critical and creative thinking, data and information analysis, along with some basic programming, Temple University can prepare them to thrive in a technological world.

Course Attributes: GS

Repeatability: This course may not be repeated for additional credits.

CIS 0823. Math for a Digital World. 4 Credit Hours.

This course is typically offered in Fall, Spring, Summer I and Summer II.

How can I tell if an e-mail message is really from my bank? If I do online banking, can other people see the information? Does playing the lottery make sense? Does it make sense to draw for an inside straight? How can polling results differ so much from the election --- or do they? Sometimes the winner of an election in the U.S. gets much less than 50% of the vote. Would it make sense to have a run-off in such cases? How long will the world's oil last, assuming that we use more each year? How long will a million dollars last you, assuming it earns interest until you spend it? If you bought your text online, could someone tap into the Internet and get your credit card number when it's transmitted? Why does the VIN on your car have so many digits? NOTE: (1)This course fulfills the Quantitative Literacy (GQ) requirement for students under GenEd and a Quantitative Reasoning (QA or QB) requirement for students under Core. (2) Duplicate Course: Students cannot receive credit for CIS 0823/0923 if they have successfully completed MATH 0823/0923.

Course Attributes: GQ

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 0701 to 0702| Required Courses:1|Minimum Grade of C-|May not be taken concurrently
OR MATH 0800 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC3 Y|May not be taken concurrently
OR MC4 Y|May not be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C-|May be taken concurrently
OR STT2 Y|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May be taken concurrently
OR STAT 1902|Minimum Grade of C-|May be taken concurrently
OR MC3A Y|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 0835. Cyberspace & Society. 3 Credit Hours.

This course is typically offered in Fall, Spring, Summer I and Summer II.

This course provides students with an understanding of the underlying foundations of technology that have an impact on their lives and integrates those principles with real-world activities. It promotes information fluency by giving students an understanding of the foundational concepts from which the technology is derived and helping them to develop higher-level intellectual capabilities for applying the technology. The class is broken into three sections - technology principles, technology's impact in society and labs. It is the combination of these three sections that will enable students to understand the foundation and the implementation of technology in their daily lives. Class lectures incorporating a myriad of digital technologies including computer hardware, readings, labs and student discussions will be utilized to integrate the application of technology and the impact facing society. NOTE: (1) Duplicate Course: No credit for students who have taken CIS 1055 (C055), 1955 (H095) or 0935. (2) This course fulfills a Science & Technology (GS) requirement for students under GenEd and Science & Technology Second Level (SB) for students under Core.

Course Attributes: GS

Repeatability: This course may not be repeated for additional credits.

CIS 0923. Honors Math for a Digital World. 4 Credit Hours.

This course is typically offered in Fall.

How can I tell if an e-mail message is really from my bank? If I do online banking, can other people see the information? Does playing the lottery make sense? Does it make sense to draw for an inside straight? How can polling results differ so much from the election --- or do they? Sometimes the winner of an election in the U.S. gets much less than 50% of the vote. Would it make sense to have a run-off in such cases? How long will the world's oil last, assuming that we use more each year? How long will a million dollars last you, assuming it earns interest until you spend it? If you bought your text online, could someone tap into the Internet and get your credit card number when it's transmitted? Why does the VIN on your car have so many digits? NOTE: (1) This is an Honors course. (2) This course fulfills the Quantitative Literacy (GQ) requirement for students under GenEd and a Quantitative Reasoning (QA or QB) requirement for students under Core. (3) Duplicate Course: Students cannot receive credit for CIS 0823/0923 if they have successfully completed MATH 0823/0923.

Cohort Restrictions: Must be enrolled in one of the following Cohorts: SCHONORS, UHONORS, UHONORSTR

Course Attributes: GQ, HO

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 0701 to 0702| Required Courses:1|Minimum Grade of C-|May not be taken concurrently
OR MATH 0800 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC3 Y|May not be taken concurrently
OR MC4 Y|May not be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C-|May be taken concurrently
OR STT2 Y|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May be taken concurrently
OR STAT 1902|Minimum Grade of C-|May be taken concurrently
OR MC3A Y|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 0935. Honors Cyberspace & Society. 3 Credit Hours.

This course is typically offered in Fall and Spring.

This course provides students with an understanding of the underlying principles of technology that have an impact on their lives and how those principles are related to real-world activities. The course promotes information fluency by giving students an understanding of the foundational concepts on which the technology is derived and helping them to develop higher-level intellectual capabilities for applying the technology. The class is broken into three equal sections - technology, ethics and virtual labs. It is the combination of these three sections that will enable students to understand the foundation and the implementation of technology in their daily lives. Class lectures, readings, virtual labs and student discussions will be utilized to integrate the application of technology with social and ethical issues facing society. As examples, discussions might include: What is the impact of the Internet on intellectual property? How far can government surveillance go to detect criminal behavior without reducing our civil liberties? How can vulnerable groups be protected from predators, scam artists, and identity theft? Is it ethical to download free music and video from the Internet? NOTE: (1) Duplicate Course: No credit for students who have taken CIS 1055 (C055), 1955 (H095) or 0835. (2) This course fulfills a Science & Technology (GS) requirement for students under GenEd and Science & Technology Second Level (SB) for students under Core. (3) This is an Honors course.

Cohort Restrictions: Must be enrolled in one of the following Cohorts: SCHONORS, UHONORS, UHONORSTR

Course Attributes: GS, HO

Repeatability: This course may not be repeated for additional credits.

CIS 1001. Introduction to Academics in Computer Science. 1 Credit Hour.

This course is typically offered in Fall and Spring.

Students will be introduced to the field of computing, including potential career opportunities, the Computer & Information Sciences department and its resources, the departmental faculty, and the Computer Science degree programs, as well as the opportunities for internships and research. There will be guest lectures by Computer & Information Sciences faculty, students and alumni, demonstrations of computing technology, and discussions to illustrate the interdisciplinary nature of Computer Science and Information Science and Technology. NOTE: This is a required course for all Computer Science and Information Science and Technology majors. It is also recommended for undecided students looking for a major.

Repeatability: This course may not be repeated for additional credits.

CIS 1006. Informatics for Scientists. 2 to 3 Credit Hours.

This course is not offered every year.

This course introduces students to the interdisciplinary nature of science and shows how the use of computational tools facilitates better understanding and improvements in research and technology. The applications will be at the intersection of biological and computer sciences, using basic probabilistic/machine learning techniques to address biological problems and mine data sets including topics such as genome sequencing, drug screening, and DNA micro-arrays.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 0701 to 0702| Required Courses:1|Minimum Grade of C-|May not be taken concurrently
OR MATH 0800 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC3 Y|May not be taken concurrently
OR MC4 Y|May not be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C-|May be taken concurrently
OR STT2 Y|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May be taken concurrently
OR STAT 1902|Minimum Grade of C-|May be taken concurrently
OR MC3A Y|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 1048. Introduction to IS&T. 3 Credit Hours.

This course is typically offered in Fall and Spring.

This course introduces students to the field of Information Systems Technology and outlines the material covered throughout the entire IS&T Program at Temple. The course addresses the three core issues: 1) Information (the basic science of data encoding, transmission and storage); 2) People (the interactions among technologies, users, institutions, and regulations; and 3) Technology (the design and operation of basic information technology devices). The course will be conducted as lectures and case studies where the students will learn how information flows in organizations, how data is stored and processed and how we can use technology to help people and organizations to perform efficiently. Students will work in teams to analyze scenarios and propose solutions by applying analytic techniques and theories covered in the course. Examples and cases will be drawn from a range of domains including: high tech, medical, business and government. Emphasis will be placed on writing proper reports and presentations. NOTE: For Information Science and Technology Majors. It is also recommended for undecided students looking for a major.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 1021|Minimum Grade of C-|May not be taken concurrently
OR MATH 1022 to 3080| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C-|May be taken concurrently
OR STT2 Y|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May be taken concurrently
OR STAT 1902|Minimum Grade of C-|May be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 1049. Comp Tools Competency. 1 Credit Hour.

Repeatability: This course may not be repeated for additional credits.

CIS 1051. Introduction to Problem Solving and Programming in Python. 4 Credit Hours.

This course is typically offered in Spring.

This course introduces computer programming using Python, a computer language which is widely used in industry, scientific research, game programming and web applications. Students will solve programming problems of these fields in an intuitive way, using procedural programming constructs such as loops, branching structures, and functions. Students will write programs that are testable (using assertions) and maintainable (using good programming style, naming conventions, indentation, and comments). This course is a good introduction for students who want to explore Python programming, and for beginners who feel that they need extra preparation for CIS 1068 Program Design and Abstraction (object oriented java).

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 1021|Minimum Grade of C|May not be taken concurrently
OR MATH 1022 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR MA03 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May not be taken concurrently
OR STAT 1902|Minimum Grade of C-|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 1052. Introduction to Web Technology and Programming. 4 Credit Hours.

This course is typically offered in Fall and Spring.

This course is designed to introduce students with no programming experience to the programming languages and techniques associated with the World Wide Web. The course will introduce web-based media-rich programming tools for creating interactive web pages. Basic animation programming is also introduced with an emphasis on media-rich content creation, distribution and tracking capabilities.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 0701 to 0702| Required Courses:1|Minimum Grade of C-|May not be taken concurrently
OR MATH 0800 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC3 Y|May not be taken concurrently
OR MC4 Y|May not be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C-|May be taken concurrently
OR STT2 Y|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May be taken concurrently
OR STAT 1902|Minimum Grade of C-|May be taken concurrently
OR MC3A Y|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 1053. Programming in Matlab. 4 Credit Hours.

This course is typically offered in Fall, Spring and Summer I.

Introduces students to computers and computer programming. Topics covered include the general characteristics of computers, techniques of problem solving and algorithm specifications, and the debugging and testing of computer programs in Matlab. NOTE: This course can be used to satisfy the university Core Quantitative Reasoning B (QB) requirement. Although it may be usable towards graduation as a major requirement or university elective, it cannot be used to satisfy any of the university GenEd requirements. See your advisor for further information.

Course Attributes: QB

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 1021|Minimum Grade of C|May not be taken concurrently
OR MATH 1022 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR MA03 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May not be taken concurrently
OR STAT 1902|Minimum Grade of C-|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 1055. Computers and Applications. 4 Credit Hours.

This course is typically offered in Fall, Spring, Summer I and Summer II.

With the explosion of computer technology, knowledge of computing applications as tools for all disciplines has become a necessary asset. This course will introduce the student to understanding the components of a computer system; the use of the computer to process information; the technology behind computers and networks and how this technology is likely to change; purchasing and maintaining a personal computer system; understanding the technology of the Internet; and social and ethical implications of computing. The laboratory portion of this class will provide students with hands-on experience to supplement the lecture material. Operating system concepts, a working knowledge of collaborative software and the following applications are covered: advanced features of word processing, spreadsheets, presentation software and the resources of the Internet including developing a web site using sound design techniques to publish course documents and incorporating multi-media components. NOTE: (1) Duplicate Course: No credit for students who have taken CIS 0835 (GE-SCI 0060) or 935 (GE-SCI H060). (2) This course can be used to satisfy the university Core Science & Technology Second Level (SB) requirement.

Course Attributes: SB

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 0701 to 0702| Required Courses:1|Minimum Grade of C-|May not be taken concurrently
OR MATH 0800 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC3 Y|May not be taken concurrently
OR MC4 Y|May not be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C-|May be taken concurrently
OR STT2 Y|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May be taken concurrently
OR STAT 1902|Minimum Grade of C-|May be taken concurrently
OR MC3A Y|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 1056. Advanced Web Technology and Programming. 4 Credit Hours.

This course is typically offered in Fall.

In this course, students will learn how to write web applications using Java and JSP (Java Server Pages). This course focuses on fundamental programming concepts such as data types, type conversion, exception handling, assignment statements, methods, objects, conditions, and loops. SQL (Structured Query Language) will be used to communicate with a database. JSP implicit objects (e.g., session, response) will be employed for the management of log-in and security. Students are expected to have prior knowledge of basic web design, since HTML, CSS, and Javascript will be reviewed only briefly. By the end of the course, each student will have created a simple web application that accesses a database.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 1052|Minimum Grade of C-|May not be taken concurrently.

CIS 1057. Computer Programming in C. 4 Credit Hours.

This course is typically offered in Fall, Spring and Summer II.

Introduces students to computer and computer programming. Topics covered include the general characteristics of computers, techniques of problem solving, and algorithm specification, and the debugging and testing of computer programs in the C language. NOTE: This course can be used to satisfy the university Core Quantitative Reasoning B (QB) requirement. Although it may be usable towards graduation as a major requirement or university elective, it cannot be used to satisfy any of the university GenEd requirements. See your advisor for further information.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Course Attributes: QB

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 1021|Minimum Grade of C|May not be taken concurrently
OR MATH 1022 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR MA03 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May not be taken concurrently
OR STAT 1902|Minimum Grade of C-|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 1066. Mathematics Concepts for Computers. 4 Credit Hours.

This course is typically offered in Fall and Spring.

Introduction to mathematical concepts fundamental to IS&T. Topics include: number systems, data representation in computers, data structures, logic, set theory, and algorithms. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(MATH 1021|Minimum Grade of C|May not be taken concurrently
OR MATH 1022 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC5 Y|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR MA03 Y|May not be taken concurrently
OR STAT 1001|Minimum Grade of C|May not be taken concurrently
OR STAT 1102|Minimum Grade of C-|May not be taken concurrently
OR STAT 1902|Minimum Grade of C-|May not be taken concurrently
OR MC6A Y|May not be taken concurrently)
AND (CIS 1048|Minimum Grade of C-|May be taken concurrently)
AND (CIS 1073|Minimum Grade of C-|May be taken concurrently).

CIS 1068. Program Design and Abstraction. 4 Credit Hours.

This course is typically offered in Fall, Spring and Summer II.

Introduction to problem solving and programming in Java, software engineering, procedural and data abstraction, and object-oriented programming, including class hierarchies, inheritance and interfaces. Data types covered include primitive data types, strings, classes, arrays, vectors, and streams. Programming techniques include at least one technique for searching and sorting an array and an introduction to file processing. Note: For Computer Science Majors and IST Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 1022|Minimum Grade of C-|May not be taken concurrently
OR MATH 1038 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC6 Y|May not be taken concurrently
OR MA04 Y|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 1166. Mathematical Concepts in Computing I. 4 Credit Hours.

This course is typically offered in Fall and Spring.

Introduction to the mathematical concepts fundamental to computer and information science. Topics include an introduction to predicate and propositional calculus; sets and set operations; functions and mappings; big-O notation and the growth of functions; algorithms, integers, and matrices; mathematical induction and recursive definitions; combinations, permutations, and binomial coefficients; discrete probability, expected value and variance. Students will also learn formal methods for writing mathematical proofs. Applications to computer science will be illustrated. NOTE: For Computer Science and Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 1022|Minimum Grade of C-|May not be taken concurrently
OR MATH 1038 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC6 Y|May not be taken concurrently
OR MA04 Y|May not be taken concurrently
OR MC6A Y|May not be taken concurrently.

CIS 1966. Honors Mathematical Concepts in Computing I. 4 Credit Hours.

An honors version of CIS 1166, this course provides an introduction to the mathematical concepts fundamental to computer and information science. Topics include an introduction to predicate and propositional calculus; sets and set operations; functions, sequences and matrices; big-O notation and the growth of functions; algorithms; number theory; mathematical induction and recursive definitions; combinations, permutations, and binomial coefficients; probability, relations. Students will also learn formal methods for writing mathematical proofs. Additional topics beyond the scope of an introductory course will be included. These topics will not only enrich the class, but also show how the concepts can be applied to solve cutting edge problems in science and technology.

Cohort Restrictions: Must be enrolled in one of the following Cohorts: SCHONORS, UHONORS, UHONORSTR

Course Attributes: HO

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 1041|Minimum Grade of C|May be taken concurrently
OR MATH 1941|Minimum Grade of C|May be taken concurrently
OR MATH 1038|Minimum Grade of C|May be taken concurrently
OR MATH 1042|Minimum Grade of C-|May be taken concurrently
OR MATH 1044|Minimum Grade of C-|May be taken concurrently
OR MATH 1942|Minimum Grade of C-|May be taken concurrently
OR MATH 1951|Minimum Grade of C-|May be taken concurrently
OR MATH 2043 to 3080| Required Courses:1|Minimum Grade of D|May be taken concurrently
OR MA06 Y|May not be taken concurrently.

CIS 1968. Honors Program Design and Abstraction. 4 Credit Hours.

An honors version of CIS 1068, this course provides an introduction to problem solving and programming in Java, software engineering, procedural and data abstraction, and object-oriented programming, including class hierarchies, inheritance and interfaces. Data types covered include primitive data types, strings, classes, arrays, vectors, and streams. Programming techniques include at least techniques for searching and sorting an array. In addition to the standard materials for 1068, this course will look more deeply into the underlying representations of numeric data types, it will consider some more advanced language topics including a more detailed look at polymorphism, and it may consider additional techniques such as linked data structures and recursion. Expect the usual boundary between lab and lecture to be somewhat blurred as we look at design and implementation in both places, often in the context of small group activities. The course will end with small group programming projects of modest complexity chosen jointly by the students and instructor based on their areas of interest. These could include elements of graphics, robotics, applied mathematics, engineering, or projects from other disciplines.

Cohort Restrictions: Must be enrolled in one of the following Cohorts: SCHONORS, UHONORS, UHONORSTR

Course Attributes: HO

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
MATH 1041|Minimum Grade of C|May be taken concurrently
OR MATH 1941|Minimum Grade of C|May be taken concurrently
OR MATH 1038|Minimum Grade of C|May be taken concurrently
OR MATH 1042|Minimum Grade of C-|May be taken concurrently
OR MATH 1044|Minimum Grade of C-|May be taken concurrently
OR MATH 1942|Minimum Grade of C-|May be taken concurrently
OR MATH 1951|Minimum Grade of C-|May be taken concurrently
OR MATH 2043 to 3080| Required Courses:1|Minimum Grade of D|May be taken concurrently
OR MA06 Y|May not be taken concurrently.

CIS 2033. Computational Probability and Statistics. 4 Credit Hours.

This course is typically offered in Spring.

The goal is to introduce students to modern and extremely useful topics in computational statistics. It focuses on computational aspects and provides a hands-on introduction to fundamental concepts of data analysis. The course is composed of 3 hours lecture and 2 hours lab with programming assignments in Matlab. Consequently, the students will be able to immediately see their results with programming assignments in Matlab. No prior Matlab knowledge is required. The course offers a solid foundation for further courses in data mining, machine learning, artificial intelligence, robotics, computer vision, and in general in computational statistics and scientific computing.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 1068|Minimum Grade of C-|May not be taken concurrently
OR CIS 1073|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 1166|Minimum Grade of C-|May not be taken concurrently)
AND (MATH 1041|Minimum Grade of C-|May not be taken concurrently
OR MATH 1038|Minimum Grade of C-|May not be taken concurrently
OR (MATH 1022|Minimum Grade of C-|May not be taken concurrently
AND MATH 1031|Minimum Grade of C-|May not be taken concurrently)
OR MATH 1941|Minimum Grade of C-|May not be taken concurrently
OR MATH 1042|Minimum Grade of C-|May be taken concurrently
OR MATH 1044|Minimum Grade of C-|May be taken concurrently
OR MATH 1942|Minimum Grade of C-|May be taken concurrently
OR MATH 1951|Minimum Grade of C-|May be taken concurrently
OR MATH 2043 to 3080| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MA05 Y|May not be taken concurrently
OR MA06 Y|May not be taken concurrently).

CIS 2082. Independent Research I. 1 to 4 Credit Hour.

This course is typically offered in Fall, Spring, Summer I and Summer II.

Prerequisites: Completion of CIS 2168 with at least a C-, and a GPA of 3.0 or better in the major. Supervised research under the direction of a faculty member in the Department of CIS. All students must obtain the approval of the CIS Administrative Coordinator. NOTE: Not available for major credit and does not count in the major GPA. This course is repeatable.

Repeatability: This course may be repeated for additional credit..

CIS 2107. Computer Systems and Low-Level Programming. 4 Credit Hours.

This course is typically offered in Fall and Spring.

This course introduces computer systems architecture at the level required to understand low-level systems programming. It examines issues of information representation, the form of machine instructions and addressing, the implementation of programming language constructs in terms of machine instructions, the interfaces to peripheral devices. Programming is done in assembly language and in C. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Electrical Engineering, Mathematics/Computer Science, Mathematics & Comp Sci w/Teach

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 1068|Minimum Grade of C-|May not be taken concurrently
OR CIS 1073|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 1166|Minimum Grade of C-|May not be taken concurrently).

CIS 2109. Database Management Systems. 4 Credit Hours.

This course is typically offered in Fall and Spring.

This is an introductory course in database management systems (DBMS) and file management systems. The course covers data modeling concepts, various file management techniques, data definition and manipulation using SQL, issues in data management, development and implementation of database applications, and a perspective on emerging issues in database systems. Students work in the Lab on various assignments including prototyping and SQL, utilizing state of the art DBMS and CASE tools. NOTE: (1) Duplicate Course: No credit for students who have completed CIS 4331 (0331). (2) Prior to fall 2016, the course title was "Database and File Management Systems."

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 1073|Minimum Grade of C-|May not be taken concurrently
OR CIS 1068|Minimum Grade of C-|May not be taken concurrently.

CIS 2166. Mathematical Concepts in Computing II. 4 Credit Hours.

This course is typically offered in Fall and Spring.

A continuation of CIS 1166. Concepts include recursion and recursive algorithms; relations including equivalence, congruence, and order; introduction to graphs and trees. Additional topics include Boolean algebra and finite automata. Applications to computer science will be illustrated. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(MATH 1041|Minimum Grade of C|May not be taken concurrently
OR MATH 1941|Minimum Grade of C|May not be taken concurrently
OR MATH 1038|Minimum Grade of C|May not be taken concurrently
OR MATH 1042|Minimum Grade of C-|May be taken concurrently
OR MATH 1044|Minimum Grade of C-|May be taken concurrently
OR MATH 1942|Minimum Grade of C-|May be taken concurrently
OR MATH 1951|Minimum Grade of C-|May be taken concurrently
OR MATH 2043 to 3080| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MA06 Y|May not be taken concurrently)
AND (CIS 1068|Minimum Grade of C-|May not be taken concurrently
OR CIS 1968|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 1166|Minimum Grade of C-|May not be taken concurrently
OR CIS 1966|Minimum Grade of C-|May not be taken concurrently
OR MATH 2111|Minimum Grade of C-|May not be taken concurrently).

CIS 2168. Data Structures. 4 Credit Hours.

This course is typically offered in Fall and Spring.

A continuation of CIS 1068. Program style organization and design with continued emphasis on the object-oriented design paradigm. Understanding and use of data abstraction through Java classes and class libraries. Understanding and use of the following Abstract Data Types: strings, stacks, queues, priority queues, lists, linked lists, binary trees, heaps, and hash tables. Introduction to expression evaluation and other applications. Introduction to recursion and comparative analysis of searching and sorting algorithms and data structures. Sorting algorithms include insertion sort, mergesort, heapsort, and quicksort. Searching algorithms include binary search, hashing, and Huffman coding. NOTE: For Computer Science and Information Science and Technology Majors.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 1068|Minimum Grade of C-|May not be taken concurrently
OR CIS 1968|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 1166|Minimum Grade of C-|May not be taken concurrently
OR CIS 1966|Minimum Grade of C-|May not be taken concurrently
OR MATH 2111|Minimum Grade of C-|May not be taken concurrently)
AND (MATH 1022|Minimum Grade of C-|May not be taken concurrently
OR MATH 1038 to 4999| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MC6 Y|May not be taken concurrently
OR MA04 Y|May not be taken concurrently
OR MC6A Y|May not be taken concurrently).

CIS 2229. Architecture, Operating Systems and Networking. 4 Credit Hours.

This course is typically offered in Fall and Spring.

This course provides an introduction to computer system architecture, operating systems concepts, and network organization, structure, and management. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 1068|Minimum Grade of C-|May not be taken concurrently
OR CIS 1073|Minimum Grade of C-|May not be taken concurrently.

CIS 2305. Mobile Computing Technologies. 4 Credit Hours.

This course is typically offered in Spring.

This course provides an environment for students to learn and experiment with mobile computing technologies in different platforms, such as iPhone, Android and Windows Mobile (in partnership with Microsoft Research). The actual platform may rotate according to students' interest, device and instructor availability. The course is tutorial and project oriented. The first eight weeks are for tutorials and laboratories. The remaining weeks are for group projects. Each team will consist of students with programming, management and critical analysis skills. NOTE: For Information Science & Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 1068|Minimum Grade of C-|May not be taken concurrently
OR CIS 1073|Minimum Grade of C-|May not be taken concurrently
OR CIS 1056|Minimum Grade of C-|May not be taken concurrently.

CIS 2308. Web Application Programming. 4 Credit Hours.

This course is typically offered in Fall and Spring.

This course introduces the techniques used in the design and implementation of web applications. Using development environments such as Dreamweaver, Visual Studio, Eclipse, Netbeans, and SQL Management Studio, students write code for the browser (HTML, Cascading Style Sheets, javascript, ajax), web application server (JSP, PHP, or C# .NET), and database server (SQL, stored procedures, triggers). Students learn about internet protocols and how to work with web application objects (e.g., request, response, session). Students learn how design patterns such as MVC (Model-View-Controller) can and should be applied to the multi-tiered, distributed software that make up today's web applications. XML (a format commonly used to transfer data over the internet) and web services (a method call to a remote computer over the internet) are discussed and demonstrated. Each student will program their own web application, expanding on its functionality each week in the lab.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2107|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently
OR CIS 2173|Minimum Grade of C-|May not be taken concurrently).

CIS 3033. Computational Probability and Statistics. 4 Credit Hours.

This course is typically offered in Fall.

The goal is to introduce students to modern and extremely useful topics in computational statistics. It focuses on computational aspects and provides a hands-on introduction to fundamental concepts of data analysis. The course is composed of 3 hours lecture and 2 hours lab with programming assignments in Matlab. Consequently, the students will be able to immediately see their results with programming assignments in Matlab. No prior Matlab knowledge is required. The course offers a solid foundation for further courses in data mining, machine learning, artificial intelligence, robotics, computer vision, and in general in computational statistics and scientific computing.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 1068|Minimum Grade of C|May not be taken concurrently
OR CIS 1073|Minimum Grade of C|May not be taken concurrently)
AND (MATH 1042|Minimum Grade of C|May not be taken concurrently).

CIS 3191. Independent Research II. 1 to 4 Credit Hour.

This course is typically offered in Fall, Spring, Summer I and Summer II.

Prerequisites: Completion of CIS 2168 and [CIS 3223 or CIS 3309] with at least a C-, and a GPA of 3.0 or better in the major. Research under the direction of a faculty member in the Department of CIS. All students must obtain the approval of the CIS Administrative Coordinator. NOTE: Not available for major credit and does not count in the major GPA. This course is repeatable.

Repeatability: This course may be repeated for additional credit..

CIS 3203. Introduction to Artificial Intelligence. 4 Credit Hours.

This course is typically offered in Fall.

Introduction to the issues and ideas of artificial intelligence using LISP and PROLOG. Knowledge of representation, search, problem solving, learning and mathematical reasoning. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science, Mathematics & Comp Sci w/Teach

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2033|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2166|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently).

CIS 3207. Introduction to Systems Programming and Operating Systems. 4 Credit Hours.

This course is typically offered in Fall and Spring.

This course is concept-oriented, not specialized to a particular operating system, and not trying to teach how to code the kernel of an operating system. After reviewing a number of system programming issues, it examines the basic components of modern operating systems in terms of their function, domain, design, principles and implementation techniques, use and impact on systems programming. It describes and uses in programming homework two modern operating systems (UNIX and Windows NT). Design and implementation of a number of concurrent programs is examined. Hardware support for operating system functions is discussed. Performance issues are considered through the course. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science, Mathematics & Comp Sci w/Teach

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 1166|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2107|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently).

CIS 3211. Automata, Computability, and Languages. 3 Credit Hours.

This course is not offered every year.

Finite automata, their limitations and capabilities, and Kleen's theorem or regular expressions. Other types of automata and their events. Turing machine and computability, computable functions, and halting problems. Introduction to context-free languages. Syntactical analysis of such languages with application to translation. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 2166|Minimum Grade of C-|May not be taken concurrently.

CIS 3219. Computer Graphics and Image Processing. 4 Credit Hours.

This course is typically offered in Spring.

An analysis of the techniques used in computer manipulation of two- and three-dimensional images. Hardware and software for displaying images, two- and three-dimensional transformations, the hidden line problem, picture processing, character recognition, and two-dimensional filtering. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science, Mathematics & Comp Sci w/Teach

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 1166|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2107|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently)
AND (MATH 1042|Minimum Grade of C|May not be taken concurrently
OR MATH 1942|Minimum Grade of C|May not be taken concurrently
OR MATH 1951|Minimum Grade of C|May not be taken concurrently
OR MATH 2043 to 3080| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MA07 Y|May not be taken concurrently).

CIS 3223. Data Structures and Algorithms. 3 Credit Hours.

This course is typically offered in Fall and Spring.

Comparative analysis of algorithms and data structures. Data structures include heaps, priority queues, binary and general trees, binary search trees, AVL trees, Red-Black trees, B-trees, and graphs. Algorithms include heapsort, topological sort, breadth-first search, depth-first search, shortest path algorithms, and Greedy algorithms. Students will gain experience working in a group on at least one moderate-size project. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science, Mathematics & Comp Sci w/Teach

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2166|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently)
AND (MATH 1042|Minimum Grade of C-|May not be taken concurrently
OR MATH 1942|Minimum Grade of C-|May not be taken concurrently
OR MATH 1951|Minimum Grade of C-|May not be taken concurrently
OR MATH 2043 to 3080| Required Courses:1|Minimum Grade of C-|May be taken concurrently
OR MA07 Y|May not be taken concurrently).

CIS 3238. Software Design. 4 Credit Hours.

This course is typically offered in Spring.

Provides direct experience in the design, development, documentation, testing and maintenance of medium size software projects, in the use of modern software problem solving abstractions and solution patterns, and in the use of software development environments. This course is the capstone of the programming course sequence.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2168|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3207|Minimum Grade of C-|May not be taken concurrently).

CIS 3242. Discrete Structures. 3 Credit Hours.

This course is typically offered in Fall.

Introduction to algebraic structures fundamental to various areas of computer science. Graphs, planar graphs, algorithms on graphs and their analysis, sequential machines and their minimization, semi-groups, and groups and their application to computer science. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 2166|Minimum Grade of C-|May not be taken concurrently.

CIS 3281. Cooperative Education Experience in Information Science & Technology. 4 Credit Hours.

This course is typically offered in Fall, Spring and Summer I.

Prerequisites: Completion of CIS 2168 with at least a C-. All students must obtain the approval of the IST Faculty Advisor. In this course, students undertake directed study in Information Science and Technology, which integrates academic program and work experience. The course is coordinated by an Information Science & Technology faculty member, but supervised by the student’s work supervisor. At the end of the semester students will turn in a final report detailing the work done on the project. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may be repeated for additional credit..

CIS 3287. Software Design/Practicum. 4 Credit Hours.

This course is typically offered in Fall.

Provides direct experience in the design, development, documentation, testing and maintenance of medium size software projects, in the use of modern software problem solving abstractions and solution patterns, and in the use of software development environments. This course is the capstone of the programming course sequence. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science

Repeatability: This course may be repeated for additional credit.

Pre-requisites:
(CIS 2168|Minimum Grade of C|May not be taken concurrently)
AND (CIS 3207|Minimum Grade of C|May not be taken concurrently).

CIS 3309. Component-Based Software Design. 4 Credit Hours.

This course is typically offered in Fall and Spring.

This course emphasizes component-based software development using a modern object-oriented programming (OOP) language (currently C#). Students are introduced to software development techniques applicable in a component (class)-based, integrated software development environment (IDE). Students will learn (and practice using) the OOP language, object-oriented software design techniques, and the principles of good user interface design. Students will also learn how to navigate in, and take full advantage of, an IDE in building quality software, including user interfaces to databases, sequential files, and graphics tools. Object-oriented concepts such as inheritance, polymorphism, static and dynamic binding, and interface (abstract class) components will be covered. The primary focus is on windows-based software products, but the use of ASP.NET for client-server systems development is also introduced. NOTE: (1) Duplicate Course: Students may not get credit for both CIS 4309 and 3309. (2) For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2109|Minimum Grade of C-|May be taken concurrently
OR CIS 4331|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently
OR CIS 2173|Minimum Grade of C-|May not be taken concurrently)
AND (MATH 1022|Minimum Grade of C-|May not be taken concurrently
OR MATH 1038 to 4999| Required Courses:1|Minimum Grade of C-|May not be taken concurrently
OR MC6 Y|May not be taken concurrently
OR MA04 Y|May not be taken concurrently
OR MC6A Y|May not be taken concurrently).

CIS 3319. Wireless Networks and Security. 4 Credit Hours.

This course is typically offered in Spring.

The students are expected to learn fundamental knowledge of cryptography, several types of important wireless networks, and security issues and defenses in the wireless networks and systems.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science, Mathematics & Comp Sci w/Teach

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2107|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently).

CIS 3329. Network Architectures. 4 Credit Hours.

This course covers the operation of computer networks and internets. It provides the background to enable students to evaluate alternative approaches to client-server computing and n-tier software development. To accomplish this the course includes communications technology, computer network technology internetworking using the TCP/IP protocol suite, client-server protocols, client-server computing, network program component models as well as issues involving security, privacy, authentication, intellectual property rights, and social changes related to computer networking. NOTE: For Information Science and Technology Majors and Minors only.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2168|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2107|Minimum Grade of C-|May not be taken concurrently
OR CIS 2229|Minimum Grade of C-|May not be taken concurrently).

CIS 3342. Networked Application Systems. 4 Credit Hours.

This course is typically offered in Fall and Spring.

The objective of this course is to provide further depth, beyond CIS 3309, into the development of network deployed systems. Its emphasis is on distributed, multi-tier architectures. The course is divided into 3 parts. First is the theory associated with software engineering design principles and distributed processing in client/server architectures and database systems. The second part is a deeper knowledge of the ASP.NET and C#.NET languages beyond CIS 3309. This would include such topics as web and windows applications, user interfaces, event handling, database design and ADO.NET, Web Services, Ajax, user controls, and report generation. The third part of the course is a project that the student will perform in the design and programming of a distributed client/server application. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2109|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3309|Minimum Grade of C-|May not be taken concurrently).

CIS 3344. Client-Side Scripting for the Web. 4 Credit Hours.

This course is typically offered in Fall and Spring.

Today's web applications are becoming more interactive, doing more on the client side and less on the server side. A new software design goal is to write a single code base that can support many formats, from mobile phones, to tablets, to computer monitors. This course will focus on current technologies in client side web scripting, such as: HTML, CSS, responsive web design techniques, JavaScript, JavaScript libraries (such as jQuery), JSON (or other web data formats), Ajax (a technique using JavaScript to make asynchronous calls to web APIs), and client side web application frameworks (such as AngularJS). Students will create web applications that access a database using client side code that invokes web APIs. NOTE: (1) For Information Science and Technology Majors. (2) Prior to fall 2016, the course title was "Advanced Web Application Design and Scripting."

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2109|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently).

CIS 3374. Quality Assurance & Testing. 4 Credit Hours.

This course is typically offered in Fall.

Learn the techniques for creating quality systems. This course discusses the crucial steps to be taken to assure that systems: do what they are intended to do; work reliably; satisfy the client's requirements; are completed on time and within budget. Quality practices will be introduced and reviewed to give you a perspective as to why some systems succeed and others fail. Most importantly, students will learn techniques for building quality systems. A number of software tools will be introduced and discussed. Participants will be expected to complete one research paper on test automation, write test plans, and develop the skills to improve the software development process. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 3376. Enterprise Resource Planning (ERP) Design and Implementation. 3 Credit Hours.

This course is typically offered in Spring.

This course is designed to teach students about implementation of integrated information system for the enterprise using SAP ERP. The course will explain the fundamental concepts of ERP implementations, including cost/benefit, infrastructure design and integration issues. Online tutorials will be used to provide an introduction to the SAP and navigation exercises to acquaint students with getting around within SAP ERP. Students then will work in teams on case studies that execute business process integration in five key areas: sales logistics, production logistics, procurement logistics, accounting/controlling, and human resources. Additionally, students are introduced to SAP master data creation and use. NOTE: For Information Science & Technology Majors.

NOTE: This is a new course number for the SAP course, which had been offered as CIS 4340. Students may not take this course if you already took CIS 4340. For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2109|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently).

CIS 3381. Cooperative Education Experience in Computer Science. 4 Credit Hours.

This course is typically offered in Fall, Spring, Summer I and Summer II.

Students undertake directed study in Computer Science, which integrates academic program and work experience. The course is coordinated by a Computer Science faculty member, but supervised by the student's work supervisor. Students will submit a weekly log and turn in a final report detailing the work completed at the end of the semester. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may be repeated for additional credit..

CIS 3515. Introduction to Mobile Application Development. 4 Credit Hours.

This course is typically offered in Fall and Spring.

This course will introduce students to application development for mobile devices, and the various concerns of mobile platforms. Students will learn about the various constraints inherent to mobile applications as well as the new opportunities that they present. They will learn how to address challenges in hardware and mobile interface modalities by incorporating software design and user-interaction design principles. Additionally, students will be exposed to new models of software and data distribution, leveraging third party software, and managing local and remote data.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 3603. User Experience Design. 3 Credit Hours.

This course is typically offered in the Fall and Spring.

This course will focus on the effective understanding and implementation of the iterative UX design process. Students will learn to have empathy for users by putting into practice each phase of the design process, including Scoping, Research, Analysis, Ideation, Design, Validation, and more. Students will gain exposure and experience in a simulation of a real-world experience.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 3605. Introduction to Digital Forensics. 3 Credit Hours.

This course is typically offered in Fall.

This course is a broad introduction to the field of Digital Forensics. It covers various fundamental topics necessary for digital forensics investigation. The course begins with foundations of electronic evidence including cyber crime laws, the 4th Amendment, compliance and requirements, collection and handling, analysis, and reporting. The course also covers fundamentals of file systems with specific details pertaining to Microsoft FAT file systems. Students will learn two important forensics techniques–-file recovery and file carving–-among other things. Finally, forensics artifacts relevant to Windows Systems and Networks are discussed with relevant lab activities and students are also introduced to Antiforensics. Hands-on lab activities familiarize students with several relevant investigation techniques and the use of open source forensics tools.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2107|Minimum Grade of C-|May not be taken concurrently
OR CIS 2229|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently).

CIS 3715. Principles of Data Science. 4 Credit Hours.

This course is typically offered in Spring.

Introduction to the practice of data science. Students will leave the class with a broad set of practical data analytic skills based on building real analytic applications on real data. Skills include collecting, accessing, and transferring data, applying methods from machine learning and data mining to analyze data, and visualization and presentation of results. The students will gain experience in processing "big data" which are too big to fit in the computer's memory. NOTE: For Computer Science and Information Science and Technology Majors.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2166|Minimum Grade of C-|May not be taken concurrently
OR MATH 2101|Minimum Grade of C-|May not be taken concurrently
OR ENGR 2011|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 1051|Minimum Grade of C-|May not be taken concurrently
OR CIS 1057|Minimum Grade of C-|May not be taken concurrently
OR CIS 1068|Minimum Grade of C-|May not be taken concurrently
OR CIS 1968|Minimum Grade of C-|May not be taken concurrently).

CIS 3775. Information Technology Project Management. 3 Credit Hours.

This course will be offered in the Fall and Spring semesters.

Strong business leaders in today's marketplace use project management knowledge and skills as a key differentiator driving success in their organizations. This course will use case studies to examine basic components of time, scope and resources within the project management processes defined by the Project Management Institute. This course lays the foundation for learning project management with practical examples and tools used in actual business situations. Learn how project management can be driven not only from a monitoring and numbers perspective but also from a people perspective to reach business goals. NOTE: For Information Science and Technology Majors.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 4083. Directed Reading/Study. 1 to 4 Credit Hour.

This course is typically offered in Fall, Spring, Summer I and Summer II.

Prerequisites: Completion of CIS 2168 and [CIS 3223 or CIS 3309] with at least a C-, and a GPA of 3.0 or better in the major. A tutorial opportunity for a student to work with a faculty member to investigate areas of study not covered by courses in the department. All students must obtain the approval of the CIS Administrative Coordinator. NOTE: Not available for major credit. Counts toward the major GPA. This course is repeatable.

Repeatability: This course may be repeated for additional credit..

CIS 4105. Information Technology Process Management. 3 Credit Hours.

This course is typically offered in Fall.

An introduction to essential techniques for successfully creating, organizing and managing IT projects. The course provides the foundation for more advanced studies in process management and software engineering. Enterprise-wide requirements, long-range planning and managing all aspects of the development process will be emphasized. The course will stress the use of appropriate software tools and process modeling throughout the development lifecycle. Quality assurance techniques are introduced at the outset to guide IT processes and decision making. Methods and tools for the technical development of IT systems are presented and used in case projects. The course follows the normal development lifecycle, starting with the recognition and justification of the need for either a new system or an upgrade to an existing system. It then proceeds through analysis, specification, design, implementation, testing (quality assurance), client training and turnover, and maintenance. The importance of each development stage will be taught within the framework of systems reliability, effectiveness, security, scalability, and development cost. NOTE: For Information Science & Technology Majors.

NOTE: For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 4106. System Development Process. 3 Credit Hours.

This course is typically offered in Spring.

Methods and tools for the technical development of IT systems are presented and used in case projects. The course follows the normal development lifecycle, starting with the recognition and justification of the need for either a new system or an upgrade to an existing system. It then proceeds through analysis, specification, design, implementation, testing (quality assurance), client training and turnover, and maintenance. The importance of each development stage will be taught within the framework of systems reliability, effectiveness, security, scalability, and development cost. NOTE: For Information Science & Technology Majors.

NOTE: For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 3309|Minimum Grade of C-|May not be taken concurrently.

CIS 4108. Emerging Technologies and Tools for Enterprise Management. 3 Credit Hours.

This course is typically offered in Spring.

The purpose of this course is to provide students with an understanding of maturing and emerging technologies and their likely impact on the networked information paradigm and enterprise management. Both hardware and software technologies will be covered. Students will be introduced to advanced software tools that demonstrate how agency enterprises make use of vast information flows and interconnectivity. NOTE: For Inforomation Science & Technology Majors.

NOTE: For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 3309|Minimum Grade of C-|May not be taken concurrently.

CIS 4282. Independent Study. 1 to 6 Credit Hour.

This course is typically offered in Fall, Spring, Summer I and Summer II.

Research under supervision of a faculty member.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may be repeated for additional credit..

CIS 4296. Information Systems Analysis and Design. 4 Credit Hours.

This course is typically offered in Fall and Spring.

The analysis and design phases of the System Development Life cycle are covered in detail. Methodologies for systems analysis, specifications, and design are covered. Both the Traditional Structured and Object Oriented methodologies are used by the students, working in teams, to develop real-life information systems. Emphasis is placed on well-written documentation as well as oral communication typically required during the software development life cycle. Project management tools are employed by students to monitor their progress and the costs associated with their projects. CASE tools are employed for data and information modeling and specification. NOTE: (1) Duplicate Course: No credit for students who have completed CIS 4298 (W338). (2) For Information Science and Technology Major.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Course Attributes: WI

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2109|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3309|Minimum Grade of C-|May not be taken concurrently).

CIS 4305. Real Time Computer Systems. 4 Credit Hours.

This course is not offered every year.

Introduction to the problems and techniques of designing and developing real-time systems. Topics will include components of real-time and embedded systems, system and device architecture, synchronous and asynchronous event handling, multi-tasking in real-time systems, scheduling and synchronization, and real-time data acquisition and control. The laboratory component involves building systems and simulations in real-time environments, with real-time kernels. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 3207|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3223|Minimum Grade of C-|May not be taken concurrently).

CIS 4307. Introduction to Distributed Systems and Networks. 4 Credit Hours.

This course is not offered every year.

Introduction to the concepts that are fundamental for understanding distributed systems and the technical infrastructure that makes them possible. Lectures will mostly be expository and conceptual. Directed closed laboratories and home assignments will be applied and involve the solution of distributed programming problems. NOTE: For Computer Science Majors.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2166|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3207|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3223|Minimum Grade of C-|May not be taken concurrently).

CIS 4308. Development of Multi-tier Client/Server Systems. 4 Credit Hours.

This course is not offered every year.

The objective of this course is to teach the principles and development of multi-tiered distributed systems. It is introduced with a basic review of internet communications and the architecture of client and server sites, including the functions of and relationships among the browser, web server, operating and file systems, middle-ware, database server, and application servers. Concepts involving various types of client/server side processing and remote connectivity methodologies are reviewed, including scripting languages, HTML, Dynamic HTML, XML, ASP, CGI, and DCOM. About 30% of the course is devoted to the above-described theory. The remainder of the course will be devoted to putting some of these principles and techniques into practice using the DCOM technology. A series of progressively sophisticated problems will be studied and programmed in the lab. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 3207|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3223|Minimum Grade of C-|May not be taken concurrently).

CIS 4319. Computer Networks and Communications. 4 Credit Hours.

This course is not offered every Fall.

Introduction to computer networks and communications. Local and wide area networks. Network topology and routing. Internet and ISO protocols. Applications including remote procedure calls, remote logon, and file transfer. Network operating systems. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 3207|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2166|Minimum Grade of C-|May not be taken concurrently).

CIS 4324. Compiler Design. 4 Credit Hours.

This course is not offered every year.

The student will learn what a compiler is and how it works. Topics covered include: how to specify what a legal program is in a language (syntax); how to specify what a legal program does (semantics); how a computer uses these specifications to recognize a legal program and translate this program into the machine's language. Students will develop a working compiler for a simple object-oriented programming language using an Object-Oriented approach, using Java, and the compiler construction tool ANTLR. The target will be the Java Virtual Machine. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2168|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2166|Minimum Grade of C-|May not be taken concurrently).

CIS 4330. Current Topics in Information Science & Technology. 3 Credit Hours.

This course is typically offered in Fall and Spring.

Current problems in information science and technology. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

This course is repeatable for credit.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may be repeated for additional credit.

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 4331. Principles of Database Systems. 4 Credit Hours.

This course is not offered every Fall.

This course will cover the fundamental concepts of database systems, with an emphasis on relational database systems. It will cover both the theory and practice of relational databases, including Codd's original relational model, the relational algebra and calculus, and normalization. Students will learn how to do database design using the (extended) entity-relationship model. There will be a semester-long project in which students will design and implement an actual database, using an existing relational database management system, such as Access, MySQL, or Oracle. NOTE: (1) Duplicate Course: No credit for students who have completed CIS 2109. (2) For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2107|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2166|Minimum Grade of C-|May not be taken concurrently).

CIS 4340. Seminar in Information Science & Technology. 4 Credit Hours.

This course is typically offered in Spring.

Current problems in information science and technology. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

This course is repeatable for credit.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may be repeated for additional credit.

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 4344. Advanced Web Application Design & Scripting. 4 Credit Hours.

This course is typically offered in Fall and Spring.

A principal objective of the course is to present web site design and web application programming as separate technical disciplines and, at the same time, to show how they must be carefully integrated to produce effective results. The course will provide the student with the principal design techniques and associated implementation languages for creating dynamic web pages and for both client and server side processing via scripting and an object oriented, event driven language. The new concepts associated with Web 2.0 are presented. These capabilities are sometimes collectively described as Rich Internet Applications (RIA). They greatly enhance the dynamics and interactivity of web presentation and include the "push" vs. "pull" paradigms. Prevalent technologies and languages for web design to be taught are XHTML, CSS, XML, XSL, and DaM, Javascript, Action Script and Adobe FLEX. The prerequisite courses will provide students with the necessary elements of VB.NET for server side processing as well as SQL for database design. Together, the client side scripting languages and the server side .NET and SQL languages will enable students to create applications for the complete client/server cycle. Two other technologies will also be introduced as important contributors to RIA: (1) AJAX, which enhances the effectiveness and speed of the client/server interaction, and (2) Really Simple Syndication (RSS), which provides new delivery modes of web based information in terms of the "push" paradigm. Online tutorials and reference manuals will be made available for all languages used in the course as a supplement to the Text Book. The course will emphasize good web design practice, client server architecture, and the principles of event oriented programming. It will be shown how the use of an Integrated Development Environment (IDE) and other specialized tools can enhance programmer/designer productivity and quality of the final product. NOTE: For Information Science and Technology Majors. Prior to spring 2011, the course title was "Client/Server Scripting Languages for Web Development."

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 3309|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2168|Minimum Grade of C-|May not be taken concurrently).

CIS 4350. Seminar on Topics in Computer Science. 4 Credit Hours.

This course is typically offered in Fall.

Current problems in computer science. NOTE: For Computer Science Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

This course is repeatable for credit.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science, Mathematics & Comp Sci w/Teach

Repeatability: This course may be repeated for additional credit.

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 4360. Seminar on Topics in Computer Science. 3 Credit Hours.

Course content varies from semester to semester and is concerned with current issues in computer science. Note: For Computer Science Majors.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Computer & Information Science, Computer Science, Mathematics/Computer Science, Mathematics & Comp Sci w/Teach

Repeatability: This course may be repeated for additional credit.

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 4362. Application System Development Using Relational Technology. 4 Credit Hours.

This course is not offered every year.

This course will assist in achieving a significant level of understanding and synergy of a variety of Oracle tools, environments and languages including SQL*Plus, PL/SQL, Oracle Forms and Reports. As a parallel line it will be supported by a course project done in a team environment where every team member will do independent work in addition to learning how to work in a team. The course project will include a functional requirements specification, database design, SQL queries, SQL-based listings and reports, reports developed using Oracle Reports, online interface using Oracle Forms, and PL/SQL code supporting the developed application system. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 2109|Minimum Grade of C-|May not be taken concurrently
OR CIS 4331|Minimum Grade of C-|May not be taken concurrently.

CIS 4372. C++ Applications Programming. 4 Credit Hours.

This course is not offered every year.

The C++ programming language is used extensively for interest and applications programming. This course is aimed at providing students with the object-oriented programming experience needed in applying C++ to these problem areas. The objectives are two-fold. One aim is to enhance the student's ability to organize large scale programming tasks using the object oriented approach. The second aim is to further the student's ability to develop error-free maintainable code. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2229|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3309|Minimum Grade of C-|May not be taken concurrently).

CIS 4376. E-Commerce System Development. 4 Credit Hours.

This course is typically offered in Fall.

The objective of this course is to teach the technical aspects of developing a commercial web site. This process combines a number of technologies: (1) web page and style sheet design, (2) dynamic web pages that access data from relational and XML databases, (3) client and server side transaction processing, (4) principles of internet security, scalability, and database reliability, (5) distributed component integration using packages for major functions such as credit card validation, shopping cart management, order fulfillment and inventory management. Students will develop a site as a course project. They will use the Microsoft Visual Studio.NET as the principal software development tool. This includes the ASP.NET and VB.NET languages. Tools to perform the other tasks include Front Page for web design, an XML editor for XML pages, and the Microsoft Enterprise Manager for the management of SQL Server databases and VS.NET component deployment. The course will provide numerous online references to all of these languages and tools. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 2168|Minimum Grade of C-|May not be taken concurrently.

CIS 4378. Computer and Network Security. 4 Credit Hours.

This course is typically offered in Spring.

This course provides an introduction to the inherent insecurities in today's computer systems and networks, and the commonly used tools and techniques used to secure them. Topics include cryptography basics, virtual private networks, secure sockets, e-mail security, firewalls, building secure software, kerberos, web server security, viruses, intrusion detection systems, and privacy issues. NOTE: For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Field of Study Restrictions: Must be enrolled in one of the following Fields of study: Information Science & Technolo

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2229|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3329|Minimum Grade of C-|May not be taken concurrently).

CIS 4382. Independent Study. 1 to 6 Credit Hour.

This course is typically offered in Fall, Spring, Summer I and Summer II.

Research under supervision of a faculty member.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Repeatability: This course may be repeated for additional credit..

CIS 4396. Information Systems Implementation. 4 Credit Hours.

This course is typically offered in Fall and Spring.

This is a capstone course where teams of students implement the information system for which they developed specifications in CIS 4296 (W281). The teams create the database, programs, procedures and documentations necessary for their project. Techniques of modular design, program development, testing and integration are employed. Emphasis is placed on writing documentations, oral presentations and project management. NOTE: (1) Duplicate Course: No credit for students who have completed CIS 4398 (4339, 0339). (2) For Information Science and Technology Majors.

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Course Attributes: WI

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 4296|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 3342|Minimum Grade of C-|May not be taken concurrently
OR CIS 4342|Minimum Grade of C-|May not be taken concurrently).

CIS 4397. Independent Research in Computer Science. 3 Credit Hours.

This course is typically offered in Fall, Spring, Summer I and Summer II.

Students undertake research under the supervision of a CIS faculty member. The research project must be approved by the chair of the Computer Science undergraduate program. Students must apply by 11/15 for Spring and 4/15 for Fall; minimum requirements include a 3.0 GPA overall and a 3.3 GPA in the major as well as readiness for CIS 4398. Students are strongly urged to take an independent study with their research professor prior to enrolling in this course. NOTE: (1) This course can be used to fulfill the capstone requirement. (2) For Computer Science Majors (For Math/CS Majors see your advisor).

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Course Attributes: WI

Repeatability: This course may be repeated for additional credit..

CIS 4398. Projects in Computer Science. 3 Credit Hours.

This course is typically offered in Fall and Spring.

Team-oriented design and implementation of large programming project. Students will propose topics for review and acceptance early in the semester. Students will provide written documentation of their completed projects and will demonstrate the operation of their completed projects in an oral presentation. Projects will be solicited from industry and other departments at the University. NOTE: For Computer Science Majors (For Math/CS Majors see your advisor).

For any CIS prerequisite course taken prior to Spring 2012 a grade of C or better is required.

Class Restrictions: Must be enrolled in one of the following Classes: Senior 90 to 119 Credits, Senior/Fifth Year 120+ Credits

Course Attributes: WI

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 3238|Minimum Grade of C-|May not be taken concurrently
OR CIS 3287|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2166|Minimum Grade of C-|May not be taken concurrently).

CIS 4515. Advanced Mobile Application Development. 4 Credit Hours.

This course is typically offered in Spring.

This course will introduce students to advanced concepts in application development for mobile devices. Students will learn to leverage the various novel components found in modern mobile devices such as NFC, Bluetooth, and GPS, to build applications that are aware of and act based on their environment. Students will learn to work in teams to design and implement complex applications and learn how to address challenges in hardware and user interfaces by incorporating software design and user-interaction design principles. Students will also be introduced to current software distribution models and the ethics of managing user data.

Note: Students can enroll in this course without the prerequisite if instructor permission is granted.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 3515|Minimum Grade of C-|May not be taken concurrently.

CIS 4517. Data-Intensive and Cloud Computing. 3 Credit Hours.

This course is typically offered in Spring.

This course will expose students to recently emerged and fast moving technology of big data and cloud computing. It will cover a spectrum of topics from core techniques in data management and analysis to highly-scalable data processing using parallel database systems. Students will be introduced to big data ecosystems such as Hadoop, Spark, Storm and MapReduce; cloud technologies such as Amazon EC2, Microsoft Azure and Google Cloud; data management tailored to cloud and big data such as NoSQL, Google Big Table/Apache HBase, and introductory applications to big data and cloud environment. Students will work directly with a selected set of these platforms, compare and contrast their relative strengths and weaknesses, and characterize the problems they are designed to solve. Note: Students may not receive credit for both CIS 4517 and CIS 5517.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2168|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2166|Minimum Grade of C-|May not be taken concurrently
OR MATH 2101|Minimum Grade of C-|May not be taken concurrently
OR ENGR 2011|Minimum Grade of C-|May not be taken concurrently
OR MATH 3045|Minimum Grade of C-|May not be taken concurrently).

CIS 4523. Knowledge Discovery and Data Mining. 3 Credit Hours.

This course is not offered every year.

Basic concepts and techniques for the automated extraction of interesting patterns in large databases. Topics covered include: association-rule mining, sequence mining, web and texting mining, data warehousing, information filtering, classification and clustering analysis, Bayesian and neural networks, classification and regression trees, hypotheses evaluation, feature extraction, dimensionality reduction, singular value decomposition, data compression and reconstruction, visualization of large data sets, fractals in databases, and indexing methods that support efficient data mining and queries by content. Special emphasis is given in multimedia, business, scientific, and medical databases. Note: Students may not receive credit for both CIS 4523 and CIS 5523.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(MATH 2043|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2166|Minimum Grade of C-|May not be taken concurrently
OR MATH 2101|Minimum Grade of C-|May not be taken concurrently
OR ENGR 2011|Minimum Grade of C-|May not be taken concurrently)
AND (MATH 3031|Minimum Grade of C-|May not be taken concurrently
OR ECE 3522|Minimum Grade of C-|May not be taken concurrently
OR STAT 2103|Minimum Grade of C-|May not be taken concurrently
OR BIOL 3312|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 1051|Minimum Grade of C-|May not be taken concurrently
OR CIS 1057|Minimum Grade of C-|May not be taken concurrently
OR CIS 1068|Minimum Grade of C-|May not be taken concurrently).

CIS 4524. Analysis and Modeling of Social and Information Networks. 3 Credit Hours.

This course is not offered every year.

This course will include methods for analyzing and modeling the following aspects of social networks: the small-world network models, centralized and decentralized social network search algorithms, power-laws and preferential attachment, diffusion and information propagation in social networks, influence maximization in social networks, community detection in social networks, models of network cascades, models of evolving social networks, links and attributes prediction. Note: Students may not receive credit for both CIS 4524 and CIS 5524.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(MATH 2043|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2166|Minimum Grade of C-|May not be taken concurrently
OR MATH 2101|Minimum Grade of C-|May not be taken concurrently
OR ENGR 2011|Minimum Grade of C-|May not be taken concurrently)
AND (MATH 3031|Minimum Grade of C-|May not be taken concurrently
OR ECE 3522|Minimum Grade of C-|May not be taken concurrently
OR STAT 2103|Minimum Grade of C-|May not be taken concurrently
OR BIOL 3312|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 1051|Minimum Grade of C-|May not be taken concurrently
OR CIS 1057|Minimum Grade of C-|May not be taken concurrently
OR CIS 1068|Minimum Grade of C-|May not be taken concurrently).

CIS 4526. Foundations of Machine Learning. 3 Credit Hours.

This course is typically offered in Fall.

The course objective is to provide students with an understanding of the principles and techniques used in the design and analysis of efficient algorithms. The main topics cover Greedy Algorithms, Divide and Conquer, Dynamic Programming, Network Flow, and Approximation Algorithms. Theoretical results related to NP-completeness will also be discussed. Note: Students may not receive credit for both CIS 4526 and CIS 5526.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(MATH 2043|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 2166|Minimum Grade of C-|May not be taken concurrently
OR MATH 2101|Minimum Grade of C-|May not be taken concurrently
OR ENGR 2011|Minimum Grade of C-|May not be taken concurrently)
AND (MATH 3031|Minimum Grade of C-|May not be taken concurrently
OR ECE 3522|Minimum Grade of C-|May not be taken concurrently
OR STAT 2103|Minimum Grade of C-|May not be taken concurrently
OR BIOL 3312|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 1051|Minimum Grade of C-|May not be taken concurrently
OR CIS 1057|Minimum Grade of C-|May not be taken concurrently
OR CIS 1068|Minimum Grade of C-|May not be taken concurrently).

CIS 4615. Ethical Hacking and Intrusion Forensics. 3 Credit Hours.

This course is typically offered in Spring.

This class teaches students how to use hacking techniques to perform a hack within legal confines. Such hacking is more commonly referred to as a white-hat or an ethical hack. The course will focus on both technical and social aspects of security, ranging from cryptography and biometrics to risk mitigation and disaster recovery aspects of security. Based on the ethical concepts built during the first half of the semester, students will learn the process involved with intrusion attack detection and forensics investigation. Finally, the course will significantly emphasize the key factors that differentiate a hacker (adversary/black-hat) from an ethical hacker, stressing the importance of being within legal confines, an important prerequisite for a successful ethical hacking career. NOTE: For Computer Science and Information Science and Technology Majors.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
CIS 3319|Minimum Grade of C-|May not be taken concurrently
OR CIS 4378|Minimum Grade of C-|May not be taken concurrently.

CIS 4625. Audit and Compliance for Security and Digital Forensics. 3 Credit Hours.

This course is typically offered in Spring.

This course will provide students with a basic understanding of IT systems and the need for audit and compliance. Students will learn about IT terminology, governance, and the IT audit practice that has matured into given sets of frameworks, methodologies, approaches, and models with certain sets of underlying assumptions such as COBIT and SOX. Students will be exposed to various governance standards and federal compliance requirements. NOTE: For Computer Science and Information Science and Technology Majors.

Repeatability: This course may not be repeated for additional credits

Pre-requisites:
(CIS 2229|Minimum Grade of C-|May not be taken concurrently)
AND (CIS 4378|Minimum Grade of C-|May not be taken concurrently).