Computer and Information Science
Computing professionals offer expertise in the effective and efficient use of computers for solving human problems, whether that be as a member of a project development team, as a builder of powerful and easy-to-use tools, as an individual researcher, or as an educator.
Required courses in the Computer and Information Science (CIS) major stress theory and application, as well as the role of other fields such as mathematics, statistics, electrical and computer engineering, business, and software engineering, among others. The curriculum is modeled on the recommendations of the two main professional computing societies, the Association of Computing Machinery (ACM) and the Institute for Electrical and Electronic Engineering (IEEE). Written and oral communications skills are emphasized throughout the program. The use of teamwork on projects is practiced in many courses. Professionalism and ethics are also stressed for future computing professionals. The CIS courses include software engineering, algorithm analysis, networking, security, programming languages, game design, computer architecture, data structures, operating systems, artificial intelligence, database management systems, graphics, information systems, robotics, web development and capstone design courses. The CIS curricula prepare students to begin careers as computing professionals or to pursue graduate study in the field.
A candidate for the degree of BS in CIS is required to select one of four concentrations: Computer Science, Information Systems, Game Design, or Artificial Intelligence. The program encourages innovation on the part of students, prepares students for graduate education, trains students to communicate effectively, and provides students with the tools needed to become leaders in their profession.
The Computer Science (CS) concentration strengthens your knowledge of how computer systems work and prepares you for positions in embedded and systems programming, graphics and visualization, networks, scientific programming, and web technology, among others.
The Information Systems (IS) concentration is oriented toward the design and development of computer information systems. It prepares graduates for positions in database management and applications, enterprise programming, information systems design, systems analysis, web-based information systems, and information engineering, among others.
The Game Design (GD) concentration is tailor-made for those whose dreams include careers in game programming, user experience design and augmented reality applications. It is intended to provide students with the theoretical knowledge and practical experience needed to program computer games or virtual user experiences at the professional level.
The Artificial Intelligence (AI) concentration is designed to help students build a comprehensive framework with core concepts and skills for artificial intelligence. It prepares graduates for positions in intelligent system development, machine learning, deep learning, natural language processing, knowledge engineering, AI-powered analytics, business intelligence, among others.
The BS in Computer and Information Science program is accredited by the Computing Accreditation Commission of ABET.
Program Educational Objectives
- Our graduates will be successfully employed in Computer and Information Science–related fields or other career paths, including industrial, academic, governmental, and non-governmental organizations, or will be successful graduate students in a program preparing them for such employment.
- Our graduates will lead and participate in culturally diverse and inclusive teams, becoming global and ethical collaborators.
- Our graduates will continue their professional development through, for example, obtaining continuing education credits, professional registration or certifications, or post-graduate study credits or degrees.
Student Outcomes
To achieve the educational objectives of the program, graduates of the BS in CIS program will have an ability to:
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
- Communicate effectively in a variety of professional contexts.
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
- Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
- Apply computer science theory and software development fundamentals to produce computing-based solutions.
Dearborn Discovery Core (General Education)
All students must satisfy the University’s Dearborn Discovery Core requirements, in addition to the requirements for the major
In addition to completion of the Dearborn Discovery Core, the following courses are required to earn a B.S. degree in Computer and Information Science from UM-Dearborn.
Major Requirements
Code | Title | Credit Hours |
---|---|---|
Prerequisite Courses | ||
COMP 105 | Writing & Rhetoric I | 3 |
COMP 270 | Tech Writing for Engineers | 3 |
ECON 201 | Prin: Macroeconomics | 3 |
or ECON 202 | Prin: Microeconomics | |
MATH 115 | Calculus I | 4 |
MATH 116 | Calculus II | 4 |
MATH 227 | Introduction to Linear Algebra | 3 |
CIS 150 | Computer Science I | 4 |
CIS 200 | Computer Science II | 4 |
CIS 275 | Discrete Structures I | 4 |
IMSE 317 | Eng Probability and Statistics | 3 |
Select one laboratory science sequence from the following: | 8 | |
Intro Org and Environ Biology and Field Biology | ||
General Chemistry IA and General Chemistry IIA | ||
Physical Geology and Historical Geology | ||
Introductory Physics I and Introductory Physics II | ||
General Physics I and General Physics II |
Code | Title | Credit Hours |
---|---|---|
CIS Core | ||
CIS 310 | Computer Org and Assembly Lang | 4 |
CIS 350 | Data Struc and Algorithm Anlys | 4 |
CIS 375 | Software Engineering I | 4 |
CIS 427 | Comp Networks and Dis Process | 4 |
CIS 450 | Operating Systems | 4 |
CIS 4951 | Design Seminar I | 2 |
CIS 4952 | Design Seminar II | 2 |
CIS students must choose a concentration in Computer Science, Information Systems, Game Design, or Artificial Intelligence. Concentration requirements are listed below.
Artificial Intelligence Concentration Requirements
Code | Title | Credit Hours |
---|---|---|
Natural Science | ||
Four additional science credits; must be a different subject than the two course sequence prerequisite: | 4 | |
Introduction to Astronomy and Introductory Astronomy Lab | ||
Intro Org and Environ Biology | ||
Field Biology | ||
General Chemistry IA | ||
General Chemistry IIA | ||
Organic Chemistry I | ||
Organic Chemistry II | ||
Organic Chemistry Laboratory | ||
Physical Geology | ||
Historical Geology | ||
Introductory Physics I | ||
Introductory Physics II | ||
General Physics I | ||
General Physics II | ||
All of the following are required: | ||
CIS 298 | Intro to Python | 3 |
CIS 306 | Discrete Structures II | 4 |
CIS 411 | Introduction to Natural Language Processing | 3 |
CIS 479 | Intro to Artificial Intel | 3 |
CIS 481 | Computational Learning | 3 |
CIS 483 | Deep Learning | 3 |
Technical Electives | ||
Select 18 credit hours: | 18 | |
Software Engineering Tools | ||
Prac. Comp. Sec. | ||
Software Engineering II | ||
Industrial Robots | ||
Introduction to Digital Forensics | ||
Algorithm Analysis & Design | ||
Introduction to Quantum Computing | ||
Database Mgmt Systems 1 | ||
or CIS 422 | Massive Data Management | |
Dec Support and Exp Systems | ||
Information Systems | ||
Web Technology | ||
Mobile App Des & Impl | ||
Advanced Networking | ||
Wireless & Mobi Comp Security | ||
Text Mining and Information Retrieval | ||
Intro Computr & Ntwrk Security | ||
Intro to Software Security | ||
Network and Mobile Forensics | ||
Compiler Design | ||
Soft Arch & Design Patterns | ||
Trustworthy Artificial Intelligence | ||
Data Security and Privacy | ||
Edge Computing | ||
Introduction to Numerical Analysis | ||
Matrix Computation | ||
Experiential Honors Prof. Prac | ||
Appl Business Tech for Engr | ||
Exper Honors Directed Research | ||
Exper Hnrs Dir Dsgn | ||
Entrepreneurial Thinking&Behav | ||
General Electives | ||
Any 100 to 400 level course with no more than 6 credits, as needed to get a minimum of 120 credits for graduation. |
- 1
Only one course from CIS 421 or CIS 422 may be used towards the 120 credits of the degree.
Computer Science Concentration Requirements
Code | Title | Credit Hours |
---|---|---|
Four additional science credits; must be a different subject than the two course sequence prerequisite: | 4 | |
Introduction to Astronomy and Introductory Astronomy Lab | ||
Intro Org and Environ Biology | ||
Field Biology | ||
General Chemistry IA | ||
General Chemistry IIA | ||
Organic Chemistry I | ||
Organic Chemistry II | ||
Organic Chemistry Laboratory | ||
Physical Geology | ||
Historical Geology | ||
Introductory Physics I | ||
Introductory Physics II | ||
General Physics I | ||
General Physics II | ||
CIS 306 | Discrete Structures II | 4 |
CIS 296 | Java Programming | 3 |
or CIS 297 | Intro to C Sharp | |
or CIS 298 | Intro to Python | |
CIS 405 | Algorithm Analysis & Design | 3 |
or CIS 479 | Intro to Artificial Intel | |
One Courses (from below) | 3 | |
Intro to Artificial Intel (If CIS 479 also selected above, an additional Tech Elective is required) | ||
Appl Business Tech for Engr | ||
Entrepreneurial Thinking&Behav | ||
Eng Economy and Dec Anlys | ||
Technical Electives | ||
Select 24 credit hours from the following: | 24 | |
Software Engineering Tools | ||
Prac. Comp. Sec. | ||
Software Engineering II | ||
Industrial Robots | ||
Introduction to Digital Forensics | ||
Programming Languages | ||
Algorithm Analysis & Design | ||
Introduction to Natural Language Processing | ||
Introduction to Quantum Computing | ||
Database Mgmt Systems 1 | ||
or CIS 422 | Massive Data Management | |
Dec Support and Exp Systems | ||
Information Systems | ||
Web Technology | ||
Mobile App Des & Impl | ||
Advanced Networking | ||
Text Mining and Information Retrieval | ||
Wireless & Mobi Comp Security | ||
Intro Computr & Ntwrk Security | ||
Intro to Software Security | ||
Computer Graphics | ||
Information Visualization and Virtualization | ||
Network and Mobile Forensics | ||
Compiler Design | ||
Soft Arch & Design Patterns | ||
Intro to Artificial Intel | ||
Computational Learning | ||
Trustworthy Artificial Intelligence | ||
Deep Learning | ||
Data Security and Privacy | ||
Computer Game Design & Implem | ||
Computer Game Design II | ||
Dynamical Systems | ||
Edge Computing | ||
Introduction to Numerical Analysis | ||
Matrix Computation | ||
Experiential Honors Prof. Prac | ||
Appl Business Tech for Engr | ||
Exper Honors Directed Research | ||
Exper Hnrs Dir Dsgn | ||
Entrepreneurial Thinking&Behav | ||
General Electives | ||
Any 100 to 400 level course with no more than 6 credits, as needed to get a minimum of 120 credits for graduation. |
- 1
Only one course from CIS 421 or CIS 422 may be used towards the 120 credits of the degree.
Information Systems Concentration Requirements
Code | Title | Credit Hours |
---|---|---|
ACC 298 | Financial Accounting | 3 |
IMSE 3005 | Intro to Operations Research | 4 |
CIS 296 | Java Programming | 3 |
or CIS 297 | Intro to C Sharp | |
or CIS 298 | Intro to Python | |
CIS 421 | Database Mgmt Systems | 4 |
CIS 425 | Information Systems | 4 |
CIS 476 | Soft Arch & Design Patterns | 3 |
OB 354 | Behavior in Organizations | 3 |
Two Courses (From below) | 6 | |
Intro to Artificial Intel | ||
Appl Business Tech for Engr | ||
Entrepreneurial Thinking&Behav | ||
Eng Economy and Dec Anlys | ||
Technical Electives | ||
Select 14 credit hours: | 14 | |
Software Engineering Tools | ||
Prac. Comp. Sec. | ||
Software Engineering II | ||
Industrial Robots | ||
Introduction to Digital Forensics | ||
Programming Languages | ||
Algorithm Analysis & Design | ||
Introduction to Natural Language Processing | ||
Introduction to Quantum Computing | ||
Dec Support and Exp Systems | ||
Web Technology | ||
Mobile App Des & Impl | ||
Advanced Networking | ||
Text Mining and Information Retrieval | ||
Wireless & Mobi Comp Security | ||
Intro Computr & Ntwrk Security | ||
Intro to Software Security | ||
Computer Graphics | ||
Information Visualization and Virtualization | ||
Network and Mobile Forensics | ||
Compiler Design | ||
Intro to Artificial Intel | ||
Computational Learning | ||
Trustworthy Artificial Intelligence | ||
Deep Learning | ||
Data Security and Privacy | ||
Computer Game Design & Implem | ||
Computer Game Design II | ||
Edge Computing | ||
Dynamical Systems | ||
Introduction to Numerical Analysis | ||
Matrix Computation | ||
Experiential Honors Prof. Prac | ||
Appl Business Tech for Engr | ||
Exper Honors Directed Research | ||
Exper Hnrs Dir Dsgn | ||
Entrepreneurial Thinking&Behav | ||
General Electives | ||
Any 100 to 400 level course with no more than 6 credits, as needed to get a minimum of 120 credits for graduation. |
Game Design Concentration Requirements
Code | Title | Credit Hours |
---|---|---|
Natural Science | ||
Four additional science credits; must be a different subject than the two course sequence prerequisite: | 4 | |
Introduction to Astronomy and Introductory Astronomy Lab | ||
Intro Org and Environ Biology | ||
Field Biology | ||
General Chemistry IA | ||
General Chemistry IIA | ||
Organic Chemistry I | ||
Organic Chemistry II | ||
Organic Chemistry Laboratory | ||
Physical Geology | ||
Historical Geology | ||
Introductory Physics I | ||
Introductory Physics II | ||
General Physics I | ||
General Physics II | ||
All of the following are required: | ||
CIS 297 | Intro to C Sharp | 3 |
CIS 306 | Discrete Structures II | 4 |
CIS 451 | Computer Graphics | 3 |
CIS 452 | Information Visualization and Virtualization | 3 |
CIS 479 | Intro to Artificial Intel | 3 |
CIS 487 | Computer Game Design & Implem | 3 |
CIS 488 | Computer Game Design II | 3 |
Technical Electives | ||
Select 15 credit hours: | 15 | |
Software Engineering Tools | ||
Prac. Comp. Sec. | ||
Software Engineering II | ||
Industrial Robots | ||
Introduction to Digital Forensics | ||
Algorithm Analysis & Design | ||
Introduction to Natural Language Processing | ||
Introduction to Quantum Computing | ||
Database Mgmt Systems 1 | ||
or CIS 422 | Massive Data Management | |
Dec Support and Exp Systems | ||
Information Systems | ||
Web Technology | ||
Mobile App Des & Impl | ||
Advanced Networking | ||
Wireless & Mobi Comp Security | ||
Text Mining and Information Retrieval | ||
Intro Computr & Ntwrk Security | ||
Intro to Software Security | ||
Network and Mobile Forensics | ||
Compiler Design | ||
Soft Arch & Design Patterns | ||
Computational Learning | ||
Trustworthy Artificial Intelligence | ||
Deep Learning | ||
Data Security and Privacy | ||
Edge Computing | ||
Introduction to Numerical Analysis | ||
Matrix Computation | ||
Experiential Honors Prof. Prac | ||
Appl Business Tech for Engr | ||
Exper Honors Directed Research | ||
Exper Hnrs Dir Dsgn | ||
Entrepreneurial Thinking&Behav | ||
General Electives | ||
Any 100 to 400 level course with no more than 6 credits, as needed to get a minimum of 120 credits for graduation. |
- 1
Only one course from CIS 421 or CIS 422 may be used towards the 120 credits of the degree.
Minor in Computer and Information Science
The minor in CIS requires a minimum of 24 credit hours, which must include CIS 150, CIS 200, CIS 275, CIS 350 and eight additional credit hours at the 300 or 400 level approved by the student’s faculty advisor in CIS. An introduction to calculus (MATH 115) is required and does not count toward the 24 hours. Completion of MATH 116 is strongly recommended.
Learning Goals
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program's discipline.
- Communicate effectively in a variety of professional contexts.
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
- Function effectively as a member or leader of a team engaged in activities appropriate to the program's discipline.
- Apply computer science theory and software development fundamentals to produce computing-based solutions.
CIS 112 Computer Literacy/Info Mgmt 3 Credit Hours
This is a microcomputer literacy course with primary emphasis on the application tools of the word processor, spreadsheets, and database. Additional topics of computer terms, systems, and use in society are included. The course is intended for undergraduates in the College of Arts, Sciences, and Letters. No previous experience with computers is expected. (YR).
CIS 125 Survey of Computer Science 3 Credit Hours
A survey of computer science topics, including history of computing, office productivity software, the internet, HTML, JavaScript, web design, algorithms, assemblers and compilers, gates and logic design, models of computation, artificial intelligence and expert systems, computing ethics, privacy issues, intellectual property. No credit for CIS majors. (F,W,S).
CIS 150 Computer Science I 4 Credit Hours
This course provides a foundation for further studies in computer and information science and emphasizes a structured approach to problem solving and algorithm development. Topics include principles of program design, coding, debugging, testing, and documentation. Students are introduced to the Unified Modeling Language for requirements analysis using use-cases and activity diagrams, an object oriented programming language, and the fundamentals of computer hardware, system software, and components. The course will consist of three lecture hours and one two-hour laboratory.
Prerequisite(s): MATH 115* or MATH 113* or Mathematics Placement with a score of 116
Corequisite(s): CIS 150L
CIS 1501 CS I for Data Scientists 4 Credit Hours
This course provides a foundation for further studies in computer and information science and emphasizes a structured approach to problem solving and algorithm development using a high-level language more suited to data science applications. Topics include principles of program design, coding, debugging, testing, and documentation. Students are introduced to the Unified Modeling Language for requirements analysis using use-cases and activity diagrams, an object-oriented programming language for data science applications, and the fundamentals of computer hardware, system software, and components. The course will consist of three lecture hours and one two-hour laboratory. The labs will cover various data science applications. (F,W,S)
CIS 200 Computer Science II 4 Credit Hours
This course presents techniques for the design, writing, testing, and debugging of medium-sized programs, and an introduction to data structures (stacks, queues, linked lists) using an object-orientated programming language. Topics covered include pointers, templates, and inheritance. The principles of UML modeling are continued. This course will consist of three lecture hours and one two-hour laboratory.
Prerequisite(s): MATH 115 and (CIS 150 or CCM 150)
Corequisite(s): CIS 200L
CIS 2001 CS II for Data Scientists 4 Credit Hours
This course presents techniques for the design, writing, testing, and debugging of medium-sized programs, and an introduction to data structures (stacks, queues, linked lists) using an object-oriented programming language for data science applications. Topics covered include pointers, templates, and inheritance. The principles of UML modeling are continued. This course will consist of three lecture hours and one two-hour laboratory. The labs will cover various data science applications. (F, W, S)
CIS 205 Comp Programming for Engineers 3 Credit Hours
Full Course Title: Computer Programming for Engineers- Intermediate topics in computer programming: arrays, files, structured data types, pointers, functions. Overview of digital computer hardware and system software components: machine architecture, operating systems, computer networks, data security, and performance evaluation. No credit for CIS majors.
Prerequisite(s): ENGR 100 or (MATH 105 or Mathematics Placement with a score of 113)
CIS 275 Discrete Structures I 4 Credit Hours
This course introduces students to various topics in discrete mathematics, such as set theory, mathematical logic, trees, and graph theory. Applications to relational databases, modeling reactive systems and program verification are also discussed. (F,W,S)
Prerequisite(s): (MATH 115 or Mathematics Placement with a score of 116) and CIS 200*
CIS 285 Software Engineering Tools 3 Credit Hours
This course will cover various CASE tools, such as UML modeling and code generation tools, configuration management tools, defect management tools, an integrated development environment for coding and debugging, unit and testing tools, and build tools. Students will learn these tools in a laboratory environment. This course will be comprised of one lecture hour and one two-hour laboratory. (F,W)
Prerequisite(s): CIS 200*
CIS 290 Topic in Programming Languages 2 Credit Hours
One significant programming language is covered in depth. The particular language changes from term to term. The language chosen might be Ada, C, MODULA 2, USP, PROLOG, or SMALLTALK.
Prerequisite(s): CIS 200
CIS 294 Programming with Visual Basic 3 Credit Hours
An introduction to create professional-looking applications using the graphical user interface of Windows. Students learn how to create graphical objects and controls, write event driven code that responds to clicking on buttons, work with multiple forms and executable files. (F,S).
Prerequisite(s): CIS 200 or IMSE 200
CIS 296 Java Programming 3 Credit Hours
Course covers Java Programming language, focusing on GUI development, distributed computing and network applications.
CIS 297 Intro to C Sharp 3 Credit Hours
This course provides an introduction to the C# programming language and the .NET Framework for the development of Windows game applications. Some discussion of DirectX programming and Xbox game development is also included. (W)
CIS 298 Intro to Python 3 Credit Hours
Full Title: Introduction to Python An introduction to the Python programming language and its various libraries, packages, and tookits. The focus of this course will be on the development of analytics/data science applications. (W)
Prerequisite(s): CIS 200
Restriction(s):
Can enroll if Level is Undergraduate
CIS 299 Internship 1 Credit Hour
Student works with an industrial sponsor in the area of CIS. Approval of Internship Coordinator required. (F,W,S).
CIS 306 Discrete Structures II 4 Credit Hours
This course introduces students to further topics in discrete mathematics, including theory of computation, more complexity theory, coding theory, and game theory.
Prerequisite(s): CIS 275
CIS 310 Computer Org and Assembly Lang 4 Credit Hours
The architecture of computer systems and associated software. Topics include digital logic circuits, computer interfacing, interrupt systems, input/output systems, memory systems, assemblers and assembly language programming, and computer networks. (F,W,S).
CIS 316 Prac. Comp. Sec. 3 Credit Hours
Full Title: Practical Aspects of Computer Security THis course provides a practical introduction to a broad range of security topics including legal, ethical and professional issues in information security. Covered topics include: practical computer security principles; firewalls, malware, and intrusion detection; cryptography basics and its applications; mobile devices and related security issues; network technologies and their vulnerabilities. (YR)
Prerequisite(s): CIS 200
Restriction(s):
Can enroll if College is Engineering and Computer Science
CIS 3200 Data Science II 4 Credit Hours
This course provides an overview of what Big Data is and explores its characteristics. It introduces the fundamental technologies, platforms, and methods that enable Big Data analysis, and covers how to acquire, store, and analyze very large amounts of information to complete Big Data analysis tasks. Topics include MapReduce, similarity search, mining real-time data streams, link analysis, clustering, recommender systems, social network graph mining, and large scale data mining tasks. (W)
Prerequisite(s): (CIS 2001 or CIS 200) and (ECE 3100 or STAT 305)
CIS 350 Data Struc and Algorithm Anlys 4 Credit Hours
This course focuses on data design and algorithm design. Data design topics include object-oriented discussions of hashing, advanced tree structures, graphs, and sets. Algorithm design topics include the greedy, divide-and-conquer, dynamic programming, backtracking and branch-and-bound techniques. A significant discussion of algorithm complexity theory, including time and space trade-offs and elementary computability theory, is included. (F,W,S)
CIS 3501 Data Struc & Alg Anlys for SE 4 Credit Hours
This course focuses on data design and algorithm design for software engineers. Data design topics include object-oriented discussions of hashing, advanced tree structures, graphs and sets. Algorithm design topics include the greedy, divide-and-conquer, dynamic programming, backtracking and branch-and-bound techniques. A significant discussion of algorithm complexity theory, including time and space trade-offs and elementary computability theory, is included. (F,W,S)
CIS 375 Software Engineering I 4 Credit Hours
This course presents an in-depth treatment of the following software engineering topics: software engineering paradigms, requirements, specification, functional design, object-oriented design, user interface design, software verification and validation, and the maintenance and management of software engineering artifacts, as well as an introductory discussion of software reliability. Various phases of the software engineering process will be modeled using UML. (F,W)
Prerequisite(s): ((CIS 350 or CIS 3501 or IMSE 350) or (ECE 370 and MATH 276) or (ECE 370 and ECE 276)) and (COMP 270 or COMP 106 or COMP 220 or Composition Placement Score with a score of 40 or Composition Placement Score with a score of 107)
CIS 376 Software Engineering II 4 Credit Hours
This course continues the formal development of the software engineering material begun in CIS 375. Topics covered include personal software process, team software process, formal methods, security, software architecture, software quality assurance, software fault tolerance, the evaluation of the effectiveness of human computer interaction and software reliability. (W,S)
Prerequisite(s): CIS 375
CIS 381 Industrial Robots 4 Credit Hours
The course introduces students in engineering and computer science to fundamentals of robotics technology, programming and their applications in industrial environment. The emphasis will be on robotics anatomy and configurations, robotocs kinematics, end effectors, use of sensors in robotics, robotics programming, design of robot workcell, robotics applications to production problems, cost justifications and robotics safety, rather than on the extensive theory of robotics. Three-hour lecture and three-hour laboratory per week.
Prerequisite(s): MATH 115
Restriction(s):
Can enroll if Class is Junior or Senior
CIS 387 Introduction to Digital Forensics 4 Credit Hours
This course takes a detailed, hands-on approach to study the procedures and techniques used to identify, extract, validate, document and preserve electronic evidence. Students completing this course will be familiar with the core computer science theory and practical skills necessary to perform basic computer forensic investigations, understand the role of technology in investigating computer-based crime, and be prepared to deal with investigative bodies at a basic level.
Prerequisite(s): (CIS 200 or ECE 270) and (CIS 310* or ECE 370* or ECE 372*)
Restriction(s):
Cannot enroll if Class is Freshman
Can enroll if Level is Undergraduate
CIS 390 Topics in Computer Science 1 to 3 Credit Hours
A course designed to offer selected topics in an area of computer science. The specific topics will be announced (together with special prerequisites) each time offered. Students must elect different topics to take both CIS 390 and CIS 391. (OC).
Prerequisite(s): CIS 350 or CIS 3501 or IMSE 350 or (ECE 370 and ECE 276) or (ECE 370 and MATH 276)
CIS 391 Topics in Computer Science II 1 to 3 Credit Hours
A course designed to offer selected topics in an area of computer science. The specific topics will be announced (together with special prerequisites) each time offered. Students must elect different topics to take both CIS 390 and CIS 391. (OC).
Prerequisite(s): CIS 350 or CIS 3501 or IMSE 350 or (ECE 370 and ECE 276) or (ECE 370 and MATH 276)
CIS 399 Internship 1 Credit Hour
Student works with industrial sponsor in the area of CIS. Permission of Internship Coordinator required. (F,W,S).
CIS 400 Programming Languages 4 Credit Hours
Systematic study of programming languages with regard to their implementation, structures, and use. Languages are compared with regard to their various data types, data structures, operations, control structures, programming environments, and ease of use in solving various programming problems. (F,W).
Prerequisite(s): (CIS 350 or IMSE 350 or CIS 3501) or (ECE 370 and MATH 276) or (ECE 370 and ECE 276)
CIS 405 Algorithm Analysis & Design 3 Credit Hours
This course investigates how to design efficient algorithms. Topics include asymptotic analysis, amortized analysis, divide-and-conquer, dynamic programming, greedy algorithms, branch and bound, backtracking, lower bounds, NP-completeness and approximation algorithms.
Prerequisite(s): CIS 350
CIS 411 Introduction to Natural Language Processing 3 Credit Hours
This course provides an introduction to the theory and practice of natural language processing (NLP), as well as the approaches that allow understanding, generating, and analyzing natural language. The course will cover the three major areas in NLP: syntax, semantics, and pragmatics. The course will introduce both knowledge-based and statistical approaches to NLP, illustrate the use of NLP techniques and tools in a variety of application areas, and provide insight into many open research problems. (YR)
CIS 412 Introduction to Quantum Computing 3 Credit Hours
This course provides an introduction to the theory and practice of quantum computing. It covers the basic background of quantum physics principles, mathematical modeling of quantum states and quantum operations, and some important quantum algorithms such as Shor's factoring algorithm, Grover's search algorithm, and Quantum Teleportation. Students cannot receive credit for both CIS 412 and CIS 512.
Prerequisite(s): ((CIS 350 or CIS 3501 or IMSE 351) or (ECE 370 and (ECE 276 or MATH 276)) ) and (IMSE 317* or STAT 325*)
CIS 421 Database Mgmt Systems 4 Credit Hours
An introduction to database systems, concepts, and techniques. Topics covered include: database environments, ER modeling, relational data model, object-oriented databases, database design theory and methodology, database languages, query processing and optimization, concurrency control, database recovery, and database security.
Prerequisite(s): CIS 350 or CIS 3501 or IMSE 351 or (ECE 370 and MATH 276)
CIS 422 Massive Data Management 4 Credit Hours
An introduction to database systems, concepts, and techniques for big data. The course discusses classical relational technologies, and then covers the more current approaches to managing massive amounts of data for analytics purposes. Topics include database environments, database design, the relational data model, normalization, SQL, query processing, parallel databases and query processing, in-database analytics, data warehousing, key-value and column stores, NoSQL and NewSQL approaches for managing massive data. (F)
Prerequisite(s): (CIS 350 or CIS 3501 or IMSE 350) or (ECE 370 and ECE 276) or (ECE 370 and MATH 276)
CIS 425 Information Systems 4 Credit Hours
This course provides in-depth coverage of advanced infrastructures for the development of next-generation information systems/ Topics include information systems, data integration, XML, web services, ontologies, workflow, data warehousing, and data mining.
Prerequisite(s): CIS 375 and (CIS 421* or CIS 422*)
Restriction(s):
Cannot enroll if Class is Freshman or Sophomore
CIS 427 Comp Networks and Dis Process 4 Credit Hours
Study of the management aspects of computing networks and distributed systems. Topics include network architectures (ISO/OSI, TCP/IP, ATM), communication hardware (transmission media, network adaptors, switches), encoding, framing, error detection and correction, reliable transmission, data link control and LAN technology, internetworking, routing/congestion control, network design/management.
Prerequisite(s): ((CIS 350 or CIS 3501 or IMSE 351) or (ECE 370 and MATH 276) or (ECE 370 and ECE 276)) and IMSE 317
CIS 435 Web Technology 3 Credit Hours
This course deals with the study of technologies used to design and implement multimedia web sites. Topics include web servers, HTML, CGI, scripting languages, Java applets, back-end database connectivity, web security, multimedia, XML. (F,W).
Prerequisite(s): CIS 375* or CIS 553*
Restriction(s):
Can enroll if Class is Junior or Senior
Can enroll if Level is Undergraduate
Cannot enroll if Major is
CIS 436 Mobile App Des & Impl 3 Credit Hours
This course introduces students to the development of software applications for programmable mobile and wireless intelligent hand-held devises. Topics covered include the different mobile development platforms, best practices in mobile user interaction design, software quality assurance in mobile environment, security and privacy issues, and context-aware computing. Students will participate in a final project.
Prerequisite(s): CIS 375*
Restriction(s):
Can enroll if Class is Junior or Senior
Can enroll if Level is Undergraduate
Can enroll if College is Engineering and Computer Science or Arts, Sciences, and Letters
CIS 437 Advanced Networking 3 Credit Hours
Topics include an overview of the internet, congestion control, quality of service, internet multicasting, multimedia networking, mobile and wireless networks, vehicular networks, overlay networks, peer-to-peer networks, internet management (SNMP), and internet applications (web-HTTP and email-SMTP).
Prerequisite(s): CIS 427
Restriction(s):
Cannot enroll if College is Business
CIS 439 Text Mining and Information Retrieval 3 Credit Hours
This course covers techniques for retrieving ranked relevant documents from a text repository based on user queries, using various techniques for extracting and representing latent knowledge from these documents. Topics also include language models, summarization, topic modeling, entity extraction, sentiment analysis, and embeddings.
Prerequisite(s): (CIS 350 or CIS 3501 or IMSE 350) or (ECE 370 and (ECE 276 or MATH 276))
CIS 446 Wireless & Mobi Comp Security 3 Credit Hours
Full course title: Wireless and Mobile Computing Security. The course focuses on security and privacy issues in the area of wireless networks and mobile computing such as cellular networks, wireless LANs, connected vehicles, smart and mobile devices, sensors and sensor networks, IoT, etc. The course will first present on overview of wireless communication and wireless systems, then focus on attacks, discuss proposed solutions and their limitations. Topics of this course include:(1) introduction to security primitives and wireless networks; (2) security issues in single-hop wireless networks that include cellular networks, RFID, modern vehicle, smartphone security; (3) security issues in multi-hop wireless network that include Mobile Ad Hoc network, wireless sensor network and vehicular network security. (YR)
CIS 447 Intro Computr & Ntwrk Security 3 Credit Hours
This course will provide a broad-spectrum introduction to the fundamental principles of computer and network security. Topic will include security policies, models and mechanisms for confidentiality, integrity and availability, access control, authorization, cryptography and applications, threats and vulnerabilities in computer networks, key management, firewalls and security services in computer networks.
Prerequisite(s): CIS 450*
Restriction(s):
Cannot enroll if College is Education, Health, and Human Services or Business
CIS 449 Intro to Software Security 3 Credit Hours
This course provides a broad-spectrum introduction to the fundamental principles of software security, as well as the approaches that allow understanding common software practices, analyzing programs for vulnerabilities, and methods for developing secure software systems. The course will cover three major areas: software attacks and defenses, program analysis, and software verification. Various forms of software will be considered in this class including high level applications and system software. The course will also provide insight into many open research problems in this area. (YR)
Prerequisite(s): CIS 350 or CIS 3501 or IMSE 350 or (ECE 370 and ECE 276) or (ECE 370 and MATH 276)
CIS 450 Operating Systems 3 or 4 Credit Hours
Introduction to computer operating systems. Process management, CPU scheduling, memory management, file systems and I/O devices. Advanced topics, e.g., multiprogramming and multitasking, virtual memory, deadlock, I/O, job scheduling, and performance analysis using queueing models, will be introduced. Case studies of modern operating systems. A design project is required.
Prerequisite(s): CIS 310 and (CIS 350 or CIS 3501 or IMSE 350 or (ECE 370 and MATH 276) or (ECE 370 and ECE 276)) and IMSE 317*
CIS 451 Computer Graphics 3 Credit Hours
Basic geometrical concepts: graphics output primatives, two-dimensional transformations, windowing and clipping, three-dimensional viewing, visible surface detection methods, and graphical user interfaces. (F).
Prerequisite(s): (MATH 217 or MATH 227 or MATH 228) and ((CIS 350 or CIS 3501 or IMSE 350) or (ECE 370 and MATH 276) or (ECE 370 and ECE 276))
CIS 452 Information Visualization and Virtualization 3 Credit Hours
This course introduces basic techniques for visualization, virtualization, digital animation, computer and video games, and web multimedia. Topics include data visualization, the process of creating animated video clips from start to finish (including story creation, storyboarding, modeling, animation, and post-production), and computer virtualization; several key techniques include graphic design, video editing, motion generation, multimedia, real-time rendering, visualization tools, and virtual machines.
Prerequisite(s): CIS 451 or CIS 487 or CIS 450
Restriction(s):
Cannot enroll if College is Education, Health, and Human Services or Business
CIS 467 Network and Mobile Forensics 4 Credit Hours
Following an overview of essential principles of digital forensics, this course focuses on studying network and mobile Forensics. Students will examine in-depth concepts in evidence collection and preservation, live incident response, activity reconstruction, as well as applications of contemporary commercial forensic investigative software, in network and mobile environments.
Prerequisite(s): (CIS 427* or ECE 471*)
Restriction(s):
Cannot enroll if Class is Freshman
Cannot enroll if College is Business
CIS 474 Compiler Design 3 Credit Hours
Principles of language compilation. Introduction to formal languages, lexical analysis, top-down and bottom-up parsing, code generation and optimization. Error handling and symbol table management, run-time storage management, programming language design. Introduction to compiler-writing tools such as LEX and YACC.
Prerequisite(s): CIS 350 or CIS 3501 or IMSE 350 or (ECE 370 and MATH 276)
CIS 476 Soft Arch & Design Patterns 3 Credit Hours
This course focuses on design patterns in object-oriented programming. This course begins with an overview of UML and a review of object-oriented programming and then moves on to various structural, behavioral and creational patterns, including: facades, adaptors, bridges, factories and the template method. Analysis of case studies will also be discussed. Using various modern software tools, students will apply various design patterns to real-world software design problems to gain complete practical understanding. (F,W)
Prerequisite(s): CIS 375
Restriction(s):
Can enroll if College is Engineering and Computer Science
CIS 479 Intro to Artificial Intel 3 Credit Hours
This course introduces students to basic concepts and methods of artificial intelligence from a computer science perspective. Emphasis of the course will be on the selection of data representations and algorithms useful in the design and implementation of intelligent systems. The course will contain an overview of one AI language and some discussion of important applications of artificial intelligence methodology. (S).
Prerequisite(s): (CIS 350 or CIS 3501 or IMSE 350 or (ECE 370 and MATH 276) or (ECE 370 and ECE 276)) and (IMSE 317 or STAT 325)
CIS 481 Computational Learning 3 Credit Hours
This course covers basic computational aspects of learning to perform a task and improve with experience. Topics include learning frameworks and problem formulations; standard models, methods, computational tools, algorithms and modern techniques; and methodologies to evaluate learning ability and to automatically select optimal models. The main focus is on computer science (e.g., basic runtime, space and complexity analysis, programming, and empirical evaluations?. Simple applications to areas such as computer vision, natural language processing (NLP), and robotics will also motivate the course material. (W)
Prerequisite(s): CIS 306 and (MATH 217* or MATH 227*) and (IMSE 317* or BENG 364* or MATH 425* or STAT 325*)
Restriction(s):
Cannot enroll if Class is Graduate or Doctorate
CIS 482 Trustworthy Artificial Intelligence 3 Credit Hours
This course introduces the broad and evolving notion of trustworthy artificial intelligence (AI). It covers three broad areas of trustworthiness in AI: robustness, transparency, and accountability. For robustness, the course introduces the AI threat landscape focusing on training data poisoning, model evasion, privacy-sensitive data inference, model stealing/extraction, and threats to safe deployment of AI. For transparency, the course covers frameworks used to interpret/explain AI model’s decisions. For accountability, the course discusses methods and tools for reducing bias and ethical pitfalls when AI models are deployed in high-stakes application domains. The course also discusses the dynamics among the three broad AI trustworthiness desirables. The course adopts a predominantly project-based setting to enhance hands-on experience. (W).
Prerequisite(s): CIS 350 or CIS 3501 or IMSE 350 or (ECE 270 and MATH 276) or (ECE 270 and ECE 276)
CIS 483 Deep Learning 3 Credit Hours
This course is an introduction to deep learning, a branch of machine learning concerned with the development and application of modern deep neural networks. Students will learn to build up deep learning models and review the state-of-the-art deep learning literature to solve real-world computational problems. Students will delve into selected deep learning topics, discussing a range of model architectures such as CNN (convolutional neural network), RNN (recurrent neural network), LSTM (long short-term memory network), GAN (generative adversarial network), etc., and commonly used model optimizers. Students will learn to deploy these methods to real-life applications.
Prerequisite(s): CIS 350 or CIS 3501 or IMSE 350 or (ECE 270 and ECE 276) or (ECE 370 and MATH 276)
CIS 4851 Data Security and Privacy 3 Credit Hours
This course covers basics of data security and privacy techniques, which can facilitate the use of data in a secure and privacy-sensitive way. Topics include security and privacy challenges due to data collection and analytics, technologies and strategies for data security and privacy (access control mechanism, integrity policy, cryptography and encryption, notice and consent, anonymization or de-identification, deletion and non-retention). (W)
CIS 487 Computer Game Design & Implem 3 Credit Hours
This course deals with the study of the technology, science and art in the creation of computer games. The focus of the course will be hands-on development of computer games. Students will study a variety of software technologies relevant to computer game design, including programming languages, scripting languages, operating systems, files systems, networks, simulation engines and multi-media design systems. Lecture topics will be taken from several areas of computer science: simulation and modeling, computer graphics, artificial intelligence, real-time processing, game theory, software engineering, human computer interaction, graphic design and game aesthetics. (F).
Prerequisite(s): CIS 375*
Restriction(s):
Can enroll if Class is Junior or Senior
Cannot enroll if Major is
CIS 488 Computer Game Design II 3 Credit Hours
This course is a continuation of the material studied in CIS 487. The focus of the course will be hands-on development of computer game development tools (e.g. game engines). Students will study a variety of software technologies relevant to computer game design, including: 3D graphics, computer animation, data-driven game design, multiplayer game programming, and game AI. Lecture topics will be taken from several areas of computer science: simulation and modeling, computer graphics, artificial intelligence, game theory, software engineering, human computer interaction and game content development. (W)
Prerequisite(s): CIS 487
Restriction(s):
Can enroll if Class is Junior or Senior
Cannot enroll if Major is
CIS 489 Edge Computing 3 Credit Hours
This course introduces state-of-the-art edge computing technologies and their applications in data-intensive distributed systems like smart homes, Internet of Things, and connected vehicles. Topics include edge computing applications and platforms, edge-based sensor data collection and processing, computation offloading and QoS-optimal task scheduling, and security/privacy. This course will also explore the current challenges facing edge computing. Participation in a project is a requirement in this course.
Prerequisite(s): CIS 350 or CIS 3501 or IMSE 350 or (ECE 270 and ECE 276) or (ECE 370 and MATH 276)
CIS 490 Advanced Topics 1 to 3 Credit Hours
This course is intended for seniors and graduate-level students in CIS. For specific topic, consult current semester's Schedule of Classes. (OC).
Prerequisite(s): CIS 350 or CIS 3501 or IMSE 350 or (ECE 270 and ECE 276) or (ECE 370 and MATH 276)
CIS 491 Research Project I 1 to 4 Credit Hours
Provides the advanced student with the opportunity to undertake a research project under the supervision of a faculty member. At least two weeks prior to registration in the semester when such a course is to be elected, an interested student must submit to the CIS chair and one CIS faculty member a written request for permission to elect a research course on the appropriate form available in the CIS Office. The request will include a description of the proposed research project. The CIS chair will review the proposal with faculty members to ascertain availability of relevant faculty supervision and to establish appropriate credit. Grades will be granted on a Pass/Fail (S/E) basis exclusively. (F,W,S).
Restriction(s):
Can enroll if Class is Senior
Can enroll if Major is CIS/Information Systems
CIS 492 Research Project II 1 to 4 Credit Hours
This course is a second registration for a research project in CIS. (F,W,S).
Restriction(s):
Can enroll if Class is Senior
Can enroll if Major is CIS/Information Systems
CIS 493 Independent Study I 1 to 4 Credit Hours
Readings or analytical assignments in accordance with the needs and interests of those enrolled and agreed upon by the student and an instructor, which shall not duplicate a formal course offering. Permission of instructor required. (F,W,S).
CIS 494 Independent Study II 1 to 4 Credit Hours
This course is a second registration for an independent study in CIS. Permission of instructor required. (F,W,S).
CIS 4951 Design Seminar I 2 Credit Hours
Students participate in the design and implementation of a major software project. Seminar topics discussed include: computing ethics and professional practice. (F,W,S)
Prerequisite(s): CIS 375 and CIS 427 and CIS 450
Restriction(s):
Can enroll if Class is Senior
Can enroll if College is Engineering and Computer Science
CIS 4952 Design Seminar II 2 Credit Hours
Students continue to participate in the design and implementation of a major software project. Seminar topics discussed include: computing ethics and professional practice. (F,W,S)
Prerequisite(s): CIS 4951
Restriction(s):
Can enroll if College is Engineering and Computer Science
CIS 4961 Design Seminar for SE I 2 Credit Hours
Software engineering students participate in the design and implementation of a major software project. Seminar topics discussed include: computing ethics and professional practice in software engineering. (F,W,S)
Prerequisite(s): CIS 376
Restriction(s):
Can enroll if Class is Senior
Can enroll if College is Engineering and Computer Science
CIS 4962 Design Seminar for SE II 2 Credit Hours
Software engineering students continue to participate in the design and implementation of a major software project. Seminar topics discussed include: computing ethics and professional practice in software engineering.
Prerequisite(s): CIS 4961 and CIS 476*
Restriction(s):
Can enroll if College is Engineering and Computer Science
CIS 4971 Cap Sem for Data Sci I 2 Credit Hours
Data science students participate in the design and implementation of a major data science project. Seminar topics discussed include: computing ethics and professional practice in data science. (F, W, S)
Prerequisite(s): CIS 3200 and (STAT 325 or IMSE 317)
Restriction(s):
Can enroll if Class is Senior
CIS 4972 Cap Proj for Data Sci II 2 Credit Hours
Data science students continue to participate in the design and implementation of a major data science project. Seminar topics discussed include: computing ethics and professional practice in data science. (F, W, S)
Prerequisite(s): CIS 4971 and STAT 430*
Restriction(s):
Can enroll if Class is Senior
CIS 4981 Design Seminar for CIS-DS I 2 Credit Hours
Full Course Title: Design Seminar for Dual Degree CIS-DS Majors I Dual degree CIS and Data Science students participate in the design and implementation of a major software project involving. data science. Seminar topics discussed include computing ethics and professional practice in data science. (F,W,S)
Prerequisite(s): CIS 375 and CIS 3200 and (STAT 325 or IMSE 317) and CIS 427 and CIS 452
Restriction(s):
Can enroll if Class is Senior
CIS 4982 Design Seminar for CIS-DS II 2 Credit Hours
Dual Degree CIS and Data Science students participate in the design and implementation of a major software project involving data science. Seminar topics discussed include computing ethics and professional practice in data science. (F,W,S)
Prerequisite(s): CIS 4981 and STAT 430*
Restriction(s):
Can enroll if Class is Senior
CIS 499 Internship 1 Credit Hour
Student works with industrial sponsor in area of CIS. Approval of Internship Coordinator required. (F,W,S).
*An asterisk denotes that a course may be taken concurrently.
Frequency of Offering
The following abbreviations are used to denote the frequency of offering: (F) fall term; (W) winter term; (S) summer term; (F, W) fall and winter terms; (YR) once a year; (AY) alternating years; (OC) offered occasionally