录取要求
Requirements and Prerequisites
Object-Oriented Programming
Discrete Mathematics
Data Structures
Algorithms
Program Management/Software Engineering
Computer Organization
Computer Architecture
Calculus
Science (Physics preferred)
Additional Instructions
GRE score report code, if applicable
4854
Program Deadlines
Autumn: March 1
Additional Deadline Info: The MSCSS program admits students for Autumn
term.
Priority is given to students who apply before March 1st.
Important Information for International Applicants
International Funding Note:
The UW Grad School has also compiled some popular funding sources
https://grad.uw.edu/graduate-student-funding/for-students/fellowships/list-of-fellowships/
Additional International Info:
All UW applicants whose native language is not English must demonstrate
proficiency with documentation verifying that the medium of instruction for
their bachelor's degree was English or by achieving the minimum scores on an
approved English exam.
TOEFL = 92
If you score below a 92 on the TOEFL you are unlikely to be admitted
International Applicant Deadlines
Autumn: March 1
Applicants must provide evidence of the successful completion of a
baccalaureate degree from an accredited institution with at least a 3.0 GPA.
All applicants must demonstrate successful completion of preparatory
coursework prior to their formal application to the master's program.
Program Prerequisites
All students admitted to the master's program are expected to have competency
in the following areas:
Object-Oriented Programming (equivalent to TCSS 142, TCSS 143 and TCSS
305)
Discrete Mathematics (equivalent to TCSS 321)
Data Structures (equivalent to TCSS 342)
Algorithms (equivalent to TCSS 343)
Program Management/Software Engineering (equivalent to TCSS 360)
Computer Organization (equivalent to TCSS 371)
Computer Architecture (equivalent to TCSS 372)
Calculus
Science (Physics preferred)
Students without a degree or significant work experience in computer science
can complete the prerequisites as a post-baccalaureate student. In rare
circumstances, students lacking one or two prerequisites may be admitted on a
space available basis.
申请材料清单
UW Graduate School Application
Complete the Application for Admission to the UW Graduate School online. You
may log in as often as you like to update your application. Once you are
finished with your application, you may submit the $85 fee using a credit card.
Once the fee is submitted, you will not have access to make any changes.
Personal Statement
Your personal statement should discuss your interest in the field of computer
science and any areas of specialization. Here are five steps to follow when
writing a personal statement.
Resume
Please submit your current resume online and include any work related to
computer science prerequisites that is not clearly listed on your
transcript.
Transcripts
Upload one transcript from each post-secondary school you have attended. The
Graduate School in Seattle will require an official transcript for degree
verification after you have accepted an offer of admission. Please do not mail
official transcripts to Tacoma and don't send official copies to the Graduate
School until after you have received an offer of admission.
If you list additional classes that you have taken (post-graduate courses),
you must also provide the Graduate School with official transcripts to support
this work after you have been accepted.
Graduate Record Exam (GRE)
The GRE general exam is required for all applicants. The test must have been
taken within the last five years. Request that ETS send your scores directly to
the University of Washington at code 4854.
Visit the GRE website to learn more about the test and to find a testing
center near you. Please notify the Graduate School at uwgrad@uw.edu if your
scores are missing and you took the test under an alternate spelling of your
name (ie last and first name are switched). Competitive applicants score in the
top percentiles for quantitative and mid-percentiles or better for verbal.
Recommendations
Two online letters of recommendation are required. You provide the
recommender's name, e-mail address and phone number, then our system will send
an e-form to your recommender. Please check your application file frequently to
make sure your recommendations have been received.
专业介绍
The Master of Science in Computer Science and Systems (MSCSS) degree builds a
solid foundation for advanced careers in computer science. Develop your breadth
of understanding of the latest applied and theoretical concepts within computer
science through study and research guided by renowned faculty and industry
fellows. You may choose to pursue a thesis or capstone project, or expand your
learning by exploring a variety of electives.
The Institute of Technology benefits from a close relationship with our local
high-tech industry partners. Our students gain real-world perspective through
their classroom experiences. Graduates are working as software development
engineers, program managers, cybersecurity experts, data scientists, and systems
developers at industry leaders around the globe, driving growth, innovation and
change.
联系方式:
Telephone: 2536925860
Fax Number: 2536925862
Email: uwtech@uw.edu
课程设置
- TCSS 101 Computer Science Principles (5) NW, QSR
- Introduces fundamental concepts of computer science and computational
thinking. Includes logical reasoning; problem solving; operation of computers
and networks; effective searching; and ethical, legal, and social aspects of
information technology.
- View course details in MyPlan: TCSS 101
- TCSS 142 Introduction to Programming (5) NW, QSR
- Introduces the design and implementation of computer programs. Includes an
introduction to program structure, data types, and object-oriented design.
Prerequisite: a minimum grade of 2.0 in either TMATH 116, TMATH 120, TMATH 121,
or MATH 120, a score of 154-163 on MPT-AS test, or a score of 2 on AP
exam.
- View course details in MyPlan: TCSS 142
- TCSS 143 Fundamentals of Object-Oriented Programming Theory and Application
(5) NW, QSR
- Develops fundamental concepts and techniques for analysis, design, and
implementation of computer programs using an object-oriented language. Includes
recursive techniques and use of abstract data types. Prerequisite: a minimum
grade of 2.0 in either TCSS 142 or CSE 142.
- View course details in MyPlan: TCSS 143
- TCSS 305 Programming Practicum (5) NW, QSR
- Provides a practicum in program design and development. Programming practice
on a medium-scale, object-oriented application, consolidating prior programming
principles and expanding knowledge of application design.
- View course details in MyPlan: TCSS 305
- TCSS 321 Discrete Structures I (5) NW, QSR
- Introduces definitions and tools for reasoning about discrete mathematical
objects useful for computer professionals, including set theory, propositions
and predicates, Boolean algebra, sequences, enumeration, algorithms, methods of
proof, and relations.
- View course details in MyPlan: TCSS 321
- TCSS 322 Discrete Structures II (5)
- Covers advanced topics in discrete mathematics useful for computing
professionals, including basic counting techniques, discrete probability,
recurrence relations, graphs, trees, and models of computation such as finite
state machines and Turing machines. Prerequisite: a minimum grade of 2.0 in TCSS
321 and either TMATH 110 or TMATH 390.
- View course details in MyPlan: TCSS 322
- TCSS 325 Computers, Ethics, and Society (5) VLPA/I&S
- Analyzes social, political, and ethical implications of computer and
information technologies. Covers Western ethical theories, professional ethics,
and diverse topics in computer ethics. Emphasizes writing and the construction
of ethical arguments.
- View course details in MyPlan: TCSS 325
- TCSS 333 C for System Programming (5)
- Introduces C as a language for exploring low-level machine characteristics
and interacting with operating system services. Includes bit models for numeric
data, pointers, arrays and structures, memory allocation, development of
multiple file programs, libraries, system calls, and tools for compiling and
linking.
- View course details in MyPlan: TCSS 333
- TCSS 342 Data Structures (5) QSR
- Covers data structures and classical algorithms with an emphasis on
implementing them in high-level programming languages. Includes sequential and
linked lists, binary trees, heaps, B-trees, hash tables, graphs, and algorithms
for searching and sorting. Concentrates on developing implementations,
understanding their performance, and estimating their potential effectiveness in
applications. Prerequisite: minimum grade of 2.0 in either TCES 203 or TCSS 305;
and TCSS 321.
- View course details in MyPlan: TCSS 342
- TCSS 343 Design and Analysis of Algorithms (5) NW
- Develops competencies associated with problem-solving, algorithms, and
computational models. Explores algorithms analysis and design, and computational
complexity. Includes efficient algorithms, models of computation, correctness,
time and space complexity, NP-complete problems, and undecidable problems.
Prerequisite: minimum grade of 2.0 in TCSS 342
- View course details in MyPlan: TCSS 343
- TCSS 360 Software Development and Quality Assurance Techniques (5)
NW
- Covers how to build quality software using standard development practices and
representations. Includes writing and using requirements, designing and
representing computational units, rigorous program testing, reviews and
inspections, and working effectively in teams. Prerequisite: a minimum grade of
2.0 in TCSS 342; 10 credits of writing coursework.
- View course details in MyPlan: TCSS 360
- TCSS 371 Machine Organization (5)
- Develops the hardware basis for computing systems, and the relationship
between hardware and software. Covers number representations, digital logic,
machine organization, instruction set architecture and assembly language.
Includes an introduction to C programming language and its translation into
machine instructions. Prerequisite: minimum grade of 2.0 in TCSS 333.
- View course details in MyPlan: TCSS 371
- TCSS 372 Computer Architecture (5)
- Covers the microarchitecture level of machine design and advanced
architecture features for perform enhancement. Topics include computer
performance measures, microarchitecture instructions, CPU design (datapath,
pipelines, control unit, instruction parallelism), memory hierarchy, cache
memory, virtual memory, parallel processing and multicore architectures.
Prerequisite: a minimum grade of 2.0 in TCSS 371.
- View course details in MyPlan: TCSS 372
- TCSS 380 Fundamentals of Programming Language Concepts (5)
- Introduces fundamental programming language concepts common to all
programming languages, including abstraction mechanisms, types, scoping,
binding, control flow, subprograms, and concurrency. Compares imperative and
declarative models using multiple programming languages. Examines implementation
strategies, memory model, and programming environments. Prerequisite: minimum
grade of 2.0 in TCSS 371.
- View course details in MyPlan: TCSS 380
- TCSS 390 Undergraduate Seminar in CSS (2, max. 12)
- Enhances problem-solving skills. Topics and approaches vary. Includes
lectures and problem sessions in mathematics, programming, problem solving, and
CSS applications. Does not carry credit toward the CSS degree Credit/no-credit
only.
- View course details in MyPlan: TCSS 390
- TCSS 421 Compiler Construction (5)
- Develops student understanding of how compliers translate high level
programming languages into assembly language. Includes specifying programming
language syntax, building data structures, generating assembly code, and
implementing a complier for a small high-level language. Prerequisite: minimum
grade of 2.0 in both TCSS 342 and TCSS 371.
- View course details in MyPlan: TCSS 421
- TCSS 422 Computer Operating Systems (5) QSR
- Examines the fundamental concepts of operating systems and how they function.
Includes process management, file systems, concurrency, inter-process
communication, graphical interfaces, and security. Prerequisite: a minimum grade
of 2.0 in TCSS 342; a minimum grade of 2.0 in TCSS 371.
- View course details in MyPlan: TCSS 422
- TCSS 430 Networking and Distributed Systems (5)
- Computer network architectures and protocol layers, including LANs, MANs, and
WANs; OSI protocol TCP/IP, routing, congestion, and flow control; data
compression; interface between the network and the program (e.g., sockets,
ports, mailboxes), security issues (including authentication and authorization,
encryption), distributed file systems, and remote procedure calls. Prerequisite:
a minimum grade of 2.0 in TCSS 360; a minimum grade of 2.0 in TCSS 422.
- View course details in MyPlan: TCSS 430
- TCSS 431 Network Security (5)
- Covers cryptographic methods including public and private key algorithms.
Examines protocols that utilize such methods, such as secure email, digital
signatures, authorization, e-voting, and electronic cash. Includes lab component
for demonstration of security techniques such as firewalls, intrusion detection
systems, and virtual private networks. Prerequisite: a minimum grade of 2.0 in
TCSS 321 and TCSS 325
- View course details in MyPlan: TCSS 431
- TCSS 435 Artificial Intelligence and Knowledge Acquisition (5)
- Introduction to the uses of intelligence theories, techniques, and tools.
Foundational material includes search, knowledge representation, machine
learning, and planning. Artificial intelligence techniques applied to practical
problems in areas such as control systems, optimization, scheduling, and
classification. Prerequisite: a minimum grade of 2.0 in TCSS 342.
- View course details in MyPlan: TCSS 435
- TCSS 437 Mobile Robotics (5)
- Explores algorithmic design options for motion control, navigation, and
obstacle avoidance in mobile autonomous robots. Introduces pertinent principles
from artificial intelligence and embedded real-time systems. Students construct
robots from kits and program them to demonstrate sophisticated behaviors.
Prerequisite: a minimum grade of 2.0 in TCSS 360; a minimum grade of 2.0 in TCSS
422.
- View course details in MyPlan: TCSS 437
- TCSS 440 Formal Models in Computer Science (5)
- Covers languages, finite automata, regular expressions, context-free
grammars, and other automata such as pushdown store machines and Turing
machines. Includes models of computation, computable and non-computable
functions, non-determinism, space and time complexity, tractable and intractable
functions, non-determinism, space and time. Prerequisite: a minimum grade of 2.0
in TCSS 342.
- View course details in MyPlan: TCSS 440
- TCSS 445 Database Systems Design (5) QSR
- Fundamental concepts, system organization, and implementation of database
systems. Methods for obtaining requirements and designing database systems;
differences between hierarchical, relational, and network database designs; file
organizations and data structures; structured query language (SQL); query
optimization; database design; concurrency control; security; issues involving
distributed database systems. Prerequisite: a minimum grade of 2.0 in TCSS
342.
- View course details in MyPlan: TCSS 445
- TCSS 450 Mobile Application Programming (5)
- Covers mobile programming principles. Explores application life cycle, user
interfaces, data management, graphics libraries, memory management,
localization, and web services. Prerequisite: TCSS 360.
- View course details in MyPlan: TCSS 450
- TCSS 452 Human-Computer Interaction (5)
- Examines human-centered design of interactive systems. Focuses on
understanding user needs, brainstorming, sketching, choosing from among design
alternatives, prototyping, usability testing, representing, communicating, and
critiquing designs. Prerequisite: minimum grade of 2.0 in either TCSS 143 or T
INST 312.
- View course details in MyPlan: TCSS 452
- TCSS 455 Introduction to Machine Learning (5)
- Introduces methods for supervised and unsupervised machine learning, such as
decision trees, random forests, boosted decision trees, logistic regression,
neural networks, deep learning, clustering, and association rule mining.
Prerequisite: TCSS 343, or permission from instructor.
- View course details in MyPlan: TCSS 455
- TCSS 456 Introduction to Natural Language Processing (5)
- Introduces fundamentals concepts and algorithms in Natural language
Processing (NLP). Includes relevant background material in linguistics,
mathematics, probability theory, and computer science. Covers text similarly,
part of speech tagging, parsing, semantics, question answering, sentiment
analysis, and text summarization. Prerequisite: minimum grade of 2.0 in TCSS
342.
- View course details in MyPlan: TCSS 456
- TCSS 458 Computer Graphics (5) NW
- Introduction to the main concepts in image synthesis, modeling, and
animation. Topics include displays, drawing and rendering algorithms, geometric
transformations, 2- and 3D viewing, objects representation, and computer
animation. Prerequisite: a minimum grade of 2.0 in TCSS 342.
- View course details in MyPlan: TCSS 458
- TCSS 460 Client/Server Programming for Internet Applications (5)
- Examines the languages and techniques for internet client/server application
programming. Includes languages like CGI, Perl, XML, JavaScript, and DHTML, and
topics like scripts, queries, forms, data access, redirection, firewalls,
proxies, hypermedia, cookies, and gateways. Prerequisite: a minimum grade of 2.0
in TCSS 360.
- View course details in MyPlan: TCSS 460
- TCSS 461 Advanced Software Engineering (5)
- Analyzes system re-engineering, domain-specific languages, generative
development, system design and service-oriented architecture. Also covers how to
handle legacy systems, utilize model driven software development to automate
code generation and understand low to high level architectures, by using
software engineering methodologies, refactoring, UML, and the Eclipse framework.
Prerequisite: TCSS 360.
- View course details in MyPlan: TCSS 461
- TCSS 465 Embedded Real-Time System Programming (5)
- An examination of particular theory and practice in designing software
embedded in electronic devices and controllers. Includes clocks, threads,
multitasking, critical sections, monitors, scheduling, on chip and external
device interfacing, communications, and fault tolerance. Prerequisite: a minimum
grade of 2.0 in TCSS 422.
- View course details in MyPlan: TCSS 465
- TCSS 478 Fundamentals in Bioinformatics (5)
- Introduces basic concepts and techniques used in the analysis of biological
data, as well as applications of computational techniques in biological
applications. Students will learn biology concepts and vocabulary. The
programming language R primarily will be used. Prerequisite: TCSS 343;
recommended: No background in biology is required.
- View course details in MyPlan: TCSS 478
- TCSS 480 Comparative Programming Languages (5)
- Study and comparison of several programming languages in regards to data
structures, operations, notation, and control. Examines programming paradigms,
implementation strategies, programming environments, and programming style.
Prerequisite: minimum grade of 2.0 in both TCSS 342 and TCSS 333.
- View course details in MyPlan: TCSS 480
- TCSS 481 Computer Security (5)
- Discusses the theoretical and practical issues surrounding computer security
and data protection. Explores formal models of encryption and authentication;
operating system and network security; programming and vulnerabilities analysis.
Prerequisite: either T INST 312, which may be taken concurrently, or a minimum
grade of 2.0 in both TCSS 342 and TCSS 325.
- View course details in MyPlan: TCSS 481
- TCSS 487 Cryptography (5)
- Covers basic concepts of cryptography, including authentication, public key
cryptography, and digital signatures. Additionally, it covers modern definitions
of security, implementation aspects of cryptographic schemes and their use in
computer networks and the internet. Prerequisite: minimum grade of 2.0 in TCSS
321 or TMATH 125 or TMATH 402.
- View course details in MyPlan: TCSS 487
- TCSS 488 Coding Theory (5)
- Covers electronic communication over noisy channels, and digital storage on
various types of media. Describes constructions of modern error-correction
codes, including Reed Solomon, Golay, and BCH codes. Also covers computational
aspects, complexity of encoding/decoding algorithms, their implementations and
their uses in modern communication systems. Prerequisite: minimum grade of 2.0
in TMATH 308 or TCSS 321.
- View course details in MyPlan: TCSS 488
- TCSS 490 Special Topics in Computing and Software Systems (5, max. 10)
QSR
- Examines current topics and issues associated with computing and software
systems.
- View course details in MyPlan: TCSS 490
- TCSS 491 Computational Worlds (5)
- Development of large-scale software project in advanced imaging involving
computational intelligence and artificial life applied to such fields as game
development or virtual reality. Students work in interdisciplinary teams that
integrate several computer science areas. Advanced topics: game programming,
artificial life, virtual humans, and computer animation. Prerequisite: minimum
grade of 2.0 in TCSS 360.
- View course details in MyPlan: TCSS 491
- TCSS 497 Internship in Computing and Software Systems (1-10, max.
10)
- Project as delineated in a contract between student, faculty advisor, and
community sponsor. Prerequisite: minimum grade of 2.0 in TCSS 360.
- View course details in MyPlan: TCSS 497
- TCSS 498 Directed Readings in Computing and Software Systems (1-5, max.
10)
- Readings as specified in agreement with faculty. Prerequisite: TCSS
360.
- View course details in MyPlan: TCSS 498
- TCSS 499 Undergraduate Research in Computing and Software Systems (1-10, max.
10)
- Design and implementation of a research study as specified in a contract with
faculty. Prerequisite: TCSS 360.
- View course details in MyPlan: TCSS 499
- TCSS 510 Enterprise Architecture Foundations (5)
- Examines foundational aspects of both enterprise and architectural thinking,
including the application software to technology to solution architecture
continuum, the role of EA in business and IT alignment, architectural styles and
techniques for capturing and documenting architectures. Practices techniques for
analyzing and reasoning about architectures.
- View course details in MyPlan: TCSS 510
- TCSS 511 Advanced Enterprise Architecture (5)
- Examines advanced aspects of enterprise architecture practices and its
application to guide and support business strategy. An EA maturity framework and
governance practices are developed through a case study on applying evolving
technologies - cloud, mobile, social media, big data in the EA context to solve
business problems. Prerequisite: TCSS 510.
- View course details in MyPlan: TCSS 511
- TCSS 531 Cloud and Virtualization Systems Engineering (5)
- Provides an introduction to cloud computing and virtualization - enabling
multiple instances of operating systems to be run on a single physical system.
Concepts include hypervisors, virtual machines, paravirtualization and virtual
appliances for design of cloud computing platforms; server and desktop
virtualization; storage, network, and application virtualization.
- View course details in MyPlan: TCSS 531
- TCSS 540 Theory of Computing (5)
- Covers computational models including finite automata, regular expressions,
context-free grammars, pushdown automata, Turing machines, and techniques for
analyzing them. Basic computability theory and undecidability, computational
complexity theory, and NP-completeness.
- View course details in MyPlan: TCSS 540
- TCSS 543 Advanced Algorithms (5)
- Prepares students for analysis and use of advanced algorithms. Covers
advanced graph, number theoretical (with applications to cryptography),
one-line, approximation (with performance guarantees), and probabilistic
algorithms. Covers turing machines and NP-completeness. Not available for
elective credit.
- View course details in MyPlan: TCSS 543
- TCSS 544 Applied Linear Algebra (5)
- Examines math concepts on linear algebra and linear transformation, and
subjects on singular value decomposition, Fourier transforms, Wavelet
transforms, and other topics. Students apply these math concepts and implement
numerical solutions to problems in areas including pattern recognition,
information retrieval, web search, image processing, cryptography, and machine
learning.
- View course details in MyPlan: TCSS 544
- TCSS 545 Database Systems Design (5)
- Covers fundamental database concepts; relational databases; conceptual data
modeling; entity relational diagrams and UML; logical and physical design; SQL
commands and queries; query optimization; Web database applications development;
transaction management; distributed and object-oriented databases; data
warehousing and data mining; XML query language; image and text retrieval; data
storage; and indexing.
- View course details in MyPlan: TCSS 545
- TCSS 551 Big Data Analytics (5)
- Examines a variety of techniques to perform data analytics and their
extensions to big data infrastructure. Students will be able to identify
mathematical foundations of data analytics, data analyses algorithms and tools.
Introduces big data infrastructure, distributed computational paradigm, and
distributed data analytics algorithms. Prerequisite: minimum grade of 3.0 in
TCSS 343 and TCSS 445 or equivalent.
- View course details in MyPlan: TCSS 551
- TCSS 554 Information Retrieval and Web Search (5)
- Examines the basic principles and techniques used in information retrieval
(IR) and web search, including keyword based search, content analysis (vector
space model, probabilistic language models), link analysis (PageRank), indexing,
text classification, document clustering, aggregated search, user-system
interaction in IR, and evaluation of IR systems.
- View course details in MyPlan: TCSS 554
- TCSS 555 Machine Learning (5)
- Explores learning and predictive modeling methods for data analysis, such as
decision trees, instance based earning, Baysian learning, neural networks,
ensemble methods, and support vector machines. Surveys fundamental concepts of
learning theory.
- View course details in MyPlan: TCSS 555
- TCSS 558 Applied Distributed Computing (5)
- Covers techniques and concepts associated with constructing software that is
distributed, reliable, efficient, and extensible; programming multi-threaded
applications, communication among objects on different computers, creating a
server accessed by multiple clients, using common object design patterns,
locating and tailoring components. Not available for elective credit.
- View course details in MyPlan: TCSS 558
- TCSS 559 Web Services (5)
- Investigates a service-oriented computing paradigm for use with the Internet,
web services. Includes comparisons of distributed computing paradigms,
enterprise application integration, service oriented architecture, web services
concepts, web services technologies, service coordination protocols, service
compositions, and service applications. Prerequisite: TCSS 558.
- View course details in MyPlan: TCSS 559
- TCSS 562 Software Engineering for Cloud Computing (5)
- Presents the principles of software engineering including: requirements
analysis, design and prototyping, system analysis, testing, project management,
software metrics, processes and lifecycles including Agile and DevOps in the
context of the design and development of a distributed cloud based
application.
- View course details in MyPlan: TCSS 562
- TCSS 564 Database Systems Internals (5)
- Analyzes the internals of a database system and the principles of building a
database engine, including buffer management, query execution and optimization,
and transaction management. Provides hands-on experience on the internals of one
of the commercial database management systems as a case study. Prerequisite:
TCSS 343; TCSS 445.
- View course details in MyPlan: TCSS 564
- TCSS 565 Spatial Databases with Applications in Geographic Information
Systems (5)
- Evaluates spatial databases, and focuses on their applications in Geographic
Information Systems (GIS). Covers how to describe how to represent, store,
index, and process spatial objects and focus on their application in the field
of Geographic Information Systems (GIS). Prerequisite: minimum grade of 3.0 in
TCS 343 or equivalent.
- View course details in MyPlan: TCSS 565
- TCSS 569 Introduction to Cyber-Physical Systems (5)
- Covers fundamentals of Cyber-Physical Systems (CPS). In addition to signals
and systems, linear transforms and analysis, state machines and how to build
models of hybrid systems, the course also introduces basics of embedded systems
and the computation models of systems, including both software components and
physical dynamics.
- View course details in MyPlan: TCSS 569
- TCSS 570 Introduction to Parallel Computing (5)
- Covers parallel architectures, interconnection networks and embeddings;
fundamental communication operations; performance and scalability metrics;
parallel programming paradigms, message-passing programming in MPI, and
shared-address space programming in threads; parallel algorithms for sorting,
searching, matrix problems, graph problems, and dynamic load balancing.
Prerequisite: TCSS 543.
- View course details in MyPlan: TCSS 570
- TCSS 573 Internet of Things (5)
- Examines physical design and logical design of Internet of Things, functional
blocks and architecture, protocols and communication models, enabling
technologies, application domains specific to Internet of Things, smart objects,
development tools, system management, cloud services, security and data
analytics. Prerequisite: TCSS 558, or permission from instructor.
- View course details in MyPlan: TCSS 573
- TCSS 574 Cyber Electromagnetics (5)
- Covers fundamental of EM Theory. Electromagnetic compatibility and
interference. Electromagnetic intrusion and jamming. Electromagnetic hardening.
Electromagnetic spectrum management. Electromagnetic Pulses (EMP). Smart-Grid
and SCADA Protection. TEMPEST. Recommended: PHYS 122 and PHYS 123 or
Electromagnetics Basics.
- View course details in MyPlan: TCSS 574
- TCSS 575 Control of Cyber-physical Systems (5)
- Introduces optimal control theories. Reviews the current state of network
control efforts for CPS. Studies recent development of control algorithms for
CPS. Focuses on approaches to deliver fully distributed control over wireless
sensor networks from control theoretic perspective. Prerequisite: TCSS 569, or
permission from the instructor.
- View course details in MyPlan: TCSS 575
- TCSS 580 Information Theory (5)
- Examines entropy and other measures of information; data compression
fundamentals and modern algorithms; reliable data transmission; and the channel
capacity theorem for discrete memoryless and Gaussian channels. Applications to
games of chance, perfect secrecy, and error correction are briefly covered.
Prerequisite: TCSS 543.
- View course details in MyPlan: TCSS 580
- TCSS 581 Cryptology (5)
- Covers simple ciphers, block and stream ciphers, attacks, public-key ciphers,
electronic signature, cryptographic algorithms, and real-world examples.
Prerequisite: TCSS 543.
- View course details in MyPlan: TCSS 581
- TCSS 582 Cryptographic Protocols (5)
- Covers advanced topics of cryptographic protocols, including formal
definitions of security, composability, zero knowledge proofs, commitment
schemes, oblivious transfer, secure two-party computations and secure multi-play
computations. Prerequisite: minimum grade of 3.0 in TCSS 540, TCSS 543 or TCSS
581.
- View course details in MyPlan: TCSS 582
- TCSS 583 Post-Quantum Cryptosystems (5)
- Covers fundamentals of Shor's attack against conventional cryptography and
notions of quantum-resistant cryptosystems. Includes the main lattice-based
schemes for encryption, signatures, and homomorphic encryption, as well as
code-based encryption, hash-based, and multivariate digital signatures.
Additionally, highlights research problems and deployment issues of the
technique. Prerequisite: TCSS 543.
- View course details in MyPlan: TCSS 583
- TCSS 584 Testing VLSI Circuits and Hardware Security (5)
- Covers topics related to testing VLSI circuits and hardware security
including manufacturing test fundamentals, fault modeling and simulation,
automatic test pattern generation algorithms, Design-for-Testability,
testability vs security, trustworthiness of integrated circuits; Counterfeit
ICs; Hardware Trojans; Side-Channel attacks; Design-for-Trust. Prerequisite:
TCES 330.
- View course details in MyPlan: TCSS 584
- TCSS 588 Bioinformatics (5)
- Covers applications of computational techniques in various biological
applications, including sequence analysis, systems biology, personalized
medicine, and drug discovery. Focuses on machine learning methods in mining big
data sources in biology. No background in biology is required. Prerequisite:
TCSS 343. Offered: Sp.
- View course details in MyPlan: TCSS 588
- TCSS 590 Special Topics in Computing and Software Systems (1-5, max.
30)
- Examines current graduate-level topics and issues associated with computing
and software systems. Prerequisite: permission of instructor.
- View course details in MyPlan: TCSS 590
- TCSS 592 Research Seminar in Bioinformatics (1-3, max. 5)
- Discusses recent developments in bioinformatics, focusing on machine learning
methods and integration of big biology data. Consists of reading papers,
surveying the latest methods, and tools developed for high dimensional data.
Credit/no-credit only.
- View course details in MyPlan: TCSS 592
- TCSS 593 Research Seminar in Data Science (1-3, max. 5)
- Discusses recent developments in data science, focusing on applications and
advances in data management and mining for data from a variety of domains.
Consists of reading papers, surveying the latest tools, and techniques of data
science. Credit/no-credit only.
- View course details in MyPlan: TCSS 593
- TCSS 594 Research Seminar in Geographic Information Systems (1-3, max.
5)
- Discusses recent developments in Geographic Information Systems (GIS),
focusing on applications and advances in spatiotemporal, mobile, and sensor data
management. Consists of reading papers and surveying the latest tools and
techniques of GIS. Credit/no-credit only.
- View course details in MyPlan: TCSS 594
- TCSS 595 Research Seminar in Cybersecurity (1-3, max. 5)
- Discusses recent developments in cybersecurity, focusing on applications and
advances in cryptology; network and systems security; and privacy and their
applications to different domains. Consists of reading papers and surveying the
latest tools and techniques in cybersecurity. Credit/no-credit only.
- View course details in MyPlan: TCSS 595
- TCSS 597 Research Seminar in Cyber Physical System (1-3, max. 5)
- Discusses recent developments in the modeling analysis, security, and control
of cyber-physical systems. Primarily consists of reading papers, surveying the
latest hardware/software implementation methods and tools developed for cyber
physical systems. Offered: AWSp.
- View course details in MyPlan: TCSS 597
- TCSS 598 Masters Seminar in CSS ([1-5]-, max. 5)
- Surveys the canonical literature pertinent to a master's degree in CSS.
Readings in research and applied computing are assigned to provide a grounding
in Masters level work. Weekly discussions of topics taken from the readings. Not
available for elective credit.
- View course details in MyPlan: TCSS 598
- TCSS 600 Independent Study or Research (*-)
- Examines current topics and issues associated with computing and software
systems. Prerequisite: permission of instructor.
- View course details in MyPlan: TCSS 600
- TCSS 700 Master's Thesis (*-)
- Provides an opportunity to demonstrate comprehensive knowledge in CSS.
Completes a research project led by a CSS graduate faculty advisor.
Prerequisite: TCSS 543; TCSS 558; TCSS 598; permission of instructor
required
- View course details in MyPlan: TCSS 700
- TCSS 702 Design Project in Computing and Software Systems ([1-10]-, max.
10)
- Provides an opportunity to demonstrate comprehensive knowledge in CSS.
Develops a significant design and implementation project led by a CSS faculty
graduate advisor. Prerequisite: TCSS 543; TCSS 558; TCSS 598; permission of
instructor required.
- View course details in MyPlan: TCSS 702