Fall 2017 Special Topics Classes

CSCE 4013 Section 001:  Digital System Testing - Dr. Pat Parkerson

Description:  The fundamentals of the testing of digital circuits and design for testability.  This includes the testing process and test equipment, economics and product quality, manufacturing defects and fault modeling, design for test, and built-in self-test techniques.

Prerequisites:  CSCE 2214

Textbook/required material:  “Essentials of Electronic Testing for Digital, Memory and Mixed-Signal Circuits,” by Michael L. Bushnell and Vishwani D. Agrawal, First Edition, Kluwer Academic Publishers, ISBN: 0-792-37991-8, eBook ISBN: 0-306-47040-3  

Course goal:  The goal of the class is to develop the ability to apply knowledge of digital logic testing to detect manufacturing defects and to determine the quality of tested circuits. Design for testability techniques are covered including built-in self-test.

Topics covered:

  • Testing Process
  • Test Equipment
  • Test Economics
  • Product Quality
  • Yield
  • Fault Modeling and Fault Simulations
  • Testability Measures
  • Combinational Circuit Test Generation
  • Sequential Circuit Test Generation
  • Delay Testing
  • IDDQ Testing
  • Design for Test
  • Built-in Self-Test
  • Boundary Scan Testing


CSCE 4013 Section 002: Big Data Analytics & Mgmt - Dr. Xintao Wu

Description: Introduction to distributed data computing and management, MapReduce, Hadoop, NoSQL and NewSQL systems, Big data analytics and scalable machine learning, real-time streaming data analysis.   

Prerequisites:  CSCE 3193 Programming Paradigms and INEG 2313

Textbook/required material:  Materials for the course will be drawn from the recent research literature.

Course goal:  The goal of the class is for students to 1) understand the state-of-the-art technologies used in manipulating, storing, and analyzing very large amount of data, and 2) use distributed computing platforms to conduct practical big data analytics and management tasks. 

Topics covered:  

  • Principles of distributed data computing and management
  • MapReduce techniques for parallel processing and open source frameworks such as Hadoop
  • NoSQL techniques and systems such as Pig and Hive to process non-relational data on top of Hadoop Distributed File System
  • NewSQL techniques and systems such as H-Store, VoltDB, and Google Spanner
  • Big data analytics and machine learning techniques and systems such as Mahout and Spark
  • Real-time streaming data analysis techniques and systems such as Storm 


CSCE 5013 Section 001:   Privacy Enhancing Technologies - Dr. Qinghua Li


This course introduces privacy enhancing technologies and hot privacy topics in emerging computing systems. Topics covered include introduction to security and privacy, privacy enhancing technologies, hot privacy and security topics in mobile phones/devices, mobile applications, Big Data systems, Cloud computing, cyber-physical systems, and other emerging computing systems. The course is a combination of lectures and student-led paper presentations. Students will be exposed to many interesting privacy problems, study privacy enhancing technologies, and apply their knowledge to explore an open research problem in a research-oriented project. After completing this course, students will gain a broad knowledge of the state-of-the-art and open research problems. They will also develop skills and enhance potentials to do research on privacy, security, and relevant areas.

Prerequisites: CSCE 3613 Operating Systems (or equivalent), or instructor consent

Textbook/required material (Optional):  Charlie Kaufman, Radia Perlman, and MikeSpeciner, Network Security: Private Communication in a Public World, 2nd edition, Prentice Hall, 2002, ISBN-10: 0130460192, ISBN-13: 9780130460196.

 Course goal:  The goal of this course is twofold. First, students will gain a broad knowledge of the state-of-the-art and open research problems. Second, they will develop skills and enhance potentials to do research on privacy, security, and relevant areas.


CSCE 5013 Section 002:   Adaptive Systems - Dr. Christophe Bobda

Description: Increasing complexity due to rapid progress in information technology is making systems more and more difficult to integrate and control. Due to the large number of possible configurations and alternative design decisions, the integration of components from different manufacturers in a working system cannot be done only at design-time anymore. Furthermore, the miniaturization of systems makes them more vulnerable to errors that may occur due to physical degradation, cosmic radiation, unpredictable interconnect delay on signals within chips. This increases the risk of failure.

Systems must be designed to cope with unexpected run-time environmental changes and interactions. They must be able to organize themselves to adapt to change and avoid non-desirable or destructive behaviors. Natural systems have evolved to cope with dynamism, unpredictability, uncertainty, lack of guarantees. Several initiatives (Swarm Intelligence, Organic Computing, Autonomic Computing) were introduced in the past with the goal of designing and building highly reliable and robust systems by borrowing the properties of natural systems. However substantial efforts and competencies from different fields are required in order to make the dream of Autonomic and Organic computing real, in particular in embedded systems.

Prerequisites:  Digital Design, Computer Organization; Operating System and Reconfigurable computing will be helpful but not mandatory 

Textbook/required material:  Fault-Tolerant Systems,by Israel Koren and C. Mani Krishna, Morgan Kaufmann. ISBN-10: 0120885255, ISBN-13: 978-0120885251; Adaptive Control, Karl Johan Astrom, Bjorn Wittenmark, Publisher: Prentice Hall; 2 edition, December 31, 1994, ISBN-13: 978-0201558661. Conference and position papers. Will be handed out during the class

Course goal: The goal of this course is the understanding of mechanisms governing adaptive systems as well as the design approaches for those systems. They are usually made upon components limited in their capabilities, but as whole are able to solve a complex problem. They can adapt their behavior to run-time environmental changes. The design of software as well as the hardware, in particular reconfigurable systems, will be discussed in the class. Finally, we will discuss applications (Software Defined Radio, Adaptive Antennas, Adaptive Video and Signal Processing, Adaptive Network Protocols, Adaptive Crypto Systems, Adaptive Network Topology) that can benefit from the run-time adaptivity of a system.

Topics covered:  Besides the theoretical topics, the student will work in teams on a concrete project during the whole semester.

  • Basic concepts: Short Intro in the System Theory, Fault Tolerance & Dependability, Build in Self-Repair, Self-*-Investigation, Embedded Optimization
  • Deployment: Self-Coordination Using Embedded Optimizations, Reconfigurable Hardware
  • Applications Examples: Adaptive Controllers, Software Defined Radio/Adaptive Antennas, Adaptive Video Processing/Streaming, Smart Networks, The Grid, Adaptive Network Protocols, Dynamic Network on Chip, Adaptive Crypto Systems