Engineering Real-World Solutions

Rapid changes in technology and innovation in the ongoing computerization of society are fundamentally changing how engineering and service industries and organization design, produce and deliver products and services to their customers.  Such innovations are creating a significant need for computer scientists with knowledge beyond the bachelor's degree.  The Computer and Information Science (CIS) department offers programs at the Masters and Ph.D. levels.

In CIS, students have the opportunity to receive a unique education, faculty mentorship, opportunities to conduct theoretical and translational research.  Students not only advance their knowledge, improve technical skills and expertise to advance professionally but also make a positive impact on society.  We invite you to explore our programs.

 

Graduate Advising

For additional academic/admission information or to schedule an advising appointment for a specific graduate program, please contact the corresponding program committee chair, whose contact information can be found on the overview page of the corresponding program. For general information about our graduate programs, please contact the graduate coordinating committee chair: Dr. Brahim Medjahed via email: brahim@umich.edu.

Graduate Courses

Please consult the list of courses offered by the department. Course availability is subject to change. Please contact the department for the most updated list of offerings.

500-Level Courses

CIS 505 - Algorithm Analysis and Design [F, Sp]
This course discusses how to design efficient algorithms. Topics include asymptotic analysis, average-case and worse-case analysis, recurrence analysis, amortized analysis, classical algorithms, computational complexity analysis, NP-completeness, and approximation algorithms. In addition, the course investigates approaches to algorithm design including: greedy algorithms, divide and conquer, dynamic programming, randomization, and branch and bound. (3 credits)
Prerequisites: CIS 350 or CIS 3501 or IMSE 350 or (ECE 370 and MATH 276) or (ECE 370 and ECE 276).
Restrictions:
Level: Graduate or Rackham or Doctorate.
No credit given to both CIS 405 and CIS 505.

CIS 511 - Natural Language Processing [F]
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 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. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), or Data Science (MS).
No credit given to both CIS 411 and CIS 511.

CIS 515 - Computer Graphics [F]
Basic geometrical concepts, graphics primitives, two-dimensional transformations, segmented files, windowing and clipping, camera models, and 3-D viewing transformations. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), or Computer Engineering (MSE).
No credit given to both CIS 451 and CIS 515.

CIS 525 - Web Technology [F]
This course deals with the study of the 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, web services, .NET, semantic web. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Cybersecurity and Information Assurance (MS), or Information Systems and Technology (MS).
No credit given to both CIS 435 and CIS 525.

CIS 527 - Computer Networks [F]
To study the technical and management aspects of computer networks and distributed systems. Topics include: communication hardware, communication protocols, network architectures, local area networks, distributed database systems. Case studies and research project will be assigned for additional insight. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Cybersecurity and Information Assurance (MS), Information and System Technology (MS), or Computer Engineering (MSE).
No credit given to both CIS 427 and CIS 527.

CIS 534 - The Semantic Web [F]
The aim of this course is to investigate the fundamental concepts, techniques, and technologies for enabling the envisioned semantic web. The topics to be covered include ontologies, domain modeling, logic, reasoning and inference techniques, semantic web services, and ontology interoperation/mappings. We will review major semantic web research projects, as well as current technologies for enabling the semantic web. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major:  Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), or Information Systems and Technology (MS).

CIS 535 - Wireless Technologies and Pervasive Computing [W]
This course covers contemporary technologies for programmable mobile and wireless intelligent hand-held devices. Students will get an overview of mobile operating system concepts/techniques and will learn how to develop software for mobile/smart devices, with particular emphasis on the constraints intrinsic to such devices. Topics in location-based services and pervasive computing will also be covered. Participation in a project is a requirement in this course. This class requires knowledge in computer programming. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Cybersecurity and Information Assurance (MS), or Computer Engineering (MSE).

 CIS 536 - Text Mining and Information Retrieval [F]
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. A significant aspect of this course is participation in a medium to large-scale project. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Cybersecurity and Information Assurance (MS), or Data Science (MS).

CIS 537 - Advanced Networking and Distributed Systems [W]
This course focuses on the design, implementation, analysis, and evaluation of large-scale networked systems. Specific networking topics include congestion/flow control, traffic analysis, routing, internetworking, multicast, mobile and wireless networks, quality of service, and security. Fundamental distributed systems topics include domain name service, global routing protocols, content delivery networks, and peer-to-peer systems. (3 credits)
Prerequisites: CIS 527.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 540 - Foundation of Information Security [F]
This course provides the foundation for understanding the key issues associated with protecting information assets, determining the levels of protection and response to security incidents, and designing a consistent, reasonable information security system, with appropriate intrusion detection and reporting features. The purpose of the course is to provide the student with an overview of the field of information security and assurance. Students will be exposed to the spectrum of security activities, methods, methodologies, and procedures. Coverage will include inspection and protection of information assets, detection of and reaction to threats to information assets, and examination of pre- and post-incident procedures, technical and managerial responses, and an overview of the information security planning and staffing functions. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), Cybersecurity and Information Assurance (MS), or Information Systems and Technology (MS).

CIS 544 - Computer and Network Security [F]
This course will provide a broad-spectrum introduction to the fundamental principles of computer and network security. Topics 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. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Cybersecurity and Information Assurance (MS), Software Engineering (MS), Information Systems and Technology (MS), or Computer Engineering (MSE).
No credit given to both CIS 447 and CIS 544.

CIS 545 - Data Security and Privacy [F]
With the continuing proliferation of ways to collect and use information about people, there is a great concern whether such use of information about people affects privacy adversely. 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 big 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). (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major:  Computer and Information Science (MS, PhD), Data Science (MS), Software Engineering (MS), or Cybersecurity and Information Assurance (MS).
No credit given to both CIS 4851 and CIS 545.

CIS 546 - Security and Privacy in Wireless Networks [W]
This course focuses on security issues in wireless networks, such as cellular networks, wireless LANs, mobile ad-hoc networks, vehicular networks, sensor networks, and RFID. The course will first present an overview of wireless networks, then focus on attacks and discuss proposed solutions and their limitations. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Cybersecurity and Information Assurance (MS), Information Systems and Technology (MS), or Computer Engineering (MSE).
No credit given to both CIS 446 and CIS 546.

CIS 548 - Security and Privacy in Cloud Computing [F]
This course covers the major security and privacy topics in cloud computing. The goals of this course are to familiarize students with the major security and privacy issues and challenges associated with cloud computing, and to show them how to address them. Topics include outsourced storage security and privacy, outsourced computation security and privacy, secure virtualization and cloud platform security, trusted cloud computing technology, key management in the cloud, cloud forensics, cloud-related regulatory and compliance issues, and business and security risk models. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), Cybersecurity and Information Assurance (MS), Information Systems and Technology (MS), or Computer Engineering (MSE).

CIS 549 - Software Security [W]
This course provides a broad-spectrum introduction to the fundamental principles of software security, as well as the approaches that allow understanding common software security 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. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), or Cybersecurity and Information Assurance (MS).
No credit given to both CIS 449 and CIS 549.

CIS 550 - Object-Oriented Programming and Its Applications [Sp]
This course covers the major concepts involved in object-oriented programming, including inheritance, polymorphism, encapsulation and patterns in C# and Java. Topics include standalone objects, distributed objects, and objects in web services and cloud computing environments. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Cybersecurity and Information Assurance (MS), Software Engineering (MS), or Information Systems and Technology (MS).

CIS 551 - Advanced Computer Graphics [W]
Introduction to curves, surfaces, and solids, Bezier and B-spline curves, spline surfaces, intersections of curves and surfaces, blending methods, illumination models and surface rendering, solid modeling-wireframe, and constructive solid geometry. (3 credits)
Prerequisites: CIS 515.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 552 - Information Visualization and Virtualization [W]
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. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), or Computer Engineering (MSE).

CIS 553 - Software Engineering [F]
Program design methodologies, control flow and data flow in programs, program measurement, software life cycle, large program design, development, testing, and maintenance, software reliability and fault tolerance, and evolutionary dynamics of software. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Cybersecurity and Information Assurance (MS), or Information Systems and Technology (MS).

CIS 554 - Information Systems Analysis and Design [W]
Analysis of the information needs of organizations and the design of suitable information systems to meet their needs. Topics include: systems analysis and design techniques related to analyzing and determining information needs, feasibility studies, designing input/processing/output systems, and hardware/software development and evaluation. (3 credits)
Prerequisites: CIS 350 or equivalent. 

CIS 555 - Decision Support and Expert Systems [F]
The application of artificial intelligence to building decision support and expert systems for management and other applications. Topics include fundamentals of artificial intelligence, knowledge representation and knowledge processing, tools for building expert systems (logic programming, expert shells), decision support system design (modeling and simulation), expert system design (knowledge engineering, learning). (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD) or Data Science (MS).
No credit given to both CIS 423 and CIS 555.

CIS 556 - Database Systems [F, W]
Introduction to database system concepts and techniques. Topics covered include: database environment, ER model, relational data model, object-oriented databases, object-relational databases, database design theory and methodology, database languages, query processing and optimization, concurrency control, database recovery, and database security. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), Cybersecurity and Information Assurance (MS), or Information Systems and Technology (MS).
No credit given to both CIS 421 and CIS 556.

CIS 5570 - Introduction to Big Data [F, W]
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. Students will gain hands-on experience in real-world applications of Big Data such as in cyber-physical systems and health informatics. Most of the work in this course will be team-based and task-oriented. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), Cybersecurity and Information Assurance (MS), or Information Systems and Technology (MS).

CIS 559 - Principles of Social Network Science [W]
This course presents an in-depth study of various types of information networks, which range from the structure and behavior of the world-wide web, to the structure and behavior of various collaboration networks, such as bibliographic citations, viral marketing, and online social networks. Using concepts from graph theory and game theory, topics include small-world networks, scale-free networks, the structure of the web, link analysis and web search, and influence networks. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), or Information Systems and Technology (MS).

CIS 562 - Web Information Management [F]
This course provides an in-depth examination of advances in web information management, retrieval and applications. Topics covered include: web interfaces to databases, XML standards, web database design, web database architectures, web query languages, web data restructuring, web information integration, semantic web and ontologies, and web mining. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Data Science (MS), Software Engineering (MS), Cybersecurity and Information Assurance (MS), or Information Systems and Technology (MS).

CIS 563 - Modeling of Computer-Based Systems [Sp]
Modeling and simulation concepts and methodologies. The use of modeling and simulation as a tool for both the analysis of particular systems and the development of their information systems support. Topics covered include the Systems Entity Structure/Model Base (SES/MB) framework and the discrete event systems specification formalism. Continuous and discrete models will be considered for different types of computer-based systems. (3 credits)
Prerequisites: Graduate standing. 

CIS 564 - Principles of Organizational Information Systems [F]
Foundation for the analysis, design, and implementation of enterprise information systems. Topics include systems and organization theories, information systems planning and evaluation, and various systems development life-cycle phases of an enterprise information system. Flow of information (forecasts, financial, accounting, and operational data) within an enterprise and factors that should be considered in designing an integrated enterprise information system. This includes all systems in the business cycle from revenue forecasts, production planning, inventory management, logistics, manufacturing, accounts payable, sales, accounts receivable, payroll, general ledger and report generation. Specification for some of these systems will be developed utilizing ERP software such as the SAP R/3 application development software suite. (3 credits)
Prerequisites: Graduate standing. 

CIS 565 - Software Quality Assurance [W]
The processes, methods, and techniques for developing quality software, for assessing software quality, and for maintaining the quality of software. Software testing at the unit, module, subsystem and system levels, automatic and manual techniques for generating and validating test data, the testing process, static vs. dynamic analysis, functional testing, inspections, and reliability assessment. Tradeoffs between software cost, schedule, time and quality, integration of quality into the software development process, as well as the principles of test planning and test execution. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Cybersecurity and Information Assurance (MS), or Information Systems and Technology (MS).

CIS 566 - Software Architecture and Design Patterns [F, W]
Architectural and software design patterns in theory and in practice, with various applications. The course will end with a case study and design exercise demonstrating identification and utilization of architectural design patterns in a real world application. Students will test their understanding by completing projects utilizing popular design patterns and a term project utilizing a multitude of patterns. Class presentation of published advanced patterns may be required. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Cybersecurity and Information Assurance (MS), or Software Engineering (MS).
No credit given to both CIS 476 and CIS 566.

CIS 568 - Data Mining [F]
Advances in computer information systems, machine learning, statistics, intelligent systems, and methodologies for the automatic discovery of knowledge from large high-dimensional databases. This course also uses engineering development tools such as neural networks, fuzzy logic, and genetic algorithms. (3 credits)
Prerequisites: ECE 479 or CIS 479
Restrictions:
College: College of Engineering and Computer Science.

CIS 569 - Wireless Sensor Networks [W]
This course provides students with an overview of wireless sensor networks and the issues related to their design and implementation. It introduces students to the state-of-the-art in wireless sensor networking and helps them solve problems in designing and deploying resource-limited sensor networks for real-world sensing applications. During this course, students are required to work in teams to design and implement some primitive sensing applications. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), or Computer Engineering (MSE).

CIS 5700 - Advanced Data Mining [W]
This course provides an in-depth study of advanced data mining, data analysis, and pattern recognition concepts and algorithms. Course content builds upon a first data mining course and explores advanced machine learning algorithms, high-dimensional data, graph and temporal data, and advanced methods and applications to deal with dynamic stream data. Various applications will be considered, including social networks and health informatics. Students will be able to understand the research methods applied in the field and conduct an end-to-end data mining project and document and present the results. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), Cybersecurity and Information Assurance (MS), or Computer Engineering (MSE).

CIS 571 - Web Services [W]
In this course, we study the major concepts and techniques for enabling service based interactions on the Web.  The objective is to familiarize the students with the recent trends in industry and academia to address service computing research and implementation issues. The course will address various aspects of service computing including SOAP Services, WSDL, REST services, service composition and mashup, security, privacy, service management as well as recent trends in service computing such as cloud, Internet of Things (IoT), social media, crowdsourcing, and big data. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), Cybersecurity and Information Assurance (MS), or Information Systems and Technology (MS).

CIS 572 - Object-Oriented Systems Design [Sp]
Fundamental concepts and methods of object-oriented design and development. Topics include object-oriented database concepts, data models, schema design, query languages, physical storage of objects and indexes on objects, version management, schema evolution and system issues such as concurrent control and recovery from failure. For application programming, a programming language such as C will be used for database design and query language. (3 credits)
Prerequisites: Graduate standing and an advanced programming language. 

CIS 574 - Compiler Design [W]
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. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), or Cybersecurity and Information Assurance (MS).
No credit given to both CIS 474 and CIS 574.

CIS 575 - Software Engineering Management [W]
Quantitative models of the software lifecycle, cost-effectiveness, uncertainty and risk analysis, planning and modeling a software project, software cost estimation (COCOMO, Function points), software engineering metrics; software project documentation. Special emphasis on emerging software process standards such as the Capability Maturity Model of the Software Engineering Institute, and others. (3 credits)
Prerequisites: CIS 553 or equivalent.

CIS 577 - Software User Interface Design [W]
Current theory and design techniques concerning how user interfaces for computer systems should be designed to be easy to learn and use. Focus on cognitive factors, such as the amount of learning required, and the information processing load imposed on the user. Emphasis will be on integrating multimedia in the user interface. (3 credits)
Prerequisites: Previous or concurrent enrollment in CIS 553 or equivalent. 

CIS 578 - Advanced Operating Systems [F, W]
Advanced techniques used in operating system design. Distributed operating systems, message-based operating systems, operating systems for parallel architectures, layered techniques in operating systems, formal models of operating systems, current trends in operating system design. (3 credits)
Prerequisites: CIS 450 or IMSE 450 or ECE 478.
Restrictions:
College: College of Engineering and Computer Science.

CIS 579 - Artificial Intelligence [F, W, Sp]
This course introduces students to the essential concepts, methods, and techniques of artificial intelligence (AI) from a computer science perspective. The general topics of the course will include a variety of knowledge representations and algorithms for inference, decision-making, planning, and learning. Modern intelligent systems, including those that can handle uncertainty, will serve to motivate the course material. The course will cover topics at a depth appropriate for an introductory AI course at the graduate level. A student project may be required. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), Cybersecurity and Information Assurance (MS), or Computer Engineering (MSE).
No credit given to both CIS 479 and CIS 579.

CIS 580 - Data Analytics in Software Engineering [F]
This course focuses on state-of-the-art methods, tools, and techniques for evolving software. Topics such as reverse engineering, design recovery, program analysis, program transformation, refactoring, and traceability will be covered. There will be a project in which student teams participate. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), or Cybersecurity and Information Assurance (MS).

CIS 581 - Computational Learning [W]
This graduate-level course covers computational aspects of learning from experience to making inferences and providing improved decisions. The main focus is an in-depth examination of the computational learning landscape from the viewpoint of a computer scientist. We will focus on such computer science concerns as basic runtimes, time/space complexity analysis, programming aspects, and empirical evaluations, including the appropriateness of various techniques for particular problems. Topics include learning frameworks and problem formulations, standard models, methods, computational tools, algorithms and modern techniques, and methodologies to evaluate learning ability to automatically select optimal models. Applications to areas such as visual analysis, natural language processing, and multimodal interaction will also motivate the course material. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
Major: Computer and Information Science (MS, PhD), Software Engineering (MS), Data Science (MS), Cybersecurity and Information Assurance (MS).

CIS 584 - Advanced Computer and Network Security [W]
This course consists of an in-depth examination of current technological advancements in computer and network security. Topics will include secure group communication (key generation, distribution, and management), secure routing and multitasking, identity-based encryption, digital signatures, broadcast authentication, device pairing, and malware/intrusion detection and mitigation. (3 credits)
Prerequisites: CIS 544.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 585 - Advanced Artificial Intelligence [W]
This course will cover the most recent advances in the theory and practice of artificial intelligence, from a computer science perspective. Topics covered will include the state-of-the-art in knowledge representation, uncertainty, learning, CSPs, graphical models, multi-agent systems, algorithms and heuristics, and propagation-based techniques. Various application areas will be taken from security, game theory, economics, finance, biology, sociology, and big data. (3 credits)
Prerequisites: CIS 579.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 586 - Advanced Data Management [W]
This course provides an in-depth examination of some advanced database technologies. Topics are selected from: object-relational databases, active databases, distributed databases, parallel databases, deductive databases, fuzzy databases, data warehousing and data mining, spatial and temporal databases, multimedia databases, advanced transaction processing, information retrieval and database security. (3 credits)
Prerequisites: CIS 556.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 587 - Computer Game Design and Implementation I [F]
This course deals with the study of the technology, science, and art involved 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, file systems, networks, simulation engines, and multi-media design systems. Lecture and discussion 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. (3 credits)
Restrictions:
Level: Graduate or Rackham or Doctorate.
No credit given to both CIS 487 and CIS 587.

 CIS 588 - Computer Game Design and Implementation II [W]
This course is a continuation of the material studied in CIS 587. Focus on hands-on development of computer games and computer game development tools, such as game engines. A variety of software technologies relevant to computer game design, including data-driven game design, multiplayer game programming, game AI, game theory, game content development, and game aesthetics. (3 credits)
Prerequisites: CIS 587.
Restrictions:
Level: Graduate or Rackham or Doctorate.
No credit given to both CIS 488 and CIS 588.

CIS 590 - Selected Topics [F, W, Sp/Su]
An in-depth study of a CIS topic of contemporary interest. Topics vary from semester to semester. (1-3 credits)
Prerequisites: Graduate standing and permission of instructor.
Restrictions:
Level: Graduate or Rackham or Doctorate.
College: College of Engineering and Computer Science.

CIS 591 - Directed Research Project [F, W, Sp/Su]
Several projects for laboratory or library investigation with the intent of developing initiative and resourcefulness. The student will submit a report of the project and give an oral presentation to a panel of faculty members at the close of the term. (1-3 credits)
Prerequisites: Graduate standing and permission of instructor.
Restrictions:
Level: Graduate or Rackham or Doctorate.
College: College of Engineering and Computer Science.

600-Level Courses

CIS 624 - Research Advances in Computer and Network Security [F]
An in-depth study of the current state-of-the-art in computer and network security. Selected topics will be from areas such as social network security, sensor network security, information and network provenance, cyber-physical system security, pervasive and mobile computing security, smart-grid security, and healthcare system security and privacy. (3 credits) 
Prerequisites: CIS 544.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 647 - Research Advances in Networking and Distributed Systems [W]
In-depth investigation of one or more advanced areas in networking and distributed systems. Examples of possible areas are Internet analysis, approaches for network performance enhancements, multimedia applications, network coding, routing techniques, congestion control, wireless networking, vehicular networks, distributed algorithms, and concurrency control and synchronization. (3 credits) 
Prerequisites: CIS 527.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 652 - Advanced Information Visualization and Virtualization [W]
This course introduces algorithms for virtual reality, three-dimensional imaging, geometric modeling, geometric processing, information visualization, computer animation, and computer virtualization. Particular research topics include data visualization, cognitive science, perception, volume graphics, point-based graphics, surface reconstruction, wavelet and subdivision methods, level of details, and virtual machines. Students will study state-of-the-art papers in the above areas and be involved in a course project. (3 credits) 
Prerequisites: CIS 552. 
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 658 - Research Advances in Data Management [F]
An in-depth study of special topics of current interest in database systems. Selected topics will be from areas such as query optimization for emerging database systems, indexing for non-traditional data, data provenance for scientific databases, databases on modern hardware, self-managing databases, information integration and retrieval, bioinformatics, and other emerging database areas/applications. (3 credits) 
Prerequisites: CIS 556.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 678 - Research Advances in Software Engineering [W]
This course is an in-depth study of the current state-of-the-art in software engineering. Selected topics will be from areas such as software maintenance, software testing, model-driven engineering, human factors in software engineering, software specifications, software management, emerging technology and applications, applying optimization techniques in software engineering, and empirical software engineering. (3 credits)  
Prerequisites: CIS 553.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 679 - Research Advances in Computational Game Theory and Economics [W]
This course will introduce students to fundamental concepts and results in the area of computational game theory and economics, and expose them to the state-of-the-art applications, providing them with the ability to make significant contributions to this quickly developing research area. This emerging area is at the interface of computer science and economics and seeks to build on classical results in game theory to provide practical models and effective algorithms better suited to study and solve problems in large complex systems in modern society. Of major interest are compact models and efficient algorithms to understand and predict the complex global behavior that emerges from local interactions. Auctions, the Internet, social networks, computational biology, and interdependent security are some example application domains. (3 credits) 
Prerequisites: CIS 579.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 685 - Research Advances in Artificial Intelligence [F]
An in-depth study of the current state-of-the-art in artificial intelligence. Selected topics will be from areas such as analytics, advanced neural nets and deep learning, multi-agent systems, auctions, cooperation, competition, genetic algorithms and evolutionary computing, swarm intelligence, game-theoretic approaches to decision and policy making, advanced techniques for natural language processing, and advanced techniques in knowledge discovery. (3 credits) 
Prerequisites: CIS 579.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 691 - Advanced Directed Study [F, W, Sp/Su]
Special topic in computer and information science. A project report and a seminar are required. (1-3 credits)
Prerequisites: Graduate standing and permission of instructor.
Restrictions:
Level: Graduate or Rackham or Doctorate.

CIS 695 - Master's Project [F, W, Sp/Su]
Application of methodologies, tools, and theory of software engineering to produce a specific validated software project. Projects can be faculty-generated, self-generated, and/or work related. All projects must be undertaken with one or more students under the supervision of the instructor. Prior to enrollment, a project proposal must be prepared and approved by the instructor. Standard software engineering documents must be prepared and approved at each phase of the project, and an oral presentation of the project is required. (3 credits) 
Prerequisites: Graduate standing and permission of instructor.
Restrictions:
Level: Graduate or Rackham.
College: College of Engineering and Computer Science.

CIS 699 - Master's Thesis [F, W, Sp/Su]
Graduate students electing this course, while working under the general supervision of a member of the department faculty, are expected to plan and carry out the work themselves and submit a thesis for review and approval, as well as present an oral defense of the thesis. (1-6 credits)
Prerequisites: Graduate standing and permission of instructor.
Restrictions:
Level: Graduate or Rackham.
College: College of Engineering and Computer Science.

700-Level Courses

ENGR 700 - Doctoral Research Methodology Seminar [F, W, Sp/Su]
This course provides doctoral students with the fundamental training for conducting high-level scholarly research used in the various fields of engineering. Topics include: evaluation of information resources, intellectual property, writing for journals and dissertation, effective work with scientific literature, literature review, plagiarism, publication, bibliographic management, library resources, and students also complete the Responsible Conduct of Research(RCR) training workshops. The students will also be required to attend the GSI training workshop offered by CRLT at the UM Ann Arbor campus. The course is required to be completed for all doctoral students in the first year of enrollment and prior to taking the qualifying exam. (0 credit)

CIS 791 - Advanced Guided Study for Doctoral Students [F, W, Sp/Su]
This is a guided study course for doctoral students on an advanced topic of research. A report and an oral presentation are required. (1-3 credits)
Restrictions:
Level: Rackham or Doctorate.
Major: Computer and Information Science (PhD).

CIS 798 - Doctoral Seminar [F, W, Sp/Su]
After attaining candidacy, every Ph.D. student is required to attend and actively participate in seminars each semester until graduation. In addition, each Ph.D. student is required to present a one-hour seminar about his/her research on a pre-assigned research topic, as well as lead a follow-up discussion on the future trends in his/her field. (0 credit)
Restrictions:
Level: Rackham or Doctorate.
Major: Computer and Information Science (PhD).

900-Level Courses

CIS 980 - Pre-Candidate Dissertation Research [F, W, Sp/Su]
Dissertation work by a pre-candidate student in the Computer and Information Sciences program conducted under guidance of the faculty advisor. This course is for Ph.D. students in pre-candidacy status completing dissertation research prior to candidacy.  Up to 12 credits earned in CIS 980 count towards the 24 credit hours of dissertation research required for the Ph.D. in Computer and Information Science. (1-9 credits)
Restrictions:
Level: Rackham or Doctorate.
Major: Computer and Information Science (PhD).

CIS 990 - Doctoral Dissertation [F, W, Sp/Su]
Dissertation work by a student of the Ph.D. in Computer and Information Science program, conducted under guidance of the faculty advisor. The student must be a Ph.D. candidate. (0-9 credits)
Restrictions:
Level: Rackham or Doctorate.
Major: Computer and Information Science (PhD).

Computer and Information Science

105
CIS Building
Phone: 
313-436-9145
Fax: 
313-593-4256
Back to top of page