Computer Systems Engineering Courses

CSYE 5976. Directed Study. (1-4 Hours)

Offers theoretical or experimental work under the direction of members of the department on a chosen topic. Course content depends on instructor. May be repeated up to seven times for a maximum of 8 semester hours.


CSYE 6200. Concepts of Object-Oriented Design. (4 Hours)

Introduces object-oriented design and programming via the Java programming language; the use of inheritance, composition, and interface classes in software design; development of Java applets and applications; study of the Java class libraries, including the swing tool kit for building human computer interfaces, the network package for development of client-server systems, and the collections’ package for data structures and sorting algorithms. Requires a course project. Requires knowledge of C programming.


CSYE 6202. Concepts of Object-Oriented Design with C#. (4 Hours)

Introduces object-oriented design and programming via the C# (C-sharp) programming language and its underlying .NET platform. Covers the use of inheritance and composition in software design and development of complex C# .NET applications. Topics include classes, overloading, data abstraction, information hiding, encapsulation, inheritance, polymorphism, file processing, templates, exceptions, container classes, and low-level language features.


CSYE 6205. Concepts of Object-Oriented Design with C++. (4 Hours)

Introduces object-oriented design and programming via the C++ programming language. Covers the use of inheritance and composition in software design and development of complex C++ applications. Topics include classes, overloading, data abstraction, information hiding, encapsulation, inheritance, polymorphism, file processing, templates, exceptions, container classes, and low-level language features. Requires a course project.


CSYE 6220. Enterprise Software Design. (4 Hours)

Designed to build on previous experience in concepts of object-oriented design courses with equal focus in the three areas of architecture, design, and implementation. Instruction and hands-on exercises cover both server-side and client-side web programming. Offers students an opportunity to build a conceptual understanding and to gain practical experience with popular frameworks (Spring MVC, Hibernate, and Dojo or jQuery) that increase productivity, empower developers, and greatly simplify web development. The goal is to be able to build the server side and client side of substantial web-based, client-server, database-intensive, multitier applications.

Prerequisite(s): CSYE 6200 with a minimum grade of B- or CSYE 6202 with a minimum grade of B- or CSYE 6205 with a minimum grade of B-


CSYE 6225. Network Structures and Cloud Computing. (4 Hours)

Offers a practical foundation in cloud computing and hands-on experience with the tools used in cloud computing. Designed as a foundation course for cloud-aware, adept professionals. Focuses on the fundamentals of cloud computing, the principal areas of cloud architectures, cloud security, cloud governance, cloud storage, cloud virtualization, and cloud capacity. Discusses the Internet evolution that led to cloud and how cloud applications revolutionized Web applications.

Prerequisite(s): CSYE 6200 with a minimum grade of B- or INFO 5100 with a minimum grade of B- or INFO 5100 with a minimum grade of B-


CSYE 6230. Operating Systems. (4 Hours)

Covers basic concepts of operating systems and system programming, such as utility programs, subsystems, and multiple-program systems. Main topics include processes, interprocess communication, and synchronization; memory allocation, segmentation, and paging; loading, linking, and libraries; resource allocation, scheduling, and performance evaluation; file systems, storage devices, and I/O systems; and protection, security, and privacy. Emphasizes key concepts through code design and development.

Prerequisite(s): INFO 6205 with a minimum grade of B-


CSYE 6305. Introduction to Quantum Computing with Applications. (4 Hours)

Addresses how scientists and engineers can use quantum computers to simulate large quantum mechanical systems easily, which is crucial in discovery of new lifesaving drugs and new efficient materials. Quantum computers maintain an abstract state where both 0 and 1 states exist simultaneously with some probability. The course delves deeper into how such an abstract state can be realized physically and used as a computing tool to simplify algorithm implementation and execution. Offers students an opportunity to learn about the latest breakthroughs in cryptography systems (RSA), as well as fast database search; accurate weather forecasting; ultrasecure communication; and fast image recognition.

Prerequisite(s): INFO 6205 with a minimum grade of B


CSYE 6700. Technical Writing and Professional Development. (0 Hours)

Emphasizes professional communication skills through intensive verbal practice and technical writing application. Students work together in groups and individually to practice verbal and written communication to increase their English competency and comfort level for work in the United States. Offers students an opportunity to develop their ability to communicate technical skills sets in a professional setting. This course does not count toward graduation requirements.


CSYE 6962. Elective. (1-4 Hours)

Offers elective credit for courses taken at other academic institutions. May be repeated without limit.


CSYE 7105. High-Performance Parallel Machine Learning and AI. (4 Hours)

Explores the parallelization of machine learning and deep learning code that leads to high performance on heterogeneous cluster architectures. Includes the applications to a variety of domains, including image classification, speech recognition, and natural language processing, etc. Covers a brief overview of the emerging parallel computing applications. Analyzes system architectures for different kinds of parallel computing systems (shared-memory system, distributed-memory system, accelerator system, and hybrid). Offers students an opportunity to practice the principles and the practice of the emerging parallelism-based machine-learning paradigm.

Prerequisite(s): DAMG 6105 with a minimum grade of B or INFO 6105 with a minimum grade of B


CSYE 7125. Advanced Cloud Computing. (4 Hours)

Examines a collection of repeatable, generic software design patterns such as sidecar pattern, ambassador pattern, adapter pattern, event driven, stream and batch processing, containers and container orchestration with Kubernetes, replication, partitioning, transactions, consistency, and consensus to help make the development of reliable distributed systems more approachable and efficient. Microservices, containers, and container orchestration have fundamentally changed how distributed systems are developed. Offers students an opportunity to determine which kind of technology is appropriate for which purpose and to understand how these patterns can be combined to form the foundation of a good application architecture.

Prerequisite(s): CSYE 6225 with a minimum grade of B


CSYE 7200. Big-Data System Engineering Using Scala. (4 Hours)

Covers the fundamentals of functional programming with Scala and seeks to provide a basic, practical foundation for students who want to use it as a language for working with big-data platforms. Scala is one of a new breed of general-purpose functional programming languages that is strongly typed and is object oriented. It runs on the Java virtual machine and is able to share libraries from the vast collection of open-source projects written in Java. For these reasons it is readily accessible by programmers of Java, C++, and similar languages.


CSYE 7215. Foundations of Parallel, Concurrent, and Multithreaded Programming. (4 Hours)

Covers all aspects of concurrent program design, development, and implementation utilizing the Java multithreading API/facilities. Topics covered include thread safety and lifetime issues, block structured versus explicit synchronization, intrinsic versus explicit locking, thread pools, liveness issues, deadlock, livelock, race conditions, atomicity, performance and scalability, execution policies, test strategies. Major Java multithreading API/facilities covered include synchronized blocks, wait sets, intrinsic locks and condition variables, synchronized and concurrent collections, executor framework. Comparisons between the Java multithreading API and the Posix Pthreads multithreading standard are provided.

Prerequisite(s): CSYE 6200 with a minimum grade of B- or INFO 5100 with a minimum grade of B- or INFO 5100 with a minimum grade of B-


CSYE 7220. Deployment and Operation of Software Applications. (4 Hours)

Introduces the four most popular infrastructure languages—Chef, Puppet, Ansible, and Salt— and codes with them in the same way that we code with Java, Python, C#, and Javascript. IT infrastructure languages and their underlying methods and tools, referred to as DevOps, bridge the gap between software development and software administration. Instead of recruiting CPU cycles on our laptops, we create and manage virtual IT infrastructures on a public cloud. Offers students an opportunity to learn how to manipulate virtual machines, containers, and lambdas and set up assembly lines on public clouds in the fashion of a Model T assembly line.

Prerequisite(s): CSYE 6220 with a minimum grade of B- or INFO 6250 with a minimum grade of B-


CSYE 7230. Software Engineering. (4 Hours)

Looks at the software life cycle (requirements analysis and specification, software design, coding, testing, and maintenance). Offers verification, validation, and documentation at various stages of the life cycle. Covers the Unified Modeling Language as applied to the software life cycle. Covers applications of design patterns. Overviews user interface design, software metrics, and software development environments. Emphasis is on modular software construction and development of modular libraries. Requires a small software development project.

Prerequisite(s): CSYE 6200 (may be taken concurrently) with a minimum grade of B- or INFO 5100 (may be taken concurrently) with a minimum grade of B- or INFO 5100 (may be taken concurrently) with a minimum grade of B-


CSYE 7235. Model-Driven Architecture. (4 Hours)

Develops the skills to utilize new software modeling and management techniques in each state of the life cycle of component-based software systems. Applies and extends a basic knowledge of the Unified Modeling Language (UML). Introduces and applies metamodel management concepts using the OMG metaobject facility as a technology baseline. Develops a component-based software project throughout the course using C++ or Java; grading primarily based on the software project and its public presentation.

Prerequisite(s): INFO 6205 with a minimum grade of B-


CSYE 7270. Building Virtual Environments. (4 Hours)

Covers the basics of three-dimensional graphics programming using the Unity game engine. Includes a built-in terrain editor; a shader development facility; built-in physics; and advanced lighting, shadows, and audio to build 3D virtual environments and serious games. Javascript and C# can be used for scripting. Assets from various 3D modeling programs can be imported. Facilities to publish to the PC, Mac, iPhone and Wii and support for real-time multiplayer games are available. Requires a final project.


CSYE 7280. User Experience Design and Testing. (4 Hours)

Introduces user experience concepts while working on Web design projects. Offers students an opportunity to build the necessary skill sets to make better decisions when designing contemporary websites that cater to customer needs. Students practice interview techniques to understand user requirements while keeping user experience central to the effort. Uses wireframes and user scenarios to drive the creative design process. Various case studies are introduced and discussed in team settings to emphasize user perspectives. Uses quality assurance and usability testing to drive validation and user-acceptance testing and approvals.

Prerequisite(s): CSYE 6200 (may be taken concurrently) with a minimum grade of B- or INFO 5100 (may be taken concurrently) with a minimum grade of B- or INFO 5100 (may be taken concurrently) with a minimum grade of B-


CSYE 7370. Deep Learning and Reinforcement Learning in Game Engineering. (4 Hours)

Introduces a deep learning and reinforcement learning framework for games called ML-Agents, which enable games and simulations to serve as environments for training intelligent agents. Studies and reviews classical game artificial intelligence (game AI), primarily search and decision trees. Uses game AI to generate responsive, adaptive, or intelligent behaviors primarily in nonplayer characters (NPCs) similar to human-like intelligence. Game AI includes everything from simple chasing and evading to pattern movement, to create opponents with complex tactical and strategic decisions.

Prerequisite(s): INFO 5100 with a minimum grade of B or INFO 5100 with a minimum grade of B or CSYE 6200 with a minimum grade of B


CSYE 7374. Special Topics in Computer Systems Engineering. (4 Hours)

Offers topics of current interest in computer systems engineering. May be repeated without limit.


CSYE 7380. Theory and Practical Applications of AI Generative Modeling. (4 Hours)

Covers transformer-based language models (e.g., ChatGPT and Bard); generative image models (e.g., GAN and variational autoencoder); and generative models for structured data (e.g., Bayesian networks). Explores generative models for data of major modalities, namely, textual, image, and structured relational. Offers students an opportunity to learn how to build such models for practical applications in different verticals using Python and numerous publicly available libraries in Keras/TensorFlow and PyTorch. Given recent surges in generative modeling tools, generative modeling technologies and applications are necessary skills for students entering the field of industrial data science.

Prerequisite(s): INFO 6205 with a minimum grade of B


CSYE 7470. Advanced Game Analytics. (4 Hours)

Explores the use of deep learning for the automated creation and analysis of game metrics. Uses convolutional neural networks (CNNs) to segment and identify anything on a game screen in real-time, which is used as input to AI systems. The second part of the course analyzes the importance of the metrics. Covers surrogate models, Shannon entropy, Individual Conditional Expectation (ICE), leave-one-covariate-out (LOCO), local feature importance, partial dependency plots, tree-based feature importance, standardized coefficient importance, accumulated local effects (ALE) plots, and Shapley values. Lastly, covers building predictive models with game data using the following techniques: supervised learning, generative/discriminative learning, parametric/nonparametric learning, neural networks, unsupervised learning reinforcement learning, and adaptive control.

Prerequisite(s): INFO 6105 with a minimum grade of B


CSYE 7550. Distributed Intelligent Agents in the Metaverse. (4 Hours)

Introduces the field of agent-based computing as enablers of metaverse social avatar systems. Focuses on important aspects that shape the agent’s experience within the challenging virtual-reality design and engineering landscape. Covers personal space, personified locomotion, agent aesthetics, agent social interactions, and agent’s relation to blockchain decentralized virtual identity. Students engage in projects to deliver VR platforms applicable to engineering fields such as mechanical, civil, chemical, and bioengineering. Considers distributed learning applications and certification of credentials, as well. Offers students an opportunity to learn how to configure various agent types to construct virtual worlds bursting with lively agent interactive experiences that go far beyond the constraints of the physical reality.

Prerequisite(s): CSYE 7270 with a minimum grade of B ; INFO 6205 with a minimum grade of B


CSYE 7945. Master's Project. (4 Hours)

Supports teamwork on a large software project under faculty supervision. The projects are drawn from an engineering field, and involve design, systems engineering, manufacturing, planning maintenance, reliability, quality control, risk assessment, project control, evaluation of alternatives, and so on. The project may cover either the whole software development life cycle or a significant part of it.


CSYE 7962. Elective. (1-4 Hours)

Offers elective credit for courses taken at other academic institutions. May be repeated without limit.


CSYE 7976. Directed Study. (1-4 Hours)

Offers theoretical or experimental work under the direction of members of the department on a chosen topic. Course content depends on instructor. May be repeated up to seven times for a maximum of 8 semester hours.


CSYE 7986. Research. (0 Hours)

Offers students an opportunity to conduct full-time research under faculty supervision.


CSYE 7990. Thesis. (4 Hours)

Offers analytical and/or experimental work conducted under the direction of the faculty in fulfillment of the requirements for the degree. May be repeated once.


CSYE 7996. Thesis Continuation - Half-Time. (0 Hours)

Offers analytical and/or experimental work conducted under the auspices of the department.


Data Architecture Management Courses

DAMG 5976. Directed Study. (1-4 Hours)

Offers theoretical or experimental work under the direction of members of the department on a chosen topic. Course content depends on instructor. May be repeated up to seven times for a maximum of 8 semester hours.


DAMG 6105. Data Science Engineering with Python. (4 Hours)

Studies the Python programming language with data science as the application domain. Offers students an opportunity to learn how to perform complex numerical calculations, fixed data types, space efficiency, and vector manipulations. Covers tools and techniques for manipulating tables, spreadsheets, and group and pivot tables involving extremely large data sets. Covers large multidimensional arrays and matrices and the high-level mathematical functions to operate on these arrays. Studies how to use Python to manipulate the classic math and science algorithms. Analyzes helper functions such as linear and nonlinear regression, integration, Fourier transformations, numerical optimization, etc. Includes higher-level classes for manipulating and visualizing data. Applies tools and techniques to classical data science using cases such as time series forecasting, social network analysis, text analytics, and big data processing.


DAMG 6210. Data Management and Database Design. (4 Hours)

Studies design of information systems from a data perspective for engineering and business applications; data modeling, including entity-relationship (E-R) and object approaches; user-centric information requirements and data sharing; fundamental concepts of database management systems (DBMS) and their applications; alternative data models, with emphasis on relational design; SQL; data normalization; data-driven application design for personal computer, server-based, enterprise-wide, and Internet databases; and distributed data applications.


DAMG 6962. Elective. (1-4 Hours)

Offers elective credit for courses taken at other academic institutions. May be repeated without limit.


DAMG 7105. Intelligent Data Modeling and Presentation for Engineers. (4 Hours)

Studies every step in a data analysis pipeline and the visual techniques that aid in understanding the quality of each step. Offers students an opportunity to visualize the quality of their data, learn how to fix issues, and then visualize what those fixes helped. Focuses on visualizing models to produce actionable insights and how to visualize causal relationships in models. Emphasizes attention to graphical machine-learning models and how to visualize the critical parts of a network. Covers graphic design principles to assist students to effectively communicate their findings.

Prerequisite(s): INFO 5002 with a minimum grade of B or INFO 6105 with a minimum grade of B or DAMG 6105 with a minimum grade of B


DAMG 7245. Big-Data Systems and Intelligence Analytics. (4 Hours)

Offers students an opportunity to learn a hands-on approach to understanding how large-scale data sets are processed and how data science algorithms are adopted in the industry through case studies and labs. This project-based course builds on INFO 7390 and focuses on enabling students with tools and frameworks primarily to build end-to-end applications. The course is divided into three parts: building the data pipeline for data science, implementing data science algorithms, and scaling and deploying data science algorithms.

Prerequisite(s): DAMG 6105 with a minimum grade of B or INFO 6105 with a minimum grade of B


DAMG 7250. Big Data Architecture and Governance. (4 Hours)

Focuses on creating and managing a data-driven enterprise. Geared to current IT technical professionals, data scientists, technical project managers, aspiring IT professionals, and managers who want to understand the complex nature of creating and managing data-driven projects to support the new and legacy data environments. Covers the analysis that is required to design data-driven projects and make appropriate recommendations for the target state of an organization. This analysis is used as input to create a comprehensive road map to achieve the target state and includes current and future uses of data, consumption methods, data sources and categories, and aggregation and quality requirements.

Prerequisite(s): CSYE 6200 with a minimum grade of B or DAMG 6105 with a minimum grade of B or DAMG 6210 with a minimum grade of B or INFO 5100 with a minimum grade of B or INFO 6210 with a minimum grade of B


DAMG 7275. Advanced Database Management Systems. (4 Hours)

Introduces the skill set required to become a serious database applications developer. Offers an overview of the Oracle9i object-relational database system for those who have mastered the fundamental principles of database design and are competent with basic SQL. Gives students the opportunity to develop a strong understanding of the PL/SQL programming language, which is used to create triggers, user-generated functions, stored procedures, and packages for programming Oracle objects. Emphasizes advanced SQL features and Oracle-specific SQL enhancements. Covers optimization and tuning issues. Covers corresponding material for Transact-SQL (used for Microsoft SQL Server and Sybase database systems) as time and resources permit.

Prerequisite(s): DAMG 6210 with a minimum grade of B or INFO 6210 with a minimum grade of B


DAMG 7290. Data Warehousing and Business Intelligence. (4 Hours)

Examines the technical and management aspects of building a data warehouse. Explores the architecture, infrastructure, processes, data quality, database design, and data analysis involved in building the data warehouse for business analysis. Management issues include business goals, tool selection, project management, personnel skills, training, and user requirements. Topics include dimensional data modeling, extraction/transformation/load processes, data quality problems, datamarts, operational data stores (ODS), staging databases, and online analytic processing (OLAP).

Prerequisite(s): DAMG 6210 with a minimum grade of B or DAMG 7275 with a minimum grade of B or INFO 6205 with a minimum grade of B or INFO 6210 with a minimum grade of B


DAMG 7325. Introduction to Information Technology Auditing. (4 Hours)

Designed to provide a foundation for the study and professional career development of information technology (IT) auditing. Introduces the fundamentals of IT auditing, core reasons why this is a specialized area of auditing, and the principle objectives of IT auditing and its relationship to integrated financial or operational auditing. Offers an insight into management‘s objectives regarding IT risk management. Uses the Cobit governance and control framework to emphasize management issues regarding control of IT and the achievement of value through managed IT processes. Introduces three primary types of IT audits: the audits of computerized information systems, IT processing environments, and the process of developing and implementing information systems.

Prerequisite(s): DAMG 6105 with a minimum grade of B ; (DAMG 6210 with a minimum grade of B or INFO 6210 with a minimum grade of B )


DAMG 7350. Systems and Cybersecurity Fundamentals. (4 Hours)

Presents the principles of data and technology that define systems and cybersecurity from a socio-technical perspective. Offers students an opportunity to gain insight into the importance of systems security within cybersecurity and the integral role that information systems analysts play in developing cybersecure systems that people use. Through hands-on dynamic learning, students explore foundational cybersecurity principles, security architecture, risk management, attacks and mitigation strategies using Kali Linux, cyber incident response, and emerging IT/IS technologies.

Prerequisite(s): DAMG 6105 with a minimum grade of B ; (DAMG 6210 with a minimum grade of B or INFO 6210 with a minimum grade of B )


DAMG 7370. Designing Advanced Data Architectures for Business Intelligence. (4 Hours)

Focuses on designing advanced data architectures supporting structured, unstructured, and semistructured data sources; hybrid integration and data engineering; and analytical uses by casual information consumers, power users, and data scientists. Technologies include databases (relational, columnar, in-memory, and NoSQL); hybrid data, application, and cloud integration; data preparation; data virtualization; descriptive, diagnostic, predictive, and prescriptive analytics; and on-premise and on-cloud deployments. Topics include data structures, data models, data integration workflow and data engineering, data integration, data preparation, and data virtualization.

Prerequisite(s): DAMG 6210 with a minimum grade of B or INFO 6210 with a minimum grade of B


DAMG 7374. Special Topics in Data Architecture and Management. (1-4 Hours)

Offers topics of current interest in data architecture and management. May be repeated without limit.


DAMG 7390. Advances in Hybrid Data Integration and Engineering. (4 Hours)

Offers students an opportunity to understand concepts on integration use cases, integration processes and personae, data governance (with privacy and security), and data management, in an era when enterprises are increasingly adding, expanding, and altering data sources. While gathering data is often straightforward, enterprises struggle to integrate, cleanse, curate, transform, and govern data to deliver comprehensive and consistent data to support operations and enable analytics. Covers real-world integration use cases that present data fragmentation, data inconsistency, and data quality challenges and effective architectures needed to design, develop, and implement hybrid integration platforms. Studies how to apply theory and best and pragmatic practices with various technologies to implement hybrid integration platform solutions.

Prerequisite(s): DAMG 7370 with a minimum grade of B-


DAMG 7945. Master's Project. (4 Hours)

Delves deeply into advanced concepts and methodologies within data architecture and management. Emphasizes the development of critical thinking skills and the practical application of theoretical knowledge to real-world problems in the field. Through individual efforts, including laboratory work and/or literature review, students thoroughly explore and analyze various aspects of data architecture and management, focusing on a project selected in consultation with their faculty advisor that allows for tailored exploration and research. Students compile a comprehensive report detailing their findings, methodologies, and conclusions. Offers students an opportunity to present their discoveries to peers and faculty, fostering scholarly discussion and collaboration.


DAMG 7976. Directed Study. (1-4 Hours)

Offers theoretical or experimental work under the direction of members of the department on a chosen topic. Course content depends on instructor. May be repeated up to seven times for a maximum of 8 semester hours.


DAMG 7986. Research. (0 Hours)

Offers students an opportunity to conduct full-time research under faculty supervision.


DAMG 7990. Thesis. (4 Hours)

Offers theoretical and experimental work conducted under the supervision of a departmental faculty.

Prerequisite(s): DAMG 7945 with a minimum grade of C-


Information Systems Courses

INFO 5001. Application Modeling and Design. (4 Hours)

Practices social-technical software engineering methods and tools to solve real-world problems. Explores innovative design and programming techniques to build significant business applications quickly. Studies the process of systematically combining UX techniques, business processes, and complex data models to assemble applications that are user-friendly and meet business requirements. Employs the object-oriented paradigm, visual user interface design principles, and programming languages such as Java, as well as productivity tools, to put together complicated, powerful business applications with ease. Explores the art of how to systematically write software programs to solve any business problem, through practicing simple and smart ways of making software programming enjoyable.


INFO 5002. Introduction to Python for Information Systems. (4 Hours)

Studies the Python programming language for application engineering. This hands-on course offers students an opportunity to obtain proficiency in the core concepts of Python and the skills and knowledge for building applications using any of the hundreds of thousands of task-specific Python libraries. Covers the important concepts such as reading and writing to standard IO, using operators, controlling the flow of execution, using functions, reading and writing files, and basic object-oriented programming concepts. Applies tools and techniques to classical software engineering and Python-specific facilities such as code introspection, reuse, built-in sequence types, and iteration.


INFO 5100. Application Engineering and Development. (4 Hours)

Takes students in a step-by-step manner through the process of systematically combining UX techniques, business processes, and complex data models to assemble applications that are user-friendly and meet business requirements. Employs the object-oriented paradigm, visual user experience, and system design principles to put together complicated, powerful, real-world applications. The primary objective of this course is to practice social-technical software engineering methods and tools to solve real-world problems. Offers students an opportunity to learn innovative design and programming techniques to build significant business applications quickly; to practice simple and smart ways of making software construction enjoyable; and to master the art of how to systematically write software programs to solve any business problem.

Corequisite(s): INFO 5101


INFO 5101. Lab for INFO 5100. (0 Hours)

Accompanies INFO 5100. Provides additional instruction in Java programming.

Corequisite(s): INFO 5100


INFO 5976. Directed Study. (1-4 Hours)

Offers theoretical or experimental work under the direction of members of the department on a chosen topic. Course content depends on instructor. May be repeated seven times for up to 8 semester hours.


INFO 6105. Data Science Engineering Methods and Tools. (4 Hours)

Introduces the fundamental techniques for machine learning and data science engineering. Discusses a variety of machine learning algorithms, along with examples of their implementation, evaluation, and best practices. Lays the foundation of how learning models are derived from complex data pipelines, both algorithmically and practically. Topics include supervised learning (parametric/nonparametric algorithms, support vector machines, kernels, neural networks, deep learning) and unsupervised learning (clustering, dimensionality reduction, recommender systems). Based on numerous real-world case studies.

Prerequisite(s): INFO 5100 (may be taken concurrently) with a minimum grade of B- or INFO 5100 (may be taken concurrently) with a minimum grade of B- or CSYE 6200 (may be taken concurrently) with a minimum grade of B-


INFO 6106. Neural Modeling Methods and Tools. (4 Hours)

Uses a graph theoretic approach to build models representing dependencies of model components instead of using analytical functions in statistics to interpolate observations, build data models, and estimate model parameters. The interpolation is still parametric, but the parameters are graph related and do not involve analytic functions. Discusses how to explain neural models and not fear them; when it is appropriate to use neural models; and how to interact with machines that use neural models in the same way one would trust a friend, so that trust between humans and machines is enhanced rather than diminished. These so-called neural models mirror in some regard how biological brains build models to make sense of the world and do predictions.

Prerequisite(s): INFO 6105 with a minimum grade of B


INFO 6150. Web Design and User Experience Engineering. (4 Hours)

Exposes students to both conceptual and technical aspects of Web design. User experience design is the discipline of creating a useful and usable website or application that is easily navigated and meets the needs of both the site owner and its users. Covers Web standards and best practices. Studies the fundamental concepts, techniques, practices, work flows, and tools associated with the practice of user-experience design in Web interfaces. Offers students an opportunity to learn the core principles of information architecture, usability, marketing hierarchy, and user experience for contextual, value-driven websites. Additional areas of focus include typography, color theory and composition, responsive design, CSS3 concepts, basic scripting, and JavaScript libraries to create functional, effective, and visually appealing websites.

Prerequisite(s): INFO 5100 (may be taken concurrently) with a minimum grade of B- or INFO 5100 (may be taken concurrently) with a minimum grade of B- or CSYE 6200 (may be taken concurrently) with a minimum grade of B-


INFO 6205. Program Structure and Algorithms. (4 Hours)

Presents data structures and related algorithms, beginning with a brief review of dynamic memory allocation. Discusses the fundamental data structures in detail, including the abstract representation, supporting algorithms, and implementation methods. Focuses on understanding the application of the abstract data structure and the circumstances that affect implementation decisions. Covers lists, stacks, queues, trees, hash tables, and graphs. Covers recursion and searching and sorting algorithms in detail. Emphasizes data abstraction and encapsulation in code design. Explores external storage structures, time permitting.

Prerequisite(s): INFO 5100 with a minimum grade of B- or INFO 5100 with a minimum grade of B- or CSYE 6200 with a minimum grade of B-


INFO 6215. Business Analysis and Information Engineering. (4 Hours)

Covers computer information systems and the decision-making process, determination of information requirements, system development life cycle, and system modeling and analysis. Uses a hands-on approach to introduce the student to software engineering methodologies and practices, business requirements specification, business process design, model-driven object-oriented design, software development, and maintenance. Emphasizes the effective leverage of the Unified Modeling Language (UML) to transform business issues and objectives to concrete software solutions that meet business needs and usability and user interface design as critical elements of a successful software engineering engagement.


INFO 6245. Planning and Managing Information Systems Development. (4 Hours)

Provides an overview of the most popular information systems needs’ assessment methodologies including portfolio analysis, stage assessment, business systems planning, and the Alloway survey technique. Topics include utilities IS strategic plan prioritization techniques of business goal alignment, architectural compatibility, and cost/benefit and risk analysis to demonstrate how businesses match needs to budgetary constraints. Describes and evaluates options for the placement of the IS function within the organization and a variety of methods to manage the function. Introduces a generic application development and project planning methodology used as a model to facilitate the development of a four-stage project plan for a prototype project. Uses the Project Management Institute’s PMBOK and Harvard Business School case studies extensively.


INFO 6250. Web Development Tools and Methods. (4 Hours)

Explores advanced server-side technologies and tools necessary to design and engineer complete web-based enterprise applications quickly. Designed to build on previous experience to cover the life cycle of a web-based application. Focuses on MVC web development frameworks to build server-side, data-intensive, and multitier web applications. Additionally, discusses designing rich internet applications (RIA) using AJAX and service-oriented architecture (SOA) using REST.

Prerequisite(s): INFO 5100 with a minimum grade of B- or INFO 5100 with a minimum grade of B-

Corequisite(s): INFO 6251


INFO 6251. Lab for INFO 6250. (0 Hours)

Accompanies INFO 6250. Offers additional instruction in Web tools discussed in class.

Corequisite(s): INFO 6250


INFO 6255. Software Quality Control and Management. (4 Hours)

Examines techniques for the management and evolution of software systems. Topics include managing software as an asset; life cycle development and rapid development technologies; maintainability; quality assurance of software systems including testing strategies and problem analysis; software risk analysis; analysis of software project failures; process models, such as CMM and ISO 9001; configuration management; and the impact of new development technologies on software management.

Prerequisite(s): INFO 5100 (may be taken concurrently) with a minimum grade of B- or CSYE 6200 (may be taken concurrently) with a minimum grade of B-


INFO 6350. Smartphones-Based Web Development. (4 Hours)

Covers application development for mobile devices using advanced development platforms. Focuses on how to write mobile applications using cross-platform development tools and processes. Topics include user interfaces, the software life cycle, persistent storage, networking using HTTP and other REST interfaces, and mobile/handheld data applications. Requires a final project.

Prerequisite(s): INFO 5100 with a minimum grade of B- or INFO 5100 with a minimum grade of B- or CSYE 6200 with a minimum grade of B-


INFO 6660. Business Ethics and Intellectual Property for Engineers. (4 Hours)

Seeks to support successful engineering careers by offering students an applied understanding of ethical principles in the workplace and fundamentals of intellectual property and the American legal system. Seeks to increase students’ awareness of the ethical implications of their work and to influence colleagues to think and act in a socially cognizant manner. Introduces ethical principles and codes of professional ethics; types of intellectual property (patents, trade secrets, trademarks, copyrights); and fundamentals of the American legal system (sources of American law, contracts, torts, intellectual property, antitrust). Offers students an opportunity to practice verbal communication and presentation skills; develop an applied understanding of the relationship and differences between legal liability and ethical behavior; and develop applied critical thinking, communication, and presentation skills.


INFO 6962. Elective. (1-4 Hours)

Offers elective credit for courses taken at other academic institutions. May be repeated without limit.


INFO 7110. High-Performance Coding for Fintech. (4 Hours)

Distills the programming challenges constantly faced by quantitative developers in the fintech space. Presents high-performance computing challenges as well as their solutions for investment banks, market-making firms, capital management funds, and loan-financing institutions. Covers the art of high-performance computing using object-oriented structure of five prevailing programming languages widely adopted in the fintech industry: Java, C++, MATLAB, R, and Python. In particular, the course offers students an opportunity to obtain capabilities to successfully complete high-performance computing tasks in the following five application areas: global-macro arbitrage, quantitative equity portfolio management, option pricing and trading, fixed-income securities, and market making.

Prerequisite(s): INFO 6205 with a minimum grade of B-


INFO 7205. Advanced Application Engineering Project. (4 Hours)

Offers students an opportunity to master advanced software design and programming techniques for building complex software applications quickly. The engineering issues addressed assume the business problems are difficult to understand and manage in a practical manner—the system capacity must support thousands or even millions of users in a multitude of roles. Addresses high-performance computing requirements, such as concurrency and control, scalability, replication, and failover.

Prerequisite(s): INFO 5100 with a minimum grade of C- or INFO 5100 with a minimum grade of D- or CSYE 6200 with a minimum grade of C-


INFO 7225. Accounting and Budgetary Systems for Engineers. (4 Hours)

Covers the latest engineering principles necessary for building complex software systems that comply with recognized standards in the financial industry. With automated business processes today, risk and responsibility are shifting to information technology (IT) systems. Offers students an opportunity to learn how to incorporate information-based controls related to the financial industry that signal trouble, detect violations, and provide accountability, as well as a working approval process. Emphasizes software design. Seeks to help engineers construct complex software from a sophisticated engineering perspective. Examines how to put together cutting-edge organizational systems that people in the financial world can put to good use. Designed to prepare students for jobs in the building, maintaining, and employment of such information systems.


INFO 7245. Agile Software Development. (4 Hours)

Offers students an opportunity to achieve a high level of practical understanding of software development life cycle (SDLC) with emphasis on agile and adaptive incremental methodologies. Examines techniques for the management and evolution of software systems, including project planning from requirements gathering, analysis, estimation, and releasing using a hands-on approach to implement agile methodologies. Also covers maintainability, including software risk analysis, project retrospectives, and process models such as capability maturity model, configuration management, and their practical implementation.

Prerequisite(s): INFO 5100 with a minimum grade of B- or INFO 5100 with a minimum grade of B- or CSYE 6200 with a minimum grade of B-


INFO 7250. Engineering of Big-Data Systems. (4 Hours)

Introduces a general framework for thinking about big data. Services such as Web analytics and intelligent e-commerce have promoted a rapid increase in the volume of data generated, analyzed, and archived. In order to solve the problems related to big data, a newer type of database product has emerged. Covers how to apply technologies like Hadoop, Accumulo, MongoDB, and various NoSQL databases to build simple, robust, and efficient systems to manage and analyze big data. Also describes an easy approach to big data systems that can be built and run by a small team of students. Guides students through the theory of big data systems, how to implement them in practice, and how to deploy and operate them once they are built.

Prerequisite(s): INFO 6205 with a minimum grade of B- or INFO 6250 with a minimum grade of B- or INFO 7390 with a minimum grade of B- or CSYE 6220 with a minimum grade of B-


INFO 7255. Advanced Big-Data Applications and Indexing Techniques. (4 Hours)

Studies advanced indexing techniques and algorithms for big-data platforms such as Hadoop and NoSQL databases. Covers big-data design and indexing patterns to organize, aggregate, manipulate, and analyze huge amounts of data beyond human scale. Offers students an opportunity to learn advanced techniques to improve the performance and robustness of the advanced big-data programming models. Additional areas of focus include scalable graph databases, advanced indexing, and full-text searching in graph databases.

Prerequisite(s): CSYE 6220 with a minimum grade of B- or INFO 6205 with a minimum grade of B- or INFO 6250 with a minimum grade of B-


INFO 7260. Business Process Engineering. (4 Hours)

Addresses the question of how to understand and specify the flow of work responsibility and movement of information throughout the enterprise. For businesses to maximize the benefits of technology, they must transform their ad-hoc and often poorly defined ways of doing things to formal business processes. Analyzes the specification and implementation of complex information systems that integrate well into core business operations. Offers students an opportunity to learn how to use agile process specification techniques, dynamic process execution, and real-time measurement and reporting to support continuous business improvement and change.


INFO 7285. Organizational Change and IT. (4 Hours)

Focuses on the change effort needed to integrate a project into the firm’s organizational structure, culture, business, and process metrics. Geared for students undertaking enterprise resource planning systems, or those involved in small or large organizational reengineering projects designed to make IT a primary focus of the firm’s business strategy. Topics include management theories and organizational design principles; strategy and critical success factor formulation; methods to reach information systems maturity; business process modeling techniques; quality, the mindset, and the problem-solving tools; human resource, cultural, and technical change enablers; how to plan a business reengineering project; and implementation of major organizational change.


INFO 7330. Information Systems for Healthcare-Services Delivery. (4 Hours)

Addresses the important information systems questions facing the delivery and assessment of healthcare services from administrative, financial, and clinical perspectives. These include the use of electronic medical records; health information exchanges; and performance evaluation of providers, patients, and payers. Provides an introduction on how healthcare is delivered. Also focuses on various information management tools being implemented as well as those needed to move care delivery and quality forward.


INFO 7374. Special Topics in Information Systems. (1-4 Hours)

Covers state-of-the-art material of current interest. May be repeated without limit.


INFO 7375. Special Topics in Artificial Intelligence Engineering and Applications. (1-4 Hours)

Covers recent advances in neural nets and deep learning techniques with applications to large-scale engineering problems. May be repeated up to five times for a maximum of 24 semester hours.

Prerequisite(s): INFO 6205 with a minimum grade of B-


INFO 7380. User Experience Design for Healthcare Applications. (4 Hours)

Introduces the unique challenges of user experience research, design, and evaluation in a complex safety-critical domain with a systems engineering perspective. Covers regulations, standards, development processes, implementation, and adoption considerations for health technology. Designed to prepare students for the challenges UX professionals need to tackle when working on healthcare applications. Offers students an opportunity to build the necessary skill sets to enter the competitive and highly specialized industry of healthcare IT.

Prerequisite(s): CSYE 7280 with a minimum grade of B- or INFO 6150 with a minimum grade of B-


INFO 7385. Managerial Communications for Engineers. (4 Hours)

Focuses on communication strategies and tactics for engineers at the interpersonal, team, and organizational level. Course topics include forms (oral and written), styles, and differences in communication; coaching and giving feedback to staff; and building teams, managing conflict, and special topics in organizational communication. The primary goal is to strengthen the students’ social and emotional intelligence skills to help them progress along their engineering career path. Combines academic content with practical skill-building activities.


INFO 7390. Advances in Data Sciences and Architecture. (4 Hours)

Covers a wide range of skills and responsibilities that are necessary for managing complex business performance and operational data. Such data tend to be fragmented, poorly organized, and often flawed. Offers students an opportunity to learn how a more up-to-date mapping of complex data works and to be alerted to the care and attention they must give to such a task as well as the implications of the results. Covers best practices for managing all aspects of the data transformation life cycle, covering broad areas such as requirements gathering, meta-model design, data integration and transformation, as well as implementation and ongoing operations. Discusses tools for mapping fragmented data into business intelligence solutions that guide successful strategies.

Prerequisite(s): INFO 6105 with a minimum grade of B


INFO 7405. Advances in Engineering Medical Information Systems. (4 Hours)

Focuses on the fundamentals of engineering patient medical records as timelines of medical encounters that capture critical clinical decisions made in various contexts such as assessments, diagnoses, treatments, etc. Emphasizes semantically rich clinical information models to support predictive analysis in order to recognize patterns of disease early. Record systems typically focus on data recording for legal purposes, ignoring the critical needs of patients and caregivers. Introduces innovative software design and architecture techniques that recognize the complex interaction between patients and caregivers, provide immediately available detailed information for both, and thus invigorate clinical workplaces. Covers techniques for engineering medical applications as sociotechnical systems that promote the safety, effectiveness, and efficiency of core clinical operations.

Prerequisite(s): INFO 5100 (may be taken concurrently) with a minimum grade of B- or INFO 5100 (may be taken concurrently) with a minimum grade of B-


INFO 7410. Advanced Medical Device Software Engineering. (4 Hours)

Offers students an opportunity to achieve an advanced level of practical knowledge and understanding of the medical device software development process and the skills needed to develop software for medical devices according to the FDA and IEC 62304 standards. Aiming to bridge the gap between theory and practice, this comprehensive and hands-on course combines lectures, case studies, and a capstone project to help students gain the necessary expertise to develop safe and effective medical device software.

Prerequisite(s): CSYE 6200 with a minimum grade of B- or INFO 5100 with a minimum grade of B-


INFO 7500. Cryptocurrency and Smart Contract Engineering. (4 Hours)

Seeks to provide a detailed understanding of the function and deployment of smart contracts using the Solidity language. Digs deep into the technical design and operation of blockchain platforms and specifically the implementation of smart contracts for operationalizing business processes. Offers students an opportunity to practice the development of decentralized autonomous organization applications using blockchain scripting languages.

Prerequisite(s): INFO 5100 with a minimum grade of B- or INFO 5100 with a minimum grade of B- or CSYE 6200 with a minimum grade of B-


INFO 7510. Smart Contract Application Engineering and Development. (4 Hours)

Emphasizes the essential coding skills for implementing self-enforcing, multiparty, mutually beneficial, contractual rights and obligations on top of blockchain technologies. Offers students an opportunity to learn how to leverage the principles and mechanisms of “decentralized autonomous organization” to programmatically coordinate the interaction between participating parties at a global scale without the need for trusting a third party and how to build blockchain-type applications that automate the interaction of a network of participating entities such as buyers, sellers, suppliers, insurance, and finance.

Prerequisite(s): INFO 7500 with a minimum grade of B-


INFO 7520. Engineering of Advanced Cryptocurrency Systems. (4 Hours)

Addresses programming and information systems aspects of bitcoin and other cryptocurrencies. Topics covered include fundamentals of bitcoin mining, the theory of distributed consensus, principles of strong anonymity and untraceability, smart contract security, and peer-to-peer networking. Offers students an opportunity to learn about current developments in, and challenges facing, the use of cryptocurrencies in terms of the computing platform and systems integration. Students also have an opportunity to gain practical experience through challenging programming projects.

Prerequisite(s): INFO 7500 with a minimum grade of B-


INFO 7525. Regulatory Aspects of Smart Contract Automation. (2 Hours)

Addresses the legal implication of using the blockchain to transfer and exchange money, perform trade transactions, maintain ownership of property, and enforce contractual obligations in secure and cost-effective ways. These applications present significant legal challenges in finance, property rights, and general commercial contracts in all industries. Offers students an opportunity to acquire the tools to engineer systems that adhere to existing and evolving regulatory frameworks. Highlights challenges around the issues of taxation, financial crimes, and money laundering, since blockchain technologies were designed to facilitate cross-border transactions.


INFO 7535. Digital Smart Contracts Product Innovations. (2 Hours)

Addresses the issue of how blockchain technology creates new ways of doing business. Blockchain technology uses bitcoin cryptocurrency to create value in a virtual setting. By linking the blockchain with real currency and the financial system, data, as well as business processes, a new breed of products and services can be realized. Explores innovative and disruptive applications of the blockchain.


INFO 7610. Special Topics in Natural Language Engineering Methods and Tools. (4 Hours)

Covers the latest techniques in natural language processing with applications to unstructured data.

Prerequisite(s): INFO 6205 with a minimum grade of B-


INFO 7750. Engineering Advanced Healthcare Information Exchange Platforms. (4 Hours)

Offers a deep dive into the realm of health information exchange systems, emphasizing their advantages, overcoming engineering challenges, and understanding the diverse HIE models. Addresses important safety concepts, eco-scale challenges, and systems and software engineering approaches to ensure robust, secure, and sustainable HIE implementations. Aims to develop a solid understanding of HIE's intricacies.

Prerequisite(s): CSYE 6200 with a minimum grade of B- or INFO 5100 with a minimum grade of B-


INFO 7945. Master's Project. (4 Hours)

Delves deeply into advanced concepts and methodologies within information systems. Emphasizes the development of critical thinking skills and the application of theoretical knowledge to practical challenges in the field. Through individual efforts, including laboratory work and/or literature review, students conduct a thorough investigation and analysis of various aspects of information systems. With guidance from their faculty advisor, students focus on a project tailored to their interests and goals. Students produce a detailed report outlining their findings, methodologies, and conclusions. Offers students an opportunity to present their work to peers and faculty, fostering scholarly discussion and collaboration.


INFO 7962. Elective. (1-4 Hours)

Offers elective credit for courses taken at other academic institutions. May be repeated without limit.


INFO 7976. Directed Study. (1-4 Hours)

Offers theoretical or experimental work under the direction of members of the department on a chosen topic. Course content depends on instructor. May be repeated seven times for up to 8 semester hours.


INFO 7986. Research. (0 Hours)

Offers students an opportunity to conduct full-time research under faculty supervision.


INFO 7990. Thesis. (4 Hours)

Offers theoretical and experimental work conducted under the supervision of a departmental faculty. May be repeated once.


INFO 7996. Thesis Continuation - Half-Time. (0 Hours)

Continues theoretical and experimental work conducted under departmental faculty supervision.

Prerequisite(s): INFO 7990 with a minimum grade of C-


Telecommunication Systems Courses

TELE 5330. Data Networking. (4 Hours)

Provides the basics of data networking protocols and architectures. Topics include protocol architecture of the internet; application protocols such as FTP, SMTP and HTTP, web caching, DNS, CDNs, and P2P applications; use of TCP and UDP socket programming to develop network applications in Python; transport protocols, including TCP, UDP, and TCP congestion control; IP protocol, addressing, IPv4 and v6, NATs, ICMP, and tunnels; routing algorithms and OSPF; data link protocols, encoding, framing, error control, and PPP; switched LANs, ARP, Ethernet, and VLANs; wireless LANs and 802.11 protocols; and network security—encryption, message integrity, authentication protocols, key management, SSL/TLS, IPsec, and 802.11i.

Corequisite(s): TELE 5331


TELE 5331. Lab for TELE 5330. (0 Hours)

Addresses a range of networking components, including routers, switches, and Linux servers, and how they are configured to create a virtual environment. Covers the installation and configuration of networking concepts such as DNS, DHCP, and firewalls and the creation of virtual environments. Requires students, working in teams, to configure one or more components; the teams then must interconnect the components to form a small network. In the process of configuration and integration, students are exposed to troubleshooting at various protocol layers and have an opportunity to become familiarized with different operating systems and networking tools.

Corequisite(s): TELE 5330


TELE 5340. Telecommunications Public Policy and Business Management. (4 Hours)

Introduces students to business management issues, such as basic accounting, finance, marketing, and operations in the telecommunications field, and also topics such as the time value of money and decision making. Also includes issues of human relations, organizational behavior, and business strategy. Provides an understanding of the regulatory environment of the telecommunications industry. Topics include universal service, service quality tariffs, the Modified Final Judgment and Telecom Act of 1996, market restrictions and segmentation, the current competitive environment in the United States and internationally, interconnection including unbundling, collocation, economic issues, and global trends in market reform.


TELE 5350. Telecom and Network Infrastructure. (4 Hours)

Provides in-depth treatment of the wireline and wireless infrastructure of the network supporting all telecommunication, internet, and enterprise applications. Covers the basics of communications—source coding, baseband and broadband modulation and transmission, channel coding, spread-spectrum, multiuser radio communications, radio link analysis, and propagation. Also covers the wireline core network—digital and optical transmission, framing, network synchronization, asynchronous and synchronous multiplexing, cross connects, SONET/SDH, DWDM, OTN, protection switching, and network availability. Addresses wireline (DSL, digital cable, FTTx, PONs) and wireless access (cellular, Wi-Fi), frequency reuse, and handoff. Also addresses support of data transport (switched Ethernet, VLAN, IP, MPLS) and application networks (PSTN, mobile core, internet, IPTV, and virtual networks).

Prerequisite(s): TELE 5330 (may be taken concurrently) with a minimum grade of B- or TELE 5330 (may be taken concurrently) with a minimum grade of B-


TELE 5360. Internet Protocols and Architecture. (4 Hours)

Offers in-depth treatment of protocols used in the internet, wireless access, and enterprise networks. Topics include protocols for network layer QoS (including DiffServ, ECN, RSVP, MPLS); protocols for security, including both access control and network-level security (e.g., X.509, SSL/TLS, IPsec, IKE, EAP); protocols for interdomain routing (BGP); protocols to support multicast, broadcast, and streaming applications; protocols to support host mobility, large server deployments, content distribution, and enterprise networks (VLANs, etc); and protocols to support IPv6 (e.g., address assignment) and its interoperability with IPv4. Also covers network design architectures for cloud computing, data centers, content distribution, layer-2 networks, etc. Discusses general scaling issues for large networks.

Prerequisite(s): TELE 5330 with a minimum grade of B- or TELE 5330 with a minimum grade of B-


TELE 5600. Linux/UNIX Systems Management for Network Engineers. (4 Hours)

Introduces UNIX/Linux in a networking/Internet environment. Covers operating system concepts, tools, and utilities; networking and security issues; and data and text processing using scripts and filters. Addresses basic administrative tasks such as managing users, file systems, security, and software. Covers networking topics such as network configuration, daemon processes, SSH, DNS, DHCP, diagnostic tools, and the use of scripts and automation to manage applications and systems, as well as security topics such as name and authentication services, access control lists, file modification protections, and firewalls.


TELE 5976. Directed Study. (1-4 Hours)

Offers independent work under the direction of members of the department on a chosen topic. Course content depends on instructor. May be repeated without limit.


TELE 6100. Mobile Wireless Communications and Networking. (4 Hours)

Studies communications and networking issues in providing broadband wireless access to mobile applications. Discusses networking technologies required by converged IP-based applications. Covers converged network architectures and the interworking of different generations of access technologies with the Evolved Packet Core (EPC). Registration limited and by application only; it is expected that all students have prior knowledge of digital communications, radio propagation, cellular networks, and second-generation wireless standards.

Prerequisite(s): TELE 5330 with a minimum grade of B- or TELE 5330 with a minimum grade of B-


TELE 6300. Communication and Network Security. (4 Hours)

Studies the skills necessary to apply and implement network and communication security in enterprise environments. Covers various concepts related to computer security and network protection. Explores systems security, access control, network infrastructure, assessments and audits, cryptography, and organizational security, all of which help to protect enterprise networks' confidentiality, integrity, and availability. Covers common network attacks, cryptography basics, computer forensics, and operational/organizational security related to physical security, disaster recovery, and business continuity. Discusses recent trends in network security attacks and cyberattacks, analyzing worms and trojans, SSL/TLS session renegotiations/compression, DNS security, spam, and crypto-based countermeasures.


TELE 6350. Unified Communications and Collaboration. (4 Hours)

Explores the technologies that underlie unified communications and collaboration (UCC) applications and communications networks. With the migration of communications infrastructure to the cloud, a democratization of communications is underway that allows customers to build powerful UCC applications on top of networks managed by service providers. UCC applications integrate audio and video conferencing, messaging, virtual whiteboards, and enhanced call control capabilities. Major topics include architecture of communication networks, IP-based voice, video and messaging protocols, public cloud-based communications, browser-based communications, and Communications Platforms-as-a-Service (CPaaS). Uses class projects to offer students an opportunity to get hands-on experience in addressing real-world problems in UCC communications infrastructure, services, and applications.

Prerequisite(s): TELE 5330 with a minimum grade of B- ; TELE 5600 with a minimum grade of B-


TELE 6400. Software-Defined Networking. (4 Hours)

Introduces the foundational theories and technologies of software-defined networking (SDN), a new paradigm in computer networking that allows a logically centralized software program to control the behavior of an entire physical network. Discusses SDN technologies, such as the OpenFlow specification and OpenDaylight controller, and introduces students to SDN applications and network function virtualization (NFV). Offers hands-on exposure to popular open-source software and technologies through student projects. Requires good knowledge of Java or Python.

Prerequisite(s): TELE 5330 with a minimum grade of B- or TELE 5330 with a minimum grade of B-


TELE 6420. Infrastructure Automation Design and Tools. (4 Hours)

Exposes students to best practices for infrastructure automation, which is highly critical in the design and deployment of network and server infrastructure that supports microservices architecture applications on public cloud (IaaS) services. Provides hands-on experience with IaC (infrastructure as code) technologies for provisioning and deprovisioning, configuration, patching, security, monitoring, alerting, logging, etc., for infrastructure components ranging from network devices to servers to entire virtual data centers. Focuses on both individual and team projects involving the use of IaC tools such as Ansible, Puppet, Git, Selenium, Netmiko, Paramiko, CFEngine, Docker, and Kubernetes for infrastructure deployment and automation.

Prerequisite(s): TELE 5330 with a minimum grade of B- or TELE 5330 with a minimum grade of B-


TELE 6500. Machine Learning for IoT Systems. (4 Hours)

Studies the design, development, rollout, and maintenance of machine learning algorithms for IoT systems, which generate and process time series data under memory and timeliness constraints. Focuses on verticals like Industry 4.0, wearables, and smart grids/homes. Explores the nuances of handling IoT time series data in both edge and cloud computing settings including the preparation, exploration, and feature engineering for sensor data. Covers domain-specific problem classes like forecasting, change point detection, and temporal anomaly detection. Addresses customized performance metrics for time series algorithms. Analyzes deep learning architectures for time series problems using TinyML for embedded devices. Course projects focus on time series, going beyond traditional datasets used in conventional ML classes.


TELE 6510. Fundamentals of the Internet of Things. (4 Hours)

Explores the foundations of and technologies involved in the Internet of Things (IoT). Topics include machine-to-machine (M2M) communications and its relationship with IoT. Examines fundamental components of the IoT architecture reviewing industry standards. Presents a large array of case studies. Discusses the fundamentals of data networks with a focus on different wireless technologies relevant to IoT, including the latest developments in IEEE 802.11, IEEE 802.15.4, and BLE, as well as network layer protocols such as 6LoWPAN that are critical to the deployment of wireless IoT networks. Discusses a range of IoT application protocols, especially MQTT, CoAP, and AMQP. Also explores IoT security and privacy considerations and identification mechanisms for IoT devices. Introduces wireless sensor networks and routing protocols for wireless networks.


TELE 6530. Connected Devices. (4 Hours)

Offers an in-depth, software-intensive exploration of the Internet of Things (IoT)—from device to cloud—culminating in a semester-long project where each student designs, builds, and presents an end-to-end, integrated IoT solution. Covers IoT concepts and architectures, and incorporates significant software development activities through weekly modules. Includes testing, DevOps, and messaging protocols specific to the IoT; device integration; and cloud services designed for IoT ecosystems.


TELE 6550. IoT Embedded System Design. (4 Hours)

Explores the technologies and techniques behind the field of design and development of modern embedded devices in IoT systems. Specifically, focuses on a hands-on approach to software development on an embedded hardware platform. Through a final project, students have an opportunity to build and deploy an industrial-grade state-of-the-art embedded IoT solution. Presents C coding, but also reviews the ARM ISA as well as C++ development and debugging. Applies theoretical concepts to practical issues including pipelining, parallelism, concurrency, memory architectures, and I/O (GPIO, I2C, UART, SPI). Introduces bare-metal and OS-based development focusing on multitasking, scheduling, interrupts, threads, processes, tasks, IPC, drivers, contention resolution, and shared memory. Introduces state-of-the-art Google Cloud IoT and FreeRTOS APIs.


TELE 6962. Elective. (1-4 Hours)

Offers elective credit for courses taken at other academic institutions. May be repeated without limit.


TELE 6973. Special Topics—Networking. (1-4 Hours)

Offers topics of current interest in Networking. May be repeated seven times for a maximum of 8 total semester hours.


TELE 7374. Special Topics in the Internet of Things. (4 Hours)

Offers topics of current interest in the Internet of Things. Topics vary from semester to semester. May be repeated without limit.


TELE 7945. Master's Project. (4 Hours)

Supports a project in cyber-physical systems and the Internet of Things that may have both hardware and software elements. Project to be carried out under faculty supervision.


TELE 7976. Directed Study. (1-4 Hours)

Offers theoretical or experimental work under the direction of members of the department on a chosen topic. Course content depends on instructor. May be repeated up to seven times for a maximum of 8 semester hours.


TELE 7986. Research. (0 Hours)

Offers students an opportunity to conduct full-time research under faculty supervision.


TELE 7990. Thesis. (4 Hours)

Offers students an opportunity to conduct theoretical and experimental work under the supervision of a departmental faculty.

Prerequisite(s): TELE 7945 with a minimum grade of C-