Skip to Main Content

Systems Engineering

Course Descriptions


Systems Engineering Courses

ENEE 660: Systems Engineering Principles [3]

This course provides a survey introduction to the discipline of Systems Engineering (SE) and Systems Architecting (SA). Key industry standards for SE and SA and a standard definition for the “The Systems Engineering (SE) Process” are provided and are used throughout the course. The course describes how the SE process is implemented in standard life cycle models and through various standard organizational structures. Key SE technical process topics include: Requirements Definition, Requirements Analysis, Architectural Design, Implementation, Integration, Verification, Validation, and Transition. Key SE management process topics include: Decision Analysis, Technical Planning, Technical Assessment, Requirements Management, Risk Management, Configuration Management, Interface Management, and Technical Data Management. Other topics will include: IPTs, Model-Based Systems Engineering, DoDAF, Structured Analysis, UML, SysML, requirements allocation, traceability, specialty engineering, technology readiness assessment, technical performance measurement, earned value measurement, and work breakdown structures. Students will develop a requirements document, and integrated architecture, and a System Engineering Plan (SEP). Homework and Exams are designed to provide the opportunity to practice the concepts learned in class.

Prerequisite: B.S. degree in EE or related field or equivalent industrial experience in aerospace or electronic systems.

ENEE 661: System Architecture and Design [3]

This 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: B.S. degree in EE or related field and familiarity with basic statistics and calculus. ENEE 660 (SE Principles) may be taken concurrently.

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

This course provides an overview of modeling and simulation techniques and how they are used to support analysis and decisions. The course covers the use of modeling languages (e.g., UML), mathematical models, Monte Carlo simulation, and the development of both time-driven and event-driven models and simulations. The course addresses the role of modeling and simulation in the systems engineering process and discusses the use of software engineering principles and methods to architect and manage the development of large, complex, real-time and non-real-time models and simulations. Class applications include game development, RAM analysis, decision theory, signal detection, and test design and results analysis. The course also introduces students to design considerations associated with the development of distributed software simulations (including HLA) and HWIL frameworks. Students will develop simple models and simulations using MATLAB and complete a course project. Students are expected to have an understanding of system engineering processes and development life cycles (ENEE 660), a basic understanding of college physics (object dynamics and electromagnetism), trigonometry, and the mathematics and MATLAB programming skills addressed in ENEE-669.

COURSE PREREQUISITES: Students are expected to have an understanding of system engineering processes and development life cycles (ENEE 660) and some experience with the following: college physics, calculus, probability, linear algebra/matrix mathematics, differential equations, and a programming language. As such, successful completion of ENEE-669 (or a passing grade on the Mathematics and MATLAB Fundamentals Proficiency Exam) is required and successful completion of ENEE-660 is recommended.

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

This course is a follow-on to ENEE 661 and 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 make 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 permission 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: It is assumed that the student is familiar with the systems engineering process and the various development methodologies. ENEE 660: Systems Engineering Principles and ENEE 661: Systems Architecture and Design

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 will be highlighted and practical methods considered in order to allow direct application.

Prerequisites: ENEE 660 or CYBR 620

ENEE 667: Advanced Systems Engineering Processes

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. (2 Credits)

Prerequisites: ENEE 660 Principles of Systems Engineering

ENMG 664: Quality Engineering & Management

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 (i.e., probability, calculus, matrix mathematics (linear algebra), ordinary differential equations, difference equations, and some basic numerical methods). It is designed to refresh students’ basic skills in these areas of mathematics (not substitute for such courses) 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.

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

CMPE 620/CYBR 620: Introduction to Cybersecurity [3]

This course surveys the topic of Cybersecurity, examining aspects of information, people and technology, the evolution of information security to Cybersecurity, and its technical, legal, and impact perspectives.   Students will learn how to apply the Cybersecurity concepts of protection and response to government, critical infrastructure, commercial, and individual situations; analyzing the threats and risks of those environments in light of information processing objectives and threats; and applying an appropriate strategy to build and operate appropriate defenses to mitigate potential impacts upon processing systems.

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 terms, concepts, architectures, protocols, and technologies. Upon completion of the course, students will be able to construct, and assess the completeness of, architectures for simple LANs, WANs, and internetworks. Topics include wire/fiber and wireless LANs and WANs, the TCP/IP and ATM protocol models, propagation media, analog and digital data and signals, error detection, error correction, data link layer protocols, multiplexing and multiple access techniques, medium access control, circuit and packet switching, switches, routers, routing techniques, congestion control, queuing theory, quality of service (QoS) metrics, network architectures, and network security.  Ethernet, ATM, IP, TCP, and a variety of associated network protocols will also be covered.  Students are expected to have a college physics-level understanding of electromagnetism and trigonometry.

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.