Teaching

DePaul University

  • SE480: Software Architecture I
  • SE350: Object-oriented Software Development
  • SE450: Object-oriented Software Development
  • SE371: Practices of Global Software Development
  • SE475: Managing Globally Distributed Software Development

University of Michigan

  • Software Engineering I, II
  • Discrete Structures II
  • Computer Organization & Assembly Language
  • Discrete Math
  • Data Structures & Algorithm Analysis
  • Algorithm Design & Analysis
  • Discrete Structures I, II
  • Big Data
  • Advanced Data Mining
  • Expert Systems

University of Tehran

  • System Identification - Dr. T. Abbasian
  • Pattern Recognition - Dr. B. Araabi

Iran University of Science and Technology

  • Programming with MATLAB
  • MATLAB GUI Workshop