Courses taught by ISIS Faculty and Research Scientists.

ISIS plays an active role in the undergraduate and graduate programs in Electrical Engineering, Computer Engineering, and Computer Science at Vanderbilt University. Below is a list of some of the courses currently taught by ISIS members.

CS 388. Model-Integrated Computing. Model-Integrated Computing (MIC) addresses the problems of designing, creating, and evolving information systems by providing rich, domain-specific modeling environments including model analysis and model-based program synthesis tools. Students are required to give a class presentation and prepare a project.

CS 274, Modeling and Simulation. General theory of modeling and simulation of a variety of systems: physical processes, computer systems, biological systems, and manufacturing processes. Principles of discrete-event, continuous, and hybrid system modeling, simulation algorithms for the different modeling paradigms, methodologies for constructing models of a number of realistic systems, and analysis of system behavior. Computational issues in modeling and analysis of systems. Stochastic simulations.

CS 285. Network Security. Principles and practice of network security. Security threats and mechanisms. Cryptography, key management, and message authentication. System security practices and recent research topics.

CS 376. Foundations of Hybrid and Embedded Systems. Modeling, analysis, and design of hybrid and embedded systems. Heterogeneous modeling and design of embedded systems using formal models of computation, modeling and simulation of hybrid systems, properties of hybrid systems, analysis methods based on abstractions, reachability, and verification of hybrid systems.

CS 379. Topics in Embedded Software and Systems. Specification and composition of domain-specific modeling languages. Design methodologies for embedded systems. Platforms for embedded system design and implementation. Analysis of embedded systems.

EECE 272. Advanced Software Architectures. Tools and techniques for designing complex software systems. Programming language idioms, design patterns, and high-level architecture of systems. Overview of reactive systems, client-server architectures, distributed object systems, object database systems, and design methods for the above. Lectures and seminars. An intensive team-oriented project experience is included.

EECE 276. Embedded Systems. Advanced course on the design and application of embedded microcontroller-based systems. Architectures and capabilities of advanced microcontrollers. Embedded system modeling, design and implementation using real-time and event-driven techniques. A structured project is required. Intended for seniors.

EECE 277. FPGA Design. Design and application of field-programmable gate arrays (FPGAs), Electronic Design Automation (EDA) tools for design, placement, and routing. Practical experience is gained by implementing various designs on a prototype FPGA board. A final project is required.

EECE 343. Digital Systems Architecture. Architectural descriptions of various CPU designs, storage systems, I/O systems, parallel and von Neumann processors and interconnection networks will be studied.

EECE 354. Advanced Real Time Systems. Covers hybrid architectures for combining symbolic and nonsymbolic programming for real-time systems; parallel architectures and programming methods for symbolic programming of dataflow systems, connection machines, actor systems; literature reviews and projects.

CS 364. Intelligent Learning Environments. Theories and concepts from computer science, artificial intelligence, cognitive science, and education that are important to designing, building, and evaluating computer-based instructional systems. Development and substantiation of the concept, architecture, and implementation of Intelligent Learning Environments. Multimedia and Web-based technology in teaching, learning, collaboration, and assessment.