Skip to main content.


Graduate Level Courses in Department of Computer and Information Sciences


CIS 522 - Algorithms and Complexity

3 credits
Prerequisite: CIS 360 or equivalent, or permission of instructor Evaluation of algorithms concerning their time and space complexity. Complexity hierarchies, axiomatic approach to computational complexity, NP complete problems, approximation algorithms for these problems.


CIS 525 - Parallel and Distributed Software Development

3 credits
Prerequisite: CIS 361 or equivalent, or permission of instructor Design and development of parallel and distributed systems. This course provides state-of-the art presentation of software development for parallel and distributed systems. A systematic model-based approach has been applied across stages of software development. Various versions of Petri nets are used to model , specify, validate, and verify correctness of parallel and distributed systems. Performance is also assessed based on stochastic Petri nets. Rapid prototyping of parallel and distributed systems with automatic code generation is an ultimate goal of his course. Comparison with other approaches is also provided.

CIS 530 - Advanced Data Mining

3 credits

Coverage of advanced topics of data mining and its applications. The course will review related mathematics and then focus on data mining core algorithms and advanced modeling including regression, dimensionality reduction, support vector machines, clustering, graph theory, and frequent pattern mining. The course will also explore several real-world problems and discuss strategies for large scale data. 


CIS 531 - Software System Specification

3 credits
Prerequisite: CIS 480 or equivalent Formal foundation of the theory and practice of software specification; production of correct, consistent, and reliable software systems by expressing the requirements of the system in formal ways. Formal and informal requirements analysis and specification techniques, the relation of analysis and specification to concerns of validation and verification, maintenance, and reusability.


CIS 532 - Software Systems Design

3 credits
Prerequisite: CIS 480 or equivalent Principles and techniques for obtaining an architectural design from a system specification. Where appropriate, automated software design tools are used to demonstrate particular methodology. The relation of various design methods to the production of quality software that meets its specification, and the relation of design method to other life-cycle aspects. Design methods, design tools, the design process, and particular application domains for design techniques.


CIS 545 - Programming Languages

3 credits
Prerequisite: Permission of instructor Techniques of formal definition of programming languages, semantics of programming languages, programming styles, and language effects on software production. Introduces current trends in programming such as language features of problem-oriented and object-oriented programming, and analysis and design of user-oriented application languages.


CIS 552 - Database Design

3 credits
Prerequisite: CIS 452 or equivalent, or permission of instructor The relational, hierarchical, and network approaches to database systems, including relational algebra and calculus, data dependencies, normal forms, data semantics, query optimization, and concurrency control on distributed database systems.


CIS 554 - Advanced Computer Graphics

3 credits
Prerequisite: CIS 454 or equivalent, or permission of instructor Three-dimensional graphics including: color, shading, shadowing and texture, hidden surface algorithms. An extensive project will be assigned, including documentation and presentation.


CIS 555 - Advanced Bioinformatics

3 credits
Advanced coverage of computational approaches used in bioinformatics. The course focuses on algorithmic challenges in analyzing molecular sequences, structures, and functions. It covers the following topics: Sequence comparison, assembly and annotation. Phylogenetic analysis. RNA secondary structure. Protein structure comparison, prediction, and docking. Microarrays, clustering, and classification. Genome, Hapmap, SNPs, and phenotypes. Proteomics and protein identification. Determining protein function and metabolic pathways.


CIS 560 - Theoretical Computer Science

3 credits
Prerequisites: CIS 360, 361, or equivalents Theoretical basis of the development of computer science. The course details particular formalisms used in the design of hardware and software systems. Intrinsic limitations of computation are described. Advanced topics of automata theory and analysis of algorithms are included. The course also covers Turing machines, the halting problem, models of computation, intractable computations, polynomial reductions, P vs. NP, parallel algorithms, various formal descriptions and specifications of programs and computations, and proofs of program correctness and interactive proof systems.


CIS 561 - Artificial Intelligence

3 credits
Expert system architectures: forward-production, logic programming, deductive retrieval, and semantic network systems. The course also treats natural language systems, illustrative working systems, and AI programming.


CIS 563 - MultiAgent Systems

3 credits
Introduction to multi-agent systems and distributed artificial intelligence. The course examines the issues that arise when groups or societies of autonomous agents interact to solve interrelated problems. Topics include defining multiagent systems and their characteristics, reasoning about agents’ knowledge and beliefs, distributed problem solving and planning, coordination and negotiation, the organization and control of complex, distributed multiagent systems, learning in multiagent systems, and applications in the following domains: internet information gathering, electronic commerce, virtual markets, workflow management, distributed sensing network, distributed planning and resource allocation.


CIS 564 - Mobile Robotics

3 credits
Prerequisite: Graduate standing The theory, software and hardware for autonomous mobile robots. Reactive behavior-based, deliberative goal-based, and utility-based robotic architectures will be presented. Control and planning under bounded resources will be covered. Interaction with environment using sensors and actuators, robot kinematics and dynamics, reinforcement and evolutionary learning techniques for intelligent robots, interaction of competing and cooperating multi-robot systems will be presented. Various applications of mobile robots will be explored.


CIS 565 - Evolutionary Computation

3 credits
Prerequisite: Graduate standing Presentation of evolutionary algorithms and comparison to traditional solving techniques. This course deals with a powerful new technique for solution of hard, intractable real-world problems, based on principles of natural evolution. Four main areas of evolutionary computation will be explored: genetic algorithms, genetic programming, evolution strategies, and evolutionary programming. Applications of evolutionary computation to related areas of computer science will be discussed.


CIS 570 - Advanced Computer Systems

3 credits
 In depth treatment of current computer systems, with performance issues at the center of an analytical approach. The course explores operating system software and the interrelation between architecture and system software. Advanced topics of compiling, assembly, linking and loading of high-level language software are included. The course treats mechanisms of IO and the memory hierarchy, various features of traditional machines, advanced features of modern machines such as RISC and multi-processor machines, and file systems and networked and distributed systems such as inter- and intra-nets. Throughout, performance issues are at the center of an analytical approach.


CIS 571 - Compiler Construction

3 credits
Prerequisite: CIS 471 or equivalent, or permission of instructor Different techniques for lexical analysis, syntax analysis, and object code generation. Emphasis on code optimization techniques and compiler-construction tools. The course will include a significant project.


CIS 572 - Real Time Systems

3 credits
Prerequisite: CIS 481 or equivalent, or permission of instructor Design and implementation of real-time systems. Implementation of real-time system in ADA, scheduling, fault tolerance, and distributed real-time systems are also studied.


CIS 573 - Operating Systems

3 credits
Prerequisite: CIS 370 or equivalent, or permission of instructor The methodologies of operating systems design and implementation. Concurrency, synchronization, process communication, switching control, deadlocks, implementation of dynamic structures, design of operating systems modules and interfaces, system security and integrity, and system updating and documentation are also studied.


CIS 574 - Advanced Computer Architectures

3 credits
Prerequisite: CIS 314 or equivalent, or permission of instructor Study of recent advances in computer organization. Parallel processors, pipelined processors, modular and network architectures data-flow machines, fault-tolerant systems, language-directed, object-based, capability-based, and message-based processor organizations.


CIS 575 - Parallel Algorithms and Parallel Architectures

3 credits
Prerequisites: CIS 314, 360, or equivalent; or permission of instructor Parallel algorithms and their implementations in parallel architectures. In the first part of the course parallel algorithms are analyzed for problems in graph theory, algebra, FFT, and artificial intelligence. The second part presents implementations of these algorithms in various parallel architectures.


CIS 577 - Computer Networks

3 credits
Prerequisite: CIS 475 or permission of instructor Analysis and modeling of centralized and distributed computer networks. Queuing network analysis, principles of network design, software considerations, and design of computer networks are also studied.


CIS 578 - Evaluation of Computer Systems Performance

3 credits
Prerequisite: MTH 331, CIS 314 or equivalent; or permission of instructor. Techniques of analysis and simulation for evaluation of computer systems performance. Queuing systems, Poisson processes, scheduling, service distribution, conservation laws, queuing networks, and discrete simulations are also studied.


CIS 579 - Multimedia Networking

3 credits
Prerequisite: CIS 475 or 476, or equivalent Current techniques in multimedia communications and networking. The course presents the communication requirements of the different types of multimedia applications, the operation of the different underlying communication networks as multimedia carriers, and the communication protocols associated with these networks and gives an overview of the various quality-of-service models, real-time transmission issues, and compression techniques.


CIS 580 - Paradigmatic Software Development

3 credits
Prerequisite: CIS 311 or equivalent Software development in the context of various paradigms. The strategies and methods of the procedural, object-oriented, and functional paradigms are studied and practiced. The modeling of software processes will be considered from both the process and product views, as will the appropriateness and measures of effectiveness of these processes in the design of software systems. Students will apply these measures to the course exercises, determining and reviewing the impact of these methods on individual design.


CIS 581 - Design and Verification of Information Systems

3 credits
Prerequisite: CIS 580 or permission of instructor Sound design methodologies and technologies in development and maintenance of information systems/business systems with special emphasis on workflow management systems. An applied course that emphasizes the formal approach, this course also addresses issues of adaptability and flexibility of information systems and their evaluation. The course supports concurrent execution of information systems during the design stage and adopts and applies various forms of Petri nets.


CIS 582 - Advanced Software Engineering

3 credits
Prerequisite: CIS 489 or equivalent, or permission of instructor Advanced topics in software engineering. This course examines technical aspects of software development life cycle and stresses a model driven approach to software engineering. Formal approaches to software modeling are covered and emphasized. The methodologies are introduced in the context of developing complex, critical and distributed software systems.


CIS 585 - Image Processing and Machine Vision

3 credits
Prerequisites: Graduate standing and permission of the instructor Foundations of image processing and machine vision. Students apply and evaluate topics such as edge detection, segmentation, shape representation, and object recognition. Stereo vision and motion analysis will be covered in detail including calibration, range images, change detection, motion correspondence, and 2-D and 3-D tracking. Important research papers will be discussed in class.


CIS 588 - Neural Computing

3 credits
Prerequisite: Any course in programming languages and data structures Fundamentals of artificial neural networks including application needs for neural networks, discussing the various architectures, learning algorithms and examples of applications. The standard neural networks are discussed in greater details, which allows for branching of architectures and combining of strategies for growing and/or constructing neural networks.


CIS 590 - Optical Networks

3 credits
Prerequisites: CIS 580 Analysis and design of optical network paradigms and architectures. Analysis and design of optical network paradigms and architectures. Introduction to optical components, wavelength division multiplexing, evolution of optical networks, design and analysis of wavelength-routed networks, and optical packet-/burst-switched networks are addressed. Principles of network design, linear programming, protocol and algorithm design, discrete event simulation techniques, and queuing theory are also studied.


CIS 595 - Independent Study

3 credits
Conditions and hours to be arranged
Prerequisites: Upper-division standing and permission of instructor, graduate director, and college dean Study under the supervision of a faculty member in an area not otherwise part of the discipline’s course offerings.


CIS 596 - Directed Study

3 credits
Conditions and hours to be arranged
Prerequisite: Permission of the instructor, graduate director, and college dean Study under the supervision of a faculty member in an area covered in a regular course not currently being offered.


CIS 599 - CIS Graduate Seminar

0 credits
Graduate Students in Computer and Information Science
Course includes department seminar presentations by speakers from industry and academia in addition to UMass Dartmouth faculty, and CIS Master student thesis defense presentations that are scheduled during the seminar course time slot (this time slot will be announced at the beginning of each semester). Students are required to attend these presentations and participate in technical discussions and write a report by the end of the semester.

  The following policy is to be added into the program requirement and/or catalog.
All CIS graduate students are expected to attend and participate in the graduate seminars as part of their program. Attendance will be taken. In order to pass the course, at least 80% attendance rate is required. In addition, a one-page report, which describes at least two seminars attended, must be submitted by the end of each academic semester. Each graduate student must enroll in this course for two semesters. Pass/Fail


CIS 600 - Master’s Project

0 - 3 credits
Prerequisites: Completion of three core courses.  

Development of a detailed, significant project in computer science under the close supervision of a faculty member, perhaps as one member of a student team. This project may be a software implementation, a design effort, or a theoretical or practical written analysis. Project report with optional oral presentation must be evaluated by three faculty members including the project supervisor.  


CIS 602 - Special Topics in Computer and Information Science

3 credits
Offered as needed to present advanced material to graduate students.


CIS 690 - Master’s Thesis

0 - 6 credits

Prerequisite: Completion of three core courses.

Research leading to submission of a formal thesis. This course provides a thesis experience, which offers a student the opportunity to work on a comprehensive research topic in the area of computer science in a scientific manner. Topic to be agreed in consultation with a supervisor. A written thesis must be completed in accordance with the rules of the Graduate School and the College of Engineering.  Graded A-F.


Visit us virtually

Visit us from anywhere, at any time.
Take a virtual tour of the UMass Dartmouth campus.