University of Michigan Dearborn Logo
Google
Computer and Information
Science Department
Course Description
CIS 505 - Algorithm Design and Analysis [F]

How to design efficient algorithms. Topics include asymptotic analysis, average-case and worse-case analaysis, 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 equivalent.

CIS 510 - Computer Interfacing [W]

The fundamentals of computer interfacing with peripheral components via serial (UART, USB, IEEE 1394, Ethernet, Serial ATA) and parallel (parallel, PCI, ATAPI, SCSI) means. Core emphasis is on understanding these interfaces with respect to performance and real-time streaming designs; i.e. implementation of jitter free multimedia device interfaces, or sustained data transfer from an ATA or SCSI device. The course is hands-on using a micro-controller or similar lab. Various real-time system analysis techniques are also discussed. (3 credits)


Prerequisites: CIS 310 and knowledge of an assembly language.

CIS 515 - Computer Graphics [F]

The architecture and basic software requirements of display systems. Two and three dimensional graphics. Design of computer graphics systems. (3 credits)


Prerequisites: (CIS 350 or CIS 3501 or IMSE 350 or (ECE 370 and MATH 276)) and (MATH 217 or MATH 227).

CIS 525 - Web Technology [F]

The study of technologies used to design and implement multimedia websites. 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)


Prerequisites: Previous or concurrent enrollment in CIS 375 or equivalent.

CIS 527 - Computer Networks [F]

The technical and management aspects of computer networks and distributed systems. Topics include: communication hardware, communication protocols, network architecture, local area networks, distributed database systems. Case studies and a research project will be assigned. (3 credits)


Prerequisites:
CIS 450 or equivalent. No credit given for both CIS 427 and CIS 527.

CIS 537 - Advanced Networking [W]

Detailed coverage of network perfomance models, analysis of ARQ and MAC protocols, routing algorithms, flow and congestion control. (3 credits)


Prerequisites: CIS 527 or equivalent.

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)


Prerequisites: CIS 450 or equivalent.

CIS 547 - Topics in Networking [F]

In-depth coverage of one or more advanced topics in networking. (3 credits)


Prerequisites: CIS 537.

CIS 550 - Object-Oriented Programming and Applications [F,Sp]

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, in conjunction with SOAP, WSDL, and JAX-RPC. (3 credits)


Prerequisites: CIS 350 or equivalent.

CIS 551 - Advanced Computer Graphics [F]

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 451 or equivalent.

CIS 552 - Computer Animation [W]

This course introduces basic techniques for digital animation, computer and video games, and web multimedia. We will study the process of creating animated video clips from start to finish, including story creation, storyboarding, modeling, animation, and post-production. Then we will learn several key techniques for video editing and motion generation, including keyframe, motion capture editing, collision detection, particle system, physical simulation, and real-time rendering. Web animation and multimedia techniques will also be addressed. (3 credits)


Prerequisites: CIS 451 or equivalent.

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)


Prerequisites: CIS 350 or permission of instructor.

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 (modelling and simulation), expert system design (knowledge engineering, learning). (3 credits)


Prerequisites: CIS 350 or equivalent. No credit for both CIS 423 and CIS 555.

CIS 556 - Database Systems [F,W,Sp]

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)


Prerequisites: CIS 350 or equivalent. No credit for both CIS 421 and CIS 556.

CIS 560 - Electronic Commerce [F]

How new information technologies and networks affect the exchange of goods and services between buyers and sellers in firms. The economics of different electronic commerce models for firms. The course combines critical evaluation of business strategies with hands-on experience in building supporting electronic commerce systems utilizing electronic data interchange (EDI) software. (3 credits)


Prerequisites: CIS 564 and IMSE 571.

CIS 562 - Web Information Management [F]

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)


Prerequisites: CIS 421 or equivalent.

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 with 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 or permission of instructor

CIS 565 - Software Quality Assurance [F]

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)


Prerequisites: CIS 553 or equivalent.

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)


Prerequisites: CIS 375 or equivalent

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:
CIS 479 or equivalent.

CIS 571 - Web Services: Concepts, Architectures, and Applications [W]

A study of the major concepts and techniques for enabling web service-based interactions on the web. The objective of this course is to familiarize students with the recent trends in industry and academia to address web service research issues. The course will address various aspects of web services, including the reference model for web services (UDDI, SOAP, WSDL), web service composition, semantic web services, security/privacy issues in web services, and an overview of web service standards (BPEL4WS, WE-Security). Students will participate in a major project. (3 credits)


Prerequisites: CIS 350 or ECE 370 or permission of instructor.

CIS 572 - Object-Oriented Systems Design [W]

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)


Prerequisites: CIS 350 or equivalent.

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 permission of instructor.

CIS 576 - Advanced Topics in Information Security [W]

Advanced topics in computer security, network security, internet security, and database security. (3 credits)


Prerequisites: CIS 527 and CIS 544.

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.


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 ECE 478 or equivalent.

CIS 579 - Artificial Intelligence [Sp]

Basic concepts and methods of artificial intelligence from a computer science perspective. Emphasis be on the selection of data representations and algorithms useful in the design and implementation of intelligent systems. An overview of one AI language and some discussion of important applications of artificial intelligence methodology. (3 credits)


Prerequisites: CIS 350 or permission of instructor.

CIS 586 - Advanced Database Systems [W]

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, and database security. (3 credits)


Prerequisites: CIS 556 or CIS 421.

CIS 587 - Computer Game Design and Implementation I [F]

The study of the technology, science, and art involved in the creation of computer games. Focus of the course will be hands-on development of computer games. 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. Topics include simulation and modeling, computer graphics, artificial intelligence, real-time processing, game theory, software engineering, human computer interaction, graphic design, and game aesthetics. (3 credits)


Prerequisites: CIS 553 or equivalent. No credit for both CIS 487 and CIS 587.

CIS 588 - Computer Game Design and Implementation II [W]

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. No credit for both CIS 488 and CIS 588.

CIS 590 - Selected Topics [F,W,Sp/Su]

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

CIS 591 - Directed Research Project [F,W,Sp/Su]

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

CIS 695 - Master's Project [F,W,Sp/Su]

Application of methodologies, tools and theory of software engineering to produce a specific validated software product. 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. Before enrollment, a project proposal must be prepared and approved by a panel of at least two regular faculty members. 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: Permission of instructor.

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 written permission of CIS faculty advisor.