Approved Electives


Below is the list of approved electives organized by academic program. Students should note that a maximum of two 500-level courses are allowed as electives. Courses not on this list may only be taken with explicit signed permission from the MS-SWE program director.

Information Systems (INFS)
  • INFS 612 - Principles and Practices of Communication Networks
  • INFS 614 - Database Management 
  • INFS 623 - Web Search Engines and Recommender Systems 
  • INFS 640 - Introduction to Electronic Commerce
  • INFS 697 - Topics in Information Systems 
  • INFS 740 - Database Programming for the World Wide Web 
  • INFS 760 - Advanced Database Management 
  • INFS 770 - Knowledge Management for E-Business 
  • INFS 772 - Intelligent Agents and the Semantic Web
  • INFS 774 - Enterprise Architecture 
  • INFS 797 - Advanced Topics in Information Systems 

Information Security and Assurance (ISA)
  • ISA 562 - Information Security Theory and Practice 
  • ISA 564 - Security Laboratory 
  • ISA 650 - Security Policy 
  • ISA 652 - Security Audit and Compliance Testing 
  • ISA 656 - Network Security 
  • ISA 673 - Operating Systems Security 
  • ISA 681 - Secure Software Design 
  • ISA 697 - Topics in Information Security 
  • ISA 763 - Security Protocol Analysis
  • ISA 764 - Security Experimentation 
  • ISA 785 - Research in Digital Forensics 
  • ISA 797 - Advanced Topics in Information Security 

Software Engineering (SWE)
  • SWE 620 - Software Requirements Analysis and Specification
  • SWE 625 - Software Project Management 
  • SWE 626 - Software Project Laboratory 
  • SWE 631 - Software Design Patterns 
  • SWE 632 - User Interface Design and Development 
  • SWE 642 - Software Engineering for the World Wide Web 
  • SWE 645 - Component-Based Software Development
  • SWE 681 - Secure Software Design and Programming 
  • SWE 699 - Special Topics in Software Engineering 
  • SWE 721 - Reusable Software Architectures 
  • SWE 727 - Quality of Service for Software Architectures 
  • SWE 737 - Advanced Software Testing 
  • SWE 760 - Software Analysis and Design of Real-Time Systems 
  • SWE 763 - Software Engineering Experimentation 
  • SWE 795 - Advanced Topics in Software Engineering 
  • SWE 796 - Directed Readings in Software Engineering 
  • SWE 798 - Research Project 
  • SWE 799 - Thesis 

Computer Science (CS)
  • CS 531 - Fundamentals of Systems Programming 
  • CS 540 - Language Processors 
  • CS 550 - Database Systems 
  • CS 555 - Computer Communications and Networking 
  • CS 571 - Operating Systems 
  • CS 580 - Introduction to Artificial Intelligence 
  • CS 583 - Analysis of Algorithms 
  • CS 611 - Computational Methods for Genomics 
  • CS 630 - Advanced Algorithms 
  • CS 635 - Foundations of Parallel Computation 
  • CS 640 - Advanced Compilers 
  • CS 650 - Advanced Database Management
  • CS 657 - Mining Massive Datasets 
  • CS 662 - Computer Graphics Game Technologies 
  • CS 672 - Computer System Performance Evaluation 
  • CS 673 - Multimedia Computing and Systems 
  • CS 674 - Data Mining on Multimedia Data 
  • CS 681 - Knowledge Engineering 
  • CS 682 - Computer Vision 
  • CS 683 - Parallel Algorithms 
  • CS 684 - Graph Algorithms
  • CS 685 - Autonomous Robotics 
  • CS 686 - Image Processing and Applications 
  • CS 687 - Advanced Artificial Intelligence 
  • CS 688 - Pattern Recognition 
  • CS 689 - Planning Motions of Robots and Molecules 
  • CS 700 - Quantitative Methods and Experimental Design in Computer Science
  • CS 706 - Concurrent Software Systems 
  • CS 752 - Interactive Graphics Software
  • CS 755 - Advanced Computer Networks 
  • CS 756 - Performance Analysis of Computer Networks 
  • CS 773 - Real-Time Systems Design and Development 
  • CS 777 - Human-Computer Intelligent Interaction 
  • CS 779 - Topics in Resilient and Secure Computer Systems 
  • CS 782 - Machine Learning 
  • CS 787 - Decision Guidance Systems 
  • CS 795 - Advanced Topics in CS

Electrical and Computer Engineering (ECE)
  • ECE 511 - Microprocessors 
  • ECE 521 - Modern Systems Theory 
  • ECE 528 - Introduction to Random Processes in Electrical and Computer Engineering 
  • ECE 535 - Digital Signal Processing 
  • ECE 537 - Introduction to Digital Image Processing (DIP) 
  • ECE 542 - Computer Network Architectures and Protocols
  • ECE 545 - Digital System Design with VHDL 
  • ECE 548 - Sequential Machine Theory
  • ECE 584 - Semiconductor Device Fundamentals
  • ECE 586 - Digital Integrated Circuits 
  • ECE 611 - Advanced Microprocessors 
  • ECE 612 - Real-Time Embedded Systems 
  • ECE 620 - Optimal Control Theory 
  • ECE 621 - Systems Identification
  • ECE 624 - Control Systems 
  • ECE 630 - Statistical Communication Theory
  • ECE 633 - Coding Theory 
  • ECE 635 - Adaptive Signal Processing 
  • ECE 641 - Computer System Architecture 
  • ECE 642 - Design and Analysis of Computer Communication Networks
  • ECE 643 - Network Switching and Routing 
  • ECE 645 - Computer Arithmetic
  • ECE 646 - Cryptography and Computer Network Security 
  • ECE 650 - Robotics 
  • ECE 680 - Physical VLSI Design 
  • ECE 681 - VLSI Design for ASICs 
  • ECE 732 - Mobile Communication Systems
  • ECE 741 - Wireless Networks 
  • ECE 746 - Advanced Applied Cryptography 

Operations Research (OR)
  • OR 540 - Management Science 
  • OR 541 - Operations Research: Deterministic Models
  • OR 542 - Operations Research: Stochastic Models 
  • OR 635 - Discrete System Simulation 
  • OR 640 - Global Optimization and Computational Intelligence 
  • OR 641 - Linear Programming 
  • OR 642 - Integer Programming
  • OR 643 - Network Modeling 
  • OR 644 - Nonlinear Programming
  • OR 645 - Stochastic Processes 
  • OR 647 - Queuing Theory 
  • OR 681 - Decision and Risk Analysis 
  • OR 690 - Optimization of Supply Chains 

Psychology (PSYC)
  • PSYC 734 - Seminar in Human Factors and Applied Cognition 

Statistics (STAT)
  • STAT 544 - Applied Probability
  • STAT 554 - Applied Statistics I 
  • STAT 652 - Statistical Inference 
  • STAT 655 - Analysis of Variance 
  • STAT 656 - Regression Analysis 
  • STAT 662 - Multivariate Statistical Methods 
  • STAT 663 - Statistical Graphics and Data Exploration I 
  • STAT 674 - Survey Sampling II

Systems Engineering (SYST)
  • SYST 520 - System Engineering Design
  • SYST 530 - Systems Engineering Management 
  • SYST 542 - Decision Support Systems Engineering 
  • SYST 560 - Introduction to Air Traffic Control 
  • SYST 573 - Decision and Risk Analysis 
  • SYST 611 - System Methodology and Modeling 
  • SYST 620 - Discrete Event Systems 
  • SYST 659 - Topics in Systems Engineering 
  • SYST 660 - Air Transportation Systems Modeling 
  • SYST 671 - Judgment and Choice Processing and Decision Making 
  • SYST 680 - Principles of Command, Control, Communications, Computing, and Intelligence (C4I) 
  • SYST 683 - Modeling, Simulation, and Gaming 
  • SYST 684 - Sensor Data Fusion 
  • SYST 760 - Special Topics in Command, Control, Communications, Computing, and Intelligence Systems Engineering