MSE-TI Degree Requirements

The MSE-TI degree consists of 10 course units (CUs), with all courses being fully online and no real-time sessions required.

Students complete four core courses in innovation and professional practice, three courses within a selected concentration area (Artificial Intelligence, Data Science, or Software Systems & Cybersecurity), and three additional elective courses that provide technical breadth or allow preparation for advanced study in related fields. Coursework for the MSE-TI based on concentration can be accessed using the tabs below.

Students who wish to pursue coursework spanning two Advanced Technical Concentrations may do so by using their free elective courses, provided all degree and prerequisite requirements are met. Such plans should be developed in consultation with an academic advisor to ensure appropriate depth and coherence. Courses may be applied toward either core or one Advanced Technical Concentration and may not be double-counted to satisfy core and multiple concentration requirements simultaneously.

Note: MSE-TI Online students are waived from needing to complete CIT 5910, CIT 5920, CIT 5930, & CIT 5940 as pre-req requirements.

Core Courses – Technology and Innovation (4 Course Units)

1 Course Unit
Students must take EAS 5440: Technology Innovation and Entrepreneurship as one of their four required core courses.

EAS 5440 Technology Innovation and Entrepreneurship

EAS 5440

Technology Innovation and Entrepreneurship

Technology Innovation & Entrepreneurship introduces students to the process of building high-tech ventures from idea to launch. Designed for engineers and scientists with an interest in innovation, the course develops the knowledge and skills needed to recognize entrepreneurial opportunities, shape them into viable business models, and communicate them effectively. Students work through a 14-module sequence, each aligned with a key component of a professional pitch deck. Along the way, they gain hands-on experience in opportunity analysis, business planning, and financial modeling. The course emphasizes clear communication and evidence-based decision making, culminating in a comprehensive pitch presented for peer and expert review.

Watch Course Preview →

Pre-Requisites

No Pre-Requisites

3 Course Units

ENGR 5400 Engineering Economics

ENGR 5400

Engineering Economics

Engineering economics provides a systematic framework for evaluating the economic aspects of competing design or project alternatives. Topics include: cost-driven design economics, break-even analysis, money-time relationships and equivalent worth, rates of return, cost estimation, pricing strategy, depreciation and taxes, inflation, foreign currency exchange rates, life cycle analysis, benefit/cost ratio analysis, replacement analysis, dealing with uncertainty, probabilistic risk analysis, capital financing and cost of capital, and financial statement analysis. Case studies apply these topics to real-world problems.

Pre-Requisites

No Pre-Requisites

EAS 5070 Intellectual Property Strategy and Business Law for Engineers

EAS 5070

Intellectual Property Strategy and Business Law for Engineers

Announcing the first iPhone at Macworld 2007, Apple CEO Steve Jobs famously boasted: “And boy, have we patented it!” How, and to what extent, does intellectual property actually provide competitive advantage for innovative technology companies? What makes an IP asset strategically powerful? How do patents impact – and sometimes drive – major corporate decisions including M&A, venture funding and exits, and entry into new markets?

Designed especially for engineering students with entrepreneurial goals, strong interest in technology innovation is expected, but there is no need for deep expertise in any particular technical area to excel in this course. Students who aspire to be technology developers, executives advisers and/or investors in innovation-driven industries will find this course valuable as well.

The course is divided into three units:

-In Unit 1, Patents and Protecting Valuable Innovations, we learn how to analyze the scope of protection provided by patents, and we examine closely how and when that form of protection translates to competitive advantage. We practice applying these concepts to critique and improve the patents that protect a company’s most important innovations.

-In Unit 2, IP Leverage and the Corporate Playbook, we learn transaction basics, and study theory and examples of how IP leverage strategically informs a variety of corporate transactions. We will examine the “contextual” value of patents, for established companies as well as for start-ups, and will analyze the benefits and pitfalls of various IP strategies.

-In Unit 3, Beyond Patents: The Data/AI Revolution, we confront important, recent legal changes reigning in the scope and power of patents. We analyze the business impact of these sea changes in light of the dramatic rise of AI-powered innovation, where non-patent IP assets such as data create new, distinctive opportunities and risks.

Students who take and succeed in this course should expect to acquire insights and methods that they can utilize throughout their careers to contribute important value as stakeholders in innovative technology businesses, from emerging start-ups to industry leaders.

Pre-Requisites

No Pre-Requisites

EAS 5720 Design Thinking for Engineering Innovation

EAS 5720

Design Thinking for Engineering Innovation

This course introduces engineering students to human-centered design approaches for exploring and solving complex problems. Through an individual project, students learn foundational design methods—research, empathy-building, problem framing, ideation, prototyping, and iteration—and build complementary skills in systems thinking, early experimentation, and clearly communicating design decisions.

Watch Course Preview →

Students will strengthen their creative thinking abilities, practice using visualization and rapid prototyping to test ideas, and reflect on their evolving design process as engineers. By the end of the course, they will have created and tested a prototype and gained an introductory understanding of how design and engineering come together in contemporary innovation practice.

Pre-Requisites

No Pre-Requisites

EAS 5240 Technology Ethics and the Legal Landscape

EAS 5240

Technology Ethics and the Legal Landscape

Engineers design and build the world we live in. From algorithms to bridges, cars to drones, every day we entrust our safety and prosperity to the decisions that engineers make. It is unsurprising that ethics is part of the foundation on which the modern engineering profession is built. But sometimes ethical engineering decisions nonetheless harm us more than they help us. Where this happens, engineers may face legal liability. Such liability is a legal question, not an engineering question. This course introduces students both to traditional concepts of engineering ethics as well as to the legal and policy background against which the ethics of engineering decisions are ultimately evaluated. Particular attention is paid to questions that arise in the context of new technologies such as artificial intelligence; case studies involving artificial intelligence and similar technology are considered throughout.

This course is organized in three units. It begins with a broad consideration of the role of engineers and ethics in society and the role that the law plays in formalizing a society’s ethical intuitions, primarily focusing on US legal institutions and their philosophical underpinnings. It then considers the different ways that engineers and the law understand risk and how those differing understandings of risk affect product design and professional liability. It concludes by surveying legal topics of particular interest to engineering professions such as intellectual property, privacy and security, regulation, and antitrust. Contemporary challenges, such as ethical issues posed by artificial intelligence and the challenges of regulating firms with significant market power, are considered throughout.

Students enrolled in this class will be asked to read a range of materials, including excerpts from legal memos and judicial opinions, philosophical texts, and engineering studies. Assessments will include regular short writing assignments.

WATCH COURSE PREVIEW HERE

Pre-Requisites

No Pre-Requisites


Software Systems & Cybersecurity Courses (3 Course Units)

Two courses must be selected from the Software Systems and Cybersecurity core courses—one from the Software Systems core and one from the Cybersecurity core. One additional course may be chosen from the core or technical electives below.

Software Systems Core – 1 Course Unit

CIS 5550 Internet and Web Systems

CIS 5550

Internet and Web Systems

This course focuses on the issues encountered in building Internet and Web systems, such as scalability, interoperability, consistency, replication, fault tolerance, and security. We will examine how services like Google or Amazon handle billions of requests from all over the world each day, (almost) without failing or becoming unreachable. We will study how to collect massive-scale data sets, how to process them, and how to extract useful information from them, and we will have a look at the massive, heavily distributed infrastructure that is used to run these services (and similar cloud-based services) today.

An important feature of the course is that we will not just discuss issues and solutions but also provide hands-on experience, using web search as our case study. There will be several substantial implementation projects throughout the semester, each of which will focus on a particular component of the search engine, such as frontend, storage, crawler, or indexer. The final project will be to build a Google-style search engine, and to deploy and run it on the cloud.

Notice that this is NOT a course on web design, or on web application development! Instead of learning how to use a web server such as Apache or a scalable analytics system such as Spark, we will actually build our own little web server, and a little mini-“Spark”, from scratch. As a side effect, you will learn about some aspects of large-scale software development, such as working with APIs and specifications, thinking about modularity, reading other people’s code, managing versions, and debugging.

Pre-Requisites

CIT 5950 Computer Systems Programming. Suggested: CIS 5470 Software Analysis, CIS 5490 Wireless Communications for Mobile Networks and Internet of Things, CIS 5510 Computer & Network Security, CIS 5530 Networked Systems, or CIT 5820 Blockchains & Cryptography (or any course that has students write a substantial program)

Offerings
CIS 5050 Software Systems (In Development)

CIS 5050

Software Systems (In Development)

Pre-Requisites

No Pre-Requisites

CIS 5530 Networked Systems

CIS 5530

Networked Systems

This course provides an introduction to fundamental concepts in the design and implementation of networked systems, their protocols, and applications. Topics to be covered include: Internet architecture, network applications, addressing, routing, transport protocols, peer-to-peer networks, software-defined networks, and distributed systems. The course involves regular quizzes, two large group-based networked systems implementation projects, and two written exams.

Pre-Requisites

CIT 5950 Computer Systems Programming; Data structures and basic probability. Course projects require knowledge of C/C++.

Offerings

Cybersecurity Core – 1 Course Unit

CIS 5510 Computer & Network Security

CIS 5510

Computer & Network Security

This is an introduction to topics in the security of computer systems and communication on networks of computers. The course covers four major areas: fundamentals of cryptography, security for communication protocols, security for operating systems and mobile programs, and security for electronic commerce. Sample specific topics include: passwords and offline attacks, DES, RSA, DSA, SHA, SSL, CBC, IPSec, SET, DDoS attacks, biometric authentication, PKI, smart cards, S/MIME, privacy on the Web, viruses, security models, wireless security, and sandboxing. Students will be expected to display knowledge of both theory and practice through written examinations and programming assignments.

Pre-Requisites

CIT 5920 Mathematical Foundations of Computer Science; CIT 5930 Intro to Computer Systems; CIT 5950 Computer Systems Programming

Offerings
CIS 5580 Secure System Engineering and Management

CIS 5580

Secure System Engineering and Management

In this course, students learn techniques for building, deploying, and maintaining secure systems. The course covers threat modeling, security-informed system design techniques, secure software development processes and techniques, and security operations tools and techniques. The course also specifically considers how to communicate security risks and tradeoffs to stakeholders effectively. As computer security is a constantly evolving field, the course places particular emphasis on means to empirically evaluate security choices, and how to consider economic and risk-based incentives underlying security decisions. Students are expected to have prior knowledge of CIS 2400 and STAT 4300 or equivalent. CIS 4510/5510 or CIS 5560 are recommended.

Pre-Requisites

Recommended: CIS 5560 Cryptography

CIS 5560 Cryptography

CIS 5560

Cryptography

This 1.0 credit unit course is an introduction to cryptography, both theory and applications, intended for advanced undergraduates and graduate students. Topics covered include symmetric cryptography, message authentication, public-key cryptography, digital signatures, cryptanalysis, cryptographic security, and secure channels, as well as a selection of more advanced topics such as zero-knowledge proofs, secure multiparty computation, privacy-enhancing technologies, or lattice-based cryptography.

Watch Course Preview →

Pre-Requisites

Required: This course requires a basic background in discrete mathematics (at the level of CIT 5920). Recommended: Prior exposure to algorithms and complexity will be helpful (at the level of CIT 5960).

Software Systems & Cybersecurity Technical Elective – 1 Course Unit

This requirement may be fulfilled by selecting one additional course from the Software Systems or Cybersecurity core courses listed above or from the list of technical electives below.

CIS 5470 Software Analysis

CIS 5470

Software Analysis

This course provides a rigorous and hands-on introduction to the field of software analysis — a body of powerful techniques and tools for analyzing modern software, with applications to systematically uncover insidious bugs, prevent security vulnerabilities, automate testing and debugging, and improve our confidence that software will behave as intended. Topics covered include dynamic analysis, random testing, automated test generation, dataflow analysis, constraint solving, type inference, and symbolic execution. Lectures present software analysis concepts and algorithms in a language-independent manner, while weekly programming labs involve realizing them concretely in C++ using the LLVM compiler infrastructure. This course will enable you to become a better software engineer or security analyst by learning a rich repertoire of software analysis ideas and know-how to apply them to specific scenarios in practice.

Pre-Requisites

CIT 5920 Mathematical Foundations of Computer Science, CIT 5940 Data Structures & Software Design, CIT 5950 Computer Systems Programming. Specifically: Assignments involve programming in C++ using the LLVM compiler infrastructure. Lectures and exams presume basic knowledge of algorithms (e.g. graph traversal and asymptotic analysis) and basic background in logic (e.g. set theory and boolean algebra).

Offerings
  • Not Offered
CIS 5490 Wireless Communications for Mobile Networks and Internet of Things

CIS 5490

Wireless Communications for Mobile Networks and Internet of Things

This course covers today’s state-of-the-art wireless technology 4G LTE, the next-generation wireless technology, 5G NR, and Wi-Fi technologies. Internet of Things (IoT) and the network slicing technologies in the 4G and 5G mobile networks, which are the parts of the main drivers for 5G, and the Docker container and Kubernetes will be also covered. Students will use an end-to-end LTE and Wi-Fi application performance simulation platform to analyze network protocols and analyze the impact on end-to-end application performance over the wireless network. Students will also build a simple IoT service with an IoT client device emulator and a real IoT server platform on the Internet. The course starts with the fundamental wireless technology background and networking topics with hands-on projects to help students build a foundation for the course, and the course includes contemporary research paper readings, assignments to utilize the simulation platform and implementation projects. The simulation platform provides network protocol stacks and base source code.

Pre-Requisites

CIT 5930 Introduction to Computer Systems and CIT 5950 Computer Systems Programming

Offerings
CIS 5500 Database & Information Systems

CIS 5500

Database & Information Systems

Structured information is the lifeblood of commerce, government, and science today. This course provides an introduction to the broad field of information management systems, covering a range of topics relating to structured data, from data modeling to logical foundations and popular languages, to system implementations. We will study the relational data model; SQL; database design using the Entity-Relationship model and relational design theory; transactions and updates; efficient storage of data; indexes; query execution and query optimization; and “big data” and NoSQL systems.

Pre-Requisites

CIT 5910 Introduction to Software Development, CIT 5920 Mathematical Foundations of Computer Science | Knowledge of Javascript & Web Development (HTML, CSS) is recommended. | Recommended Corequisite: CIT 5960 Algorithms & Computation

Offerings
CIS 5450 Big Data Analytics

CIS 5450

Big Data Analytics

In the new era of big data, we are increasingly faced with the challenges of processing vast volumes of data. Given the limits of individual machines (compute power, memory, bandwidth), increasingly the solution is to process the data in parallel on many machines. This course focuses on the fundamentals of scaling computation to handle common data analytics tasks. You will learn about basic tasks in collecting, wrangling, and structuring data; programming models for performing certain kinds of computation in a scalable way across many compute nodes; common approaches to converting algorithms to such programming models; standard toolkits for data analysis consisting of a wide variety of primitives; and popular distributed frameworks for analytics tasks such as filtering, graph analysis, clustering, and classification.

Pre-Requisites

CIT 5910 Introduction to Software Development or equivalent programming experience; Broad familiarity with probability and statistics, as well as programming in Python; Additional background in statistics, data analysis (e.g., in Matlab or R), and machine learning is helpful (example: ESE 5420 Statistics for Data Science: An Applied Machine Learning Course)

Offerings
EAS 5830 Blockchains (.5 CU)

EAS 5830

Blockchains (.5 CU)

This course introduces the technology that powers blockchains like Bitcoin and Ethereum. We will cover the key cryptographic tools that enable blockchains – collision-resistant hash functions and digital signature schemes. We’ll learn about the architecture of different blockchains, their consensus mechanisms, economics and how to interact with them. The assignments in this course are primarily coding-based. We will learn to read and write from the blockchain using Python libraries and write our own smart contracts in Solidity. At the end of this course, students should understand the power and limitations of blockchain technology, and be able to develop software that interacts with current blockchain platforms.

Coding languages: Python, Solidity

WATCH COURSE PREVIEW HERE

Pre-Requisites

CIT 5910, CIT 5920

Offerings
  • Fall 2024 Brett Hemenway Falk
DATS 5750 Cloud Technologies Practicum (.5 CU)

DATS 5750

Cloud Technologies Practicum (.5 CU)

Cloud computing is the heart of modern digital applications. This course provides practical, hands-on knowledge and understanding of distributed computing principles to design and develop applications that utilize public clouds such as Google Cloud, Amazon Web Services, Azure, etc. The course will cover cloud infrastructure services for computing, storage, networking, data analytics, machine learning, and modern application development. Students will learn to architect and implement complex applications utilizing different cloud infrastructure components to engineer robust, scalable solutions across practical industry use cases.

 

WATCH COURSE PREVIEW HERE

Pre-Requisites

CIT 5910, CIT 5920, CIT 5930, and CIT 5940


Free Electives

3 Course Units

Any online CIT, CIS, ESE, EAS, or ENGR courses at the 5000 level or higher may be chosen as free electives. These electives are intended to allow students to fill in knowledge gaps before taking technical electives or to gain technical breadth in areas outside their primary specialization cluster.


*Courses subject to change