Subject: CSDS
Term: Summer 2023

CSDS 132: Programming in Java (800/2188)
MT 01:00-04:00 PM Jun 05-Aug 01
Ozguner, O

An in-depth survey of modern programming language features, computer programming and algorithmic problem solving with an emphasis on the Java language. Computers and code compilation; conditional statements, subprograms, loops, methods; object-oriented design, inheritance and polymorphism, abstract classes and interfaces; types, type systems, generic types, abstract data types, strings, arrays, linked lists; software development, modular code design, unit testing; strings, text and file I/O; GUI components, GUI event handling; threads; comparison of Java to C, C++, and C#. Offered as CSDS 132 and ECSE 132.

CSDS 132: Programming in Java (801/3469)
W 01:00-04:00 PM Jun 05-Aug 01
Ozguner, O

An in-depth survey of modern programming language features, computer programming and algorithmic problem solving with an emphasis on the Java language. Computers and code compilation; conditional statements, subprograms, loops, methods; object-oriented design, inheritance and polymorphism, abstract classes and interfaces; types, type systems, generic types, abstract data types, strings, arrays, linked lists; software development, modular code design, unit testing; strings, text and file I/O; GUI components, GUI event handling; threads; comparison of Java to C, C++, and C#. Offered as CSDS 132 and ECSE 132.

CSDS 221: Full Stack Web Development (100/2184)
M 07:00-09:00 PM Jun 05-Aug 01
Izadnegahdar, D

An introduction to full stack web development, the course provides foundations in HTML, CSS, and programming in JavaScript. The course introduces front-end technologies and APIs for creating interactive web applications such as Bootstrap, React.js, and Progressive Web Apps, back-end technologies and APIs for creating a web server such as Node.js and Express.js, and database integration technologies such as MySQL and MongoDB. Some background in algorithms, data structures, and databases is helpful but not required.

CSDS 221: Full Stack Web Development (101/3468)
W 07:00-09:00 PM Jun 05-Aug 01
Izadnegahdar, D

An introduction to full stack web development, the course provides foundations in HTML, CSS, and programming in JavaScript. The course introduces front-end technologies and APIs for creating interactive web applications such as Bootstrap, React.js, and Progressive Web Apps, back-end technologies and APIs for creating a web server such as Node.js and Express.js, and database integration technologies such as MySQL and MongoDB. Some background in algorithms, data structures, and databases is helpful but not required.

CSDS 233: Introduction to Data Structures (100/2137)
MW 09:30-12:25 PM Jun 20-Aug 01
Ray, S

Different representations of data: lists, stacks and queues, trees, graphs, and files. Manipulation of data: searching and sorting, hashing, recursion and higher order functions. Abstract data types, templating, and the separation of interface and implementation. Introduction to asymptotic analysis. The Java language is used to illustrate the concepts and as an implementation vehicle throughout the course. Offered as CSDS 233 and ECSE 233.

CSDS 281: Logic Design and Computer Organization (800/3453)
TR 01:00-03:30 PM Jun 05-Jul 18
Gurkan Cavusoglu, E

Fundamentals of digital systems in terms of both computer organization and logic level design. Organization of digital computers; information representation; boolean algebra; analysis and synthesis of combinational and sequential circuits; datapaths and register transfers; instruction sets and assembly language; input/output and communication; memory. Offered as CSDS 281 and ECSE 281.

CSDS 281: Logic Design and Computer Organization (810/3454)
W 01:00-03:30 PM Jun 05-Jul 18
Gurkan Cavusoglu, E

Fundamentals of digital systems in terms of both computer organization and logic level design. Organization of digital computers; information representation; boolean algebra; analysis and synthesis of combinational and sequential circuits; datapaths and register transfers; instruction sets and assembly language; input/output and communication; memory. Offered as CSDS 281 and ECSE 281.

CSDS 302: Discrete Mathematics (100/3457)
MTW 09:00-01:30 PM May 15-Jun 02
Xu, S

A general introduction to basic mathematical terminology and the techniques of abstract mathematics in the context of discrete mathematics. Topics introduced are mathematical reasoning, Boolean connectives, deduction, mathematical induction, sets, functions and relations, algorithms, graphs, combinatorial reasoning. Offered as CSDS 302, ECSE 302 and MATH 304.

CSDS 310: Algorithms (100/3455)
MWF 09:00-11:30 AM Jun 05-Jul 11
Koyuturk, M

Fundamentals in algorithm design and analysis. Loop invariants, asymptotic notation, recurrence relations, sorting algorithms, divide-and-conquer, dynamic programming, greedy algorithms, basic graph algorithms. Offered as CSDS 310 and CSDS 310N.

CSDS 310: Algorithms (800/3547)
MWF 09:00-11:30 AM Jun 05-Jul 11
Koyuturk, M

Fundamentals in algorithm design and analysis. Loop invariants, asymptotic notation, recurrence relations, sorting algorithms, divide-and-conquer, dynamic programming, greedy algorithms, basic graph algorithms. Offered as CSDS 310 and CSDS 310N.

CSDS 310N: Algorithms (100/3456)
MWF 09:00-11:30 AM Jun 05-Jul 11
Koyuturk, M

Fundamentals in algorithm design and analysis. Loop invariants, asymptotic notation, recurrence relations, sorting algorithms, divide-and-conquer, dynamic programming, greedy algorithms, basic graph algorithms. Offered as CSDS 310 and CSDS 310N.

CSDS 310N: Algorithms (800/3548)
MWF 09:00-11:30 AM Jun 05-Jul 11
Koyuturk, M

Fundamentals in algorithm design and analysis. Loop invariants, asymptotic notation, recurrence relations, sorting algorithms, divide-and-conquer, dynamic programming, greedy algorithms, basic graph algorithms. Offered as CSDS 310 and CSDS 310N.

CSDS 341: Introduction to Database Systems (800/2194)
MTW 09:30-11:30 AM Jun 05-Aug 01
Ozguner, O

Relational model, ER model, relational algebra and calculus, SQL, OBE, security, views, files and physical database structures, query processing and query optimization, normalization theory, concurrency control, object relational systems, multimedia databases, Oracle SQL server, Microsoft SQL server. Offered as CSDS 341 and CSDS 341N.

CSDS 341N: Introduction to Database Systems (800/2195)
MTW 09:30-11:30 AM Jun 05-Aug 01
Ozguner, O

Relational model, ER model, relational algebra and calculus, SQL, OBE, security, views, files and physical database structures, query processing and query optimization, normalization theory, concurrency control, object relational systems, multimedia databases, Oracle SQL server, Microsoft SQL server. Offered as CSDS 341 and CSDS 341N.

CSDS 356: Data Privacy (800/2164)
MTWRF 08:30-11:30 AM May 15-Jun 02
Ayday, E

Introduction to privacy, economics and incentives, crypto-based solution for privacy, hiding data from the database user, hiding access patterns from the database owner, anonymous routing and TOR, privacy in online social networks, privacy in cellular and Wi-Fi networks, location privacy, privacy in e-cash systems, privacy in e-voting, genomic privacy. Offered as CSDS 356 and CSDS 456.

CSDS 393: Software Engineering (100/3484)
MWF 05:30-08:25 PM Jul 12-Aug 09
Jimenez Segovia, L

Topics: Introduction to software engineering; software lifecycle models; development team organization and project management; requirements analysis and specification techniques; software design techniques; programming practices; software validation techniques; software maintenance practices; software engineering ethics. Undergraduates work in teams to complete a significant software development project. Graduate students are required to complete a research project. Offered as CSDS 393, CSDS 393N, and CSDS 493.

CSDS 393N: Software Engineering (100/3485)
MWF 05:30-08:25 PM Jul 12-Aug 09
Jimenez Segovia, L

Topics: Introduction to software engineering; software lifecycle models; development team organization and project management; requirements analysis and specification techniques; software design techniques; programming practices; software validation techniques; software maintenance practices; software engineering ethics. Undergraduates work in teams to complete a significant software development project. Graduate students are required to complete a research project. Offered as CSDS 393, CSDS 393N, and CSDS 493.

CSDS 401: Foundations of Computer Science (500/2174)
W 08:00-09:00 PM May 08-Aug 14
Xu, S

This section is available only to students in the online MS in Computer Science program.

CSDS 401: Foundations of Computer Science (777/2183)
Ganesan, A

Course taught in INDIA. INSOFE students only.

CSDS 425: Computer Networks I (777/2168)
Pappu, S

Course taught in INDIA. INSOFE students only.

CSDS 433: Database Systems (500/3491)
R 08:00-09:00 PM May 08-Aug 14
Wu, Y

This section is available only to students in the online MS in Computer Science program.

CSDS 435: Data Mining (777/2169)
Gupta, M

Course taught in INDIA. INSOFE students only.

CSDS 438: High Performance Data and Computing (800/3461)
MWF 05:30-06:45 PM Jun 20-Aug 01
Gajurel, S

High performance data and computing (HPDC) leverages parallel processing in order to maximize speed and throughput. This hands-on course will cover theoretical and practical aspects of HPDC. Theoretical concepts covered include computer architecture, parallel programming, and performance optimization. Practical applications will be discussed from various information and scientific fields. Practical considerations will include HPDC job management and Unix scripting. Weekly assessments and a course project will be required. Offered as CSDS 438 and ECSE 438.

CSDS 440: Machine Learning (777/2139)
Chandra, P

Course taught in INDIA. INSOFE students only.

CSDS 448: Smartphone Security (500/3492)
T 08:00-09:00 PM May 08-Aug 14
Ayday, E

This section is available only to students in the online MS in Computer Science program.

CSDS 456: Data Privacy (800/2165)
MTWRF 08:30-11:30 AM May 15-Jun 02
Ayday, E

Introduction to privacy, economics and incentives, crypto-based solution for privacy, hiding data from the database user, hiding access patterns from the database owner, anonymous routing and TOR, privacy in online social networks, privacy in cellular and Wi-Fi networks, location privacy, privacy in e-cash systems, privacy in e-voting, genomic privacy. Offered as CSDS 356 and CSDS 456.

CSDS 465: Computer Vision (777/2167)
Vuppala, S

Course taught in INDIA. INSOFE students only.

CSDS 600: Contemporary Issues in Big Data (777/2170)
Murthy, S

Course taught in INDIA. INSOFE students only.

CSDS 601: Independent Study (100/3596)
Xu, S


CSDS 651: Thesis M.S. (100/2084)
Ayday, E

Credit as arranged.

CSDS 651: Thesis M.S. (101/2085)
Chaudhary, V

Credit as arranged.

CSDS 651: Thesis M.S. (102/2086)
Connamacher, H

Credit as arranged.

CSDS 651: Thesis M.S. (103/2087)
Koyuturk, M

Credit as arranged.

CSDS 651: Thesis M.S. (104/2088)
Lewicki, M

Credit as arranged.

CSDS 651: Thesis M.S. (105/2089)
Li, J

Credit as arranged.

CSDS 651: Thesis M.S. (106/2090)
Liberatore, V

Credit as arranged.

CSDS 651: Thesis M.S. (107/2091)
Ozguner, O

Credit as arranged.

CSDS 651: Thesis M.S. (108/2092)
Podgurski, H

Credit as arranged.

CSDS 651: Thesis M.S. (109/2093)
Rabinovich, M

Credit as arranged.

CSDS 651: Thesis M.S. (110/2094)
Ray, S

Credit as arranged.

CSDS 651: Thesis M.S. (111/2095)
Wang, A

Credit as arranged.

CSDS 651: Thesis M.S. (112/2096)
Wu, Y

Credit as arranged.

CSDS 651: Thesis M.S. (113/2097)
Xiao, X

Credit as arranged.

CSDS 651: Thesis M.S. (114/2098)
Xu, S

Credit as arranged.

CSDS 651: Thesis M.S. (115/2099)
Ye, F

Credit as arranged.

CSDS 695: Project M.S. (100/2116)
Ayday, E

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (101/2117)
Chaudhary, V

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (102/2118)
Connamacher, H

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (103/2119)
Koyuturk, M

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (104/2120)
Lewicki, M

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (105/2121)
Li, J

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (106/2122)
Liberatore, V

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (107/2123)
Ozguner, O

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (108/2124)
Podgurski, H

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (109/2125)
Rabinovich, M

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (110/2126)
Ray, S

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (111/2127)
Wang, A

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (112/2128)
Wu, Y

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (113/2129)
Xiao, X

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (114/2130)
Xu, S

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (115/2131)
Ye, F

Research course taken by Plan B M.S. students.

CSDS 695: Project M.S. (116/3570)
Kuppannagari, S

Research course taken by Plan B M.S. students.

CSDS 701: Dissertation Ph.D. (100/2100)
Ayday, E

Credit as arranged.

CSDS 701: Dissertation Ph.D. (101/2101)
Chaudhary, V

Credit as arranged.

CSDS 701: Dissertation Ph.D. (102/2102)
Connamacher, H

Credit as arranged.

CSDS 701: Dissertation Ph.D. (103/2103)
Koyuturk, M

Credit as arranged.

CSDS 701: Dissertation Ph.D. (104/2104)
Lewicki, M

Credit as arranged.

CSDS 701: Dissertation Ph.D. (105/2105)
Li, J

Credit as arranged.

CSDS 701: Dissertation Ph.D. (106/2106)
Liberatore, V

Credit as arranged.

CSDS 701: Dissertation Ph.D. (107/2107)
Ozguner, O

Credit as arranged.

CSDS 701: Dissertation Ph.D. (108/2108)
Podgurski, H

Credit as arranged.

CSDS 701: Dissertation Ph.D. (109/2109)
Rabinovich, M

Credit as arranged.

CSDS 701: Dissertation Ph.D. (110/2110)
Ray, S

Credit as arranged.

CSDS 701: Dissertation Ph.D. (111/2111)
Wang, A

Credit as arranged.

CSDS 701: Dissertation Ph.D. (112/2112)
Wu, Y

Credit as arranged.

CSDS 701: Dissertation Ph.D. (113/2113)
Xiao, X

Credit as arranged.

CSDS 701: Dissertation Ph.D. (114/2114)
Xu, S

Credit as arranged.

CSDS 701: Dissertation Ph.D. (115/2115)
Ye, F

Credit as arranged.