Skip to Main Content


Course Descriptions

Note: Not all courses are offered every semester, and new courses may be added at any time. Check the schedule of classes, for the latest offerings. For most up-to-date course descriptions please consult the online course catalog.

System Engineering Courses

ENEE 660: Systems Engineering Principles [3]

The Systems Engineering Principles course provides an introduction to the discipline of Systems Engineering and Systems Architecting. Key industry standards for the “The Systems Engineering Process” are taught and used throughout the course. The course describes how the SE process is implemented in standard life cycle models and through various standard organizational structures. This course introduces Model-Based Systems Engineering concepts, e.g., DoDAF, UML, and SysML. System engineering technical process topics range from Requirements Definition through system Verification and Validation. System engineering management process topics include: Decision Analysis, Technical Planning, Risk Management, and Interface Management. The course also covers aspects of project management: Integrated Product Teams, technical performance measurement, earned value measurement, and work breakdown structures. Students will develop a requirements document, and an integrated architecture, and a System Engineering Plan (SEP). Homework and Exams are designed to provide the opportunity to practice the concepts learned in class.

ENEE 661: System Architecture and Design [3]

The System Architecture and Design course focuses on the role of the systems architect in the system development life cycle. In the operational analysis phase, the emphasis is on understanding the context of the system within the larger customer problem area, and the identification of requirements that influence system partitioning. In the functional analysis phase, the emphasis is on the dependencies between processing steps. In the architectural design phase, the emphasis is on partitioning the system into generic components, and ultimately instantiating them into physical components. A precision landing system is used throughout the course as a common case study. Within the classroom sessions, a search and rescue system is used. Three presentations by each group are given to simulate: (1) RFI review, (2) SRR, and (3) SDR. These reviews progressively reveal each group’s proposed solution to the precision landing system for a mythical country with unique complicating characteristics. Prerequisite: ENEE 660. ENEE 660 may be taken concurrently with instructor permission.

ENEE 662: Modeling, Simulation, and Analysis [3]

The Modeling, Simulation, and Analysis  (MS&A) course covers the use of modeling, simulation, and analysis in the development and test of systems. The course covers leading MS&A activities, architecting simulations, and making decisions based on statistical analysis of the simulation results. The techniques discussed in class are motivated through the use of examples. Typical modeling problems discussed include performance, cost, reliability, and maintainability modeling.  Students will develop simple models and simulations using MATLAB and complete several course projects. Prerequisites: ENEE 660, ENEE 669. The ENEE 669 class requirement may be waived by passing the Mathematics and MATLAB Fundamentals Proficiency Exam.  See the instructor for details.

ENEE 663: System Implementation, Integration, and Test [3]

The System Implementation, Integration, and Test course is a follow-on to ENEE 661. The course covers the translation of design specifications into product elements, the integration of these elements into a system, and the verification that the resulting system performs as intended in its operational environment. The course follows the product development life cycle beyond system architecture and design. The system is decomposed into component level elements suitable for software coding and hardware fabrication. These elements are then individually tested and gradually integrated together as the various modules and sub-systems are subjected to unit test, verification and validation. Eventually the full system goes through Operational Test and Evaluation, and finally makes it into production and operation. This course covers the System Engineer role, activities and processes that are needed during this phase of the product development cycle. Areas of study will include technical planning, requirement & interface management, standards, technical performance measures, technical evaluation, technical readiness, implementation, integration, verification, validation, production, transition to operation and complexity. Prerequisites: ENEE 660 and ENEE 661 or consent of instructor.

ENEE 664: Advanced Systems Architecture [3]

This course emphasizes the many partitioning alternatives that can be employed when developing physical systems architectures, including hierarchical partitioning, federated partitioning, scalable architectures, high availability architectures, and collaborative systems. The course also deals with methods for architecting successful systems, such as achieving data integrity, managing system workflow, and constructing representation models. Prerequisites: ENEE 660 and ENEE 661.

ENEE 666: Architecting Security [3]

This timely course focuses on incorporating security in the initial phases of architecting Systems and Services. The goal is to teach our systems engineers and architects how to develop systems and system of systems (SoS) that have native security as a foundational component that is dynamic and scales to mission need. Consideration of data-at-rest, data-in-transit and processed data is a critical architectural facet. Incorporating data tagging and digital policy-based routing to facilitate secure data flow is an important aspect of securing data. The course assumes that the students have initial knowledge of systems engineering and architecture and are familiar with needs and basic methods of securing systems. The course will incorporate student participation researching risks and mitigation approaches in current and recent past systems that have been deployed and their impact on stakeholders. Lessons learned are highlighted and practical methods considered in order to allow direct application. Prerequisites: ENEE 660

ENEE 667: Advanced Systems Engineering Processes [2]

This two-credit course provides students the opportunity to deepen their understanding of the systems engineering processes introduced in ENEE 660. Specifically, this course provides an in-depth study of the systems engineering processes outlined in the International Standard for Systems and Software Engineering (ISO/IEC 15288:2008), the International Council on Systems Engineering (INCOSE) Handbook, and the INCOSE Systems Engineering Body of Knowledge. This course will emphasize that Systems Engineering Technical Processes operate within the envelope of the Project as dictated by Contracts as set forth by an Organization. In the end, the student will have a good understanding and appreciation of the process framework required to create man-made systems. As a part of this course, students will select, research, and report on systems engineering process areas of particular importance to them. Prerequisites: ENEE 660

ENMG 664: Quality Engineering & Management [3]

This course provides an overview of the basic principles and tools of quality and their applications from an engineering perspective. The primary quality schools of thought or methodologies, including Total Quality Management, Six Sigma and Lean Six Sigma, and quality approaches from key figures in the development and application of quality as a business practice, including W. Edwards Deming and Joseph M. Juran will be analyzed. Some of the key mathematical tools used in quality systems will be discussed, including Pareto charts, measurement systems analysis, design of experiments, response surface methodology, and statistical process control. Students will apply these techniques to solve engineering problems using the R software. Reading assignments, homework, exams, and the project will emphasize quality approaches, techniques, and problem solving.

ENMG 668: Project and Systems Engineering Management [3]

This course will cover fundamental project control and systems engineering management concepts, including how to plan, set up cost accounts, bid, staff and execute a project from a project control perspective. It provides an understanding of the critical relations and interconnections between project management and systems engineering management. It is designed to address how systems engineering management supports traditional program management activities to break down complex programs into manageable and assignable tasks.

ENEE 669: Mathematics and MATLAB Fundamentals for Engineers [1]

This course provides an introduction to programming in MATLAB and a review of fundamental engineering mathematics, e.g., probability, calculus, linear algebra, ordinary differential equations, difference equations, and some numerical methods). It is designed to refresh students’ basic skills in these areas of mathematics and to establish basic proficiency in MATLAB. Course work focuses on developing MATLAB programs that use these mathematical techniques to solve simple problems of systems engineering interest. Prerequisites:  Knowledge of a programming language.

ENEE 670: Systems Engineering Project [3]

In this course, the student performs in an industry-based work environment on a SE project. The project spans the essential phases of the System Life Cycle and results in the development of a simulation model of the objective system. During the course of system development, engineering artifacts are created to substantiate system development. A final summary technical report summarizing the artifacts and simulation results are compiled in a form representative of a professional report in partial satisfaction of course requirements. Starting six weeks before the beginning of the semester, students form Integrated Product Teams, usually not exceeding 5 students per team. During the six weeks before the semester begins, the team prepares a proposal for the project that is submitted to the instructor for approval. The advisor may approve the project proposal, subject to adjustment, as needed. To increase the realism of the environment, an industry mentor may collaborate with the advisor during the periodic milestone reviews of the project. Prerequisites: ENEE 660, ENEE 661, ENEE 662 or ENEE 669, ENEE 663, or consent of instructor.

ENEE 672: Decision and Risk Analysis [3]

This course provides an overview of decision and risk analysis techniques. It focuses on how to make rational decisions in the presence of uncertainty and conflicting objectives. This course covers modeling uncertainty; rational decision-making principles; representing decision problems with value trees, decision trees, and influence diagrams; solving value hierarchies, decision trees, and influence diagrams; defining and calculating the value of information; incorporating risk attitudes into the analysis; and conducting sensitivity analysis. Students are expected to have an elementary understanding of probability theory.

Computer Engineering Elective Courses

CMPE 684: Wireless Sensor Networks [3]

A wide range of applications such as disaster management, military and security have fueled the interest in sensor networks during the past few years. Sensors are typically capable of wireless communication and are significantly constrained in the amount of available resources such as energy, storage and computation. Such constraints make the design and operation of sensor networks considerably different from contemporary wireless networks, and necessitate the development of resource conscious protocols and management techniques. This course provides a broad coverage of challenges and latest research results related to the design and management of wireless sensor networks. Covered topics include network architectures, node discovery and localization, deployment strategies, node coverage, routing protocols, medium access arbitration, fault-tolerance, and network security.

CMPE 685: Introduction to Communications Networks [3]

This course provides an overview of network communications concepts, architectures, waveforms, protocols, and technologies. Upon completion of the course, students will be able to construct, and assess the completeness of architectures for simple LAN and WAN communications networks. Topics include wire/fiber and wireless WANs and LANs, the OSI and TCP/IP models, propagation media, analog and digital data and signals, error detection, error correction, data link layer protocols, multiple access techniques, medium access control, circuit and packet switching, Ethernet, switches, routers, routing techniques, congestion control, and quality of service (QoS) metrics. Prerequisites: Calculus, linear systems theory, and basic computer/network architectures

CMPE 687: Introduction to Network Security

Cybersecurity Elective Courses

Electrical Engineering Elective Courses

ENEE 601: Signal and Linear Systems Theory [3]

Fundamentals of Signals and Systems, Mathematical Theory of Continuous and Discrete Systems, Linear Time Invariant Systems, Linear Time Varying Systems, State Space Model and Approaches, Stability, Controllability and Observability, Minimal Realizations. Co-requisite: ENEE 620.

ENEE 610: Digital Signal Processing [3]

This is a first year graduate course for communication and signal processing majors in electrical engineering (EE) that covers the fundamentals of digital signal processing (DSP). The goal of this course is to provide the first year EE graduate student with the foundations and tools to understand, design, and implement DSP systems, in both hardware and software. MATLAB and SystemView will be the primary vehicles to provide the student with hands-on DSP design and simulation experience. The student will also acquire an understanding of DSP hardware basics and architecture. Topics covered include: (1) A/D-D/A conversion and quantization, number Revised 10/11/2004 48 representations, and finite wordlength effects; (2) FIR, IIR, and lattice filter structures, block diagram and equivalent structures; (3) Multirate DSP and filterbanks; (4) Digital filter design methods and verification; (5) DSP hardware architecture; and (6) DSP simulation/laboratory experiences. Prerequisites: ENEE 601, 620, or their equivalent, or permission of instructor.

ENEE 620: Probability and Random Processes [3]

Fundamentals of probability theory and random processes for electrical engineering applications and research: set and measure theory and probability spaces; discrete and continuous random variables and random vectors; probability density and distribution functions, and probability measures; expectation, moments, and characteristic functions;conditional expectation and conditional random variables, limit theorems and convergence concepts; random processes (stationary/non-stationary, ergodic, point processes, Gaussian, Markov, and second-order); applications to communications and signal processing. Prerequisite: Undergraduate probability or consent of instructor.

ENEE 621: Detection and Estimation Theory I [3]

Fundamentals of detection and estimation theory for statistical signal processing applications: theory of hypothesis testing (binary, multiple, and composite hypotheses, and Bayesian, Neyman Pearson, and minimax approaches); theory of signal detection (discrete Revised 10/11/2004 49 and continuous time signals; deterministic and random signals; white Gaussian noise, general independent noise, and special classes of dependent noise, e.g., colored Gaussian noise; signal design and representations); theory of signal parameter estimation: Minimum variance unbiased (MVU) estimation, Cramer-Rao lower bound, general MVU estimation, linear models, maximum likelihood estimation, least squares, general Bayesian estimators (minimum mean square error and maximum a posteriori estimators), linear Bayesian estimators (Wiener filters), and Kalman filters. Prerequisite: ENEE 620 or consent of instructor.

ENEE 630: Solid-state Electronics [3]

Fundamentals of solid-state physics for the microelectronics field: review of quantum mechanics and statistical mechanics, crystal lattices, reciprocal lattices, dynamics of lattices, classical concepts of electron transport, band theory of electrons, semiconductors, and excess carriers in semiconductors. Prerequisite: Consent of instructor.

ENEE 631: Semiconductor Devices [3]

Principles of semiconductor device operation: review of semiconductor physics, p-n junction diodes, bipolar transistors, metal semiconductor contacts, JFETs and MESFETs, and MIS and MOSFET structures. Prerequisite: ENEE 630, or consent of instructor.

ENEE 680: Electromagnetic Theory I [3]

Fundamentals of dynamics in electromagnetic theory: theoretical analysis of Maxwell's equations, Electrodynamics, plane waves, waveguides, dispersion, radiating systems, and diffraction. Prerequisite: Consent of instructor.

ENEE 683: Lasers [3]

Introduction to basic theory of lasers: Introduction to quantum mechanics and time dependent perturbation theory, interaction of radiation and matter, stimulated and spontaneous emissions, rate equations, laser amplification and oscillation, noise in lasers and laser amplifiers, semiconductor lasers. Prerequisites: ENEE 680, or consent of instructor.

ENEE 698: Research Project in Electrical Engineering [1-3]

Individual project on topic in electrical engineering. The project will result in a scholarly paper, which must be approved by the student's advisor and read by another faculty member. Required of non-thesis option M.S. students. NOTE: May be taken for repeated credit up to a maximum of three credits. Prerequisite: Completion of core courses, or consent of instructor.

ENEE 698: Research Project in Electrical Engineering (Systems Engineering Project) [1-3]

This is an individual industry-based Systems Engineering project. The project will result in a technical-report/scholarly paper, which must be approved by the student's advisor and an industry/government mentor approved by the department. Prerequisite: Completion of core courses, or consent of instructor.

Computer Science Elective Courses

CMSC 611: Advanced Computer Architecture [3]

Memory-system design, pipeline structures, vector computers, scientific array processors, multi-processor architecture. Within each topic, the emphasis is on fundamental limitations: memory bandwidth, inter-processor communication, processing bandwidth and synchronization. Prerequisite: CMSC 411 or consent of instructor.

CMSC 621: Advanced Operating Systems [3]

A detailed study of advanced topics in operating systems, including synchronization mechanisms, virtual memory, deadlocks, distributed resource sharing, computer security and modeling of operating systems. Prerequisite: CMSC 421 or consent of instructor.

CMSC 626: Principles of Computer Security [3]

This course will provide an introduction to computer security with a specific focus on the computing aspects. Topics covered include: basics of computer security, including an overview of threat, attack and adversary models; social engineering; essentials of cryptography; traditional computing security models; malicious software; secure programming; operating system security in practice; trusted operating system design; public policy issues, including legal, privacy and ethical issues; network and database security overview.

CMSC 645: Advanced Software Engineering [3]

Modern approaches to software development: requirements analysis, system design techniques, formal description techniques, implementation, testing, debugging, metrics, human factors, quality assurance, cost estimation, maintenance and tools. Prerequisite: CMSC 445 or consent of instructor.

CMSC 661: Principles of Database Systems [3]

Advanced topics in the area of database management systems: data models and their underlying mathematical foundations, database manipulation and query languages, functional dependencies, physical data organization and indexing methods, concurrency control, crash recovery, database security and distributed databases. Prerequisite: CMSC 461 or consent of instructor.

CMSC 671: Principles of Artificial Intelligence [3]

A study of topics central to artificial intelligence, including logic for problem-solving, intelligent search techniques, knowledge representation, inference mechanisms, expert systems and AI programming. Prerequisite: CMSC 471 or consent of instructor.

CMSC 681: Computer Network Architecture [3]

Topics central to the design and development of advanced computer communication networks, including distributed and fail-safe routing in large and dynamic networks, gateways and interconnection of heterogeneous networks, flow control and congestion avoidance techniques, network architectures, computer and communication security, communication protocol standards, formal specification and verification of protocols, implementation and conformance testing of protocol standards, network partitioning and intelligent reconfiguration of networks. Prerequisite: CMSC 481, CMSC 621 or consent of instructor.

© UMBC Division of Professional Studies · 1000 Hilltop Circle, Sherman Hall East 4th Floor, Baltimore, MD 21250 · 410-455-2336 ·