Skip to Content

Course Search Results

  • 3.00 Credits

    In this course, students will learn about various human aspects involved in security and privacy matters connected to technology, including but not limited to: theories of social behavior; laws, regulations, and public policy; UI/UX; economic and organizational considerations; security- and privacy-sensitive software engineering; etc. The course is taught with an active-learning approach with in-class activities and a group project dealing with one or more human and social aspects pertaining to security and privacy issues in everyday technologies. At the end of the course, students will be able to identify, analyze, and address various human aspects in development, deployment, and use of technology to help achieve optimal security and privacy for users and organizations
  • 3.00 Credits

    Representing information about real world enterprises using important data models including the entity-relationship, relational, and object-oriented approaches. Database design criteria, including normalization and integrity constraints. Implementation techniques using commercial database management system software and database connector APIs. Selected advanced topics such as query and transaction processing and index data structures. Prerequisites: 'C-' or better in CS 3500 AND (Full Major status in Computer Science OR Computer Engineering OR Software Development)
  • 3.00 Credits

    Information retrieval (IR) is a research topic that concerns the organization, understanding, and access of information. Example applications of IR such as search engines (e.g., Google) and recommender systems (e.g., Spotify) have already become a significant part of everybody's lives. In this course, you will learn about the basic concepts of information retrieval and the underlying technologies that support the construction of modern IR systems. You will also obtain hands-on experience on these techniques by proposing and finishing your own information retrieval projects using existing toolkits and state-of-the-art algorithms. This is a combination of the undergraduate level (CS 5550) and graduate level (CS 6550) introductory courses for information retrieval. It will cover the basic design, algorithms, implementation, and evaluation of modern information retrieval systems. Topics include: search engine architecture, text processing, indexing, retrieval models, evaluation, and other advanced techniques and applications such as personalization, recommendation, question answering, etc. Prerequisites: 'C-' or better in CS 3130 AND CS 3500 AND (Full Major status in Computer Science OR Software Development)
  • 3.00 Credits

    Interactive 3D computer graphics, polygonal representations of 3-D objects. Interactive lighting models. Introduction to interactive texture mapping, shadow generation, image-based techniques such as stencils, hidden-line removal, and silhouette edges. Introduction to image-based rendering, global illumination, and volume rendering. Undergraduate students only. Prerequisites: 'C-' or better in CS 3500 AND (MATH 2250 OR MATH 2270) AND (Full Major status in Computer Science OR Computer Engineering OR Software Development)
  • 3.00 Credits

    This course introduces the principles, methods, and techniques for effective visual analysis of data as applied to data science. We will explore aspects of visualization related to tabular (high-dimensional) data, graphs, text, and maps. The course begins by bootstrapping the necessary technical skills (web development with HTML5 and JavaScript), followed by an overview of principles from perception and design, continues with visualization fundamentals such as interactions and views, and then focuses on visualization techniques and methods for non-spatial data types and maps. Throughout the course, we will continue to analyze, critique, and redesign visualizations. Students will acquire hands-on experience designing and implementing interactive, web-based visualizations using cutting edge visualization libraries. A complementary course - Visualization for Scientific Data - that focuses on the visualization of spatial data (e.g., grid-based data from simulations and scanning devices) is offered in the spring. Prerequisites: 'C-' or better in CS 3500 AND (Full Major status in Computer Science OR Computer Engineering OR Software Development)
  • 3.00 Credits

    Introduction to the principles, methods, and techniques for effective visual analysis of scientific data. Students will explore many aspects of visualization, including techniques for scalar, vector, and tensor field data; surface and volume geometry representations and scientific animation. Students will acquire hands-on experience using visualization software to study applications including but not limited to those that arise in science, engineering, and medicine. A complementary course - CS 5630/6630 Visualization for Data Science - that focuses on visualization related to tabular data (e.g., graphs, text, and maps), will be taught each Fall Semester. Prerequisites: 'C' or better in CS 3500 AND ((MATH 1210 AND 1220) OR (MATH 1310 AND 1320) OR (MATH 1311 AND 1321) OR AP Calc BC score of 4+) AND Full Major status in Computer Science OR Software Development
  • 4.00 Credits

    Basic concepts of the design of digital CMOS integrated circuits. Course topics include static and dynamic properties of MOS circuits, composite layout of CMOS circuits, modeling of transistors for stimulation, and commonly encountered CMOS circuit structures. Students complete design, composite layout, and simulation of a simple integrated circuit using computer-aided design tools. Prerequisites: "C-" or better in (CS 3700 OR ECE 3700) AND (Full Major status in Computer Science OR Computer Engineering).
  • 3.00 Credits

    This course is an introduction to analog integrated circuit (IC) analysis and design. The class focuses on analysis and design of elementary single- and two-transistor stages commonly used in amplifiers, comparators, sample-and-hold circuits, etc. Students learn the fundamentals of feedback, electronic noise, and gm/ID design methodology. Design-oriented analysis techniques are used to bridge the gap between analysis and design. Students perform simulation, design, and circuit optimization using Cadence and Matlab (no layout or verification required). Prerequisites: "C-" or better in ECE 3110 AND (Full Major status in Computer Science OR Computer Engineering).
  • 3.00 Credits

    Introduction to theory and algorithms used for computer-aided synthesis of digital integrated circuits. Topics include algorithms and representations for Boolean optimization, hardware modeling, combinational logic optimization, sequential logic optimization, and technology mapping. Undergraduate students only. Prerequisites: "C-" or better in (CS 3700 OR ECE 3700) AND (Full Major status in Computer Science OR Computer Engineering).
  • 3.00 Credits

    Study of failure and fault models in digital circuits, stuck-at-faults, transition faults, transistor faults, combinational/sequential circuit ATPG, FSM testing, design fault test, LFSR and BIST, equivalence checking, BDDs, BMDs, canonical representations of Boolean functions. Prerequisites: "C-" or better in CS 2420 AND (Full Major or Minor status in Computer Science OR Full Major status in Computer Engineering).