Research Interests

Research Experiences

Software Engineering and Network Systems Lab (SENS Lab), Dept. of Computer Science and Engineering , Michigan State University
Research Assistant 2010 - present
  • Fault Modeling in Timed Automata and SystemC TLM Models:
    Since System on Chip (SoC) systems, where integrates all components of a computer or other electronic system into a single chip, are typically used for critical scenarios, it is desirable to analyze the impact of faults on them. However, fault-impact analysis is difficult at the RTL level due to the high integrity of SoC systems and different levels of abstraction provided by modern system design languages such as SystemC. Thus, modeling faults and impact analysis at different levels
    of abstraction is an important task and introduces dependability-related issues from the early phases of design. We develop a tool, UFIT (Uppaal Fault Injector for Timed automata), that models five different types of faults, namely, message loss, transient, byzantine, fail-stop, and stuck-at faults and injects them into a timed automata model automatically. You can download the source code of UFIT here.
    Also, you can find couple timed automata models extracted from SystemC TLM programs here.
  • Model Repair (Revision) Problem:
    Formal verification and, in particular, model checking has been in the center of research activities on formal methods in the past three decades. For a model of a system under inspection, a model checker either develops a proof of correctness or a counterexample. Normally, if the model checker returns a counterexample, the designer needs to fix the bug in the model and subsequently re-check the model to ensure its correctness. While this approach has been practiced extensively, it suffers from human involvement in the loop, namely, fixing the bug in the model. This involvement may consequently introduce new bugs to the model, hence, requiring another step of verification. Automated model repair aims at eliminating the human factor in fixing bugs.
  • Designing dependable software systems:
    The goal of this area of research is to extend the boundaries of automation in analysis and design of software systems, thereby increasing software dependability. We are interested in both theoretical and practical aspects of automating the development of dependable software systems.

Novel Computer Architecture and Communication Networks Lab (NCACN), Department of Computer Eng. , Sharif University of Technology
Research Assistant 2007-2009
  • Evaluated the mutual effect of Real-timeness on power consumption in Wireless Sensor Networks
  • Familiar with real-time systems in general and designing fault-tolerant protocol in wireless sensor networks.

Andrew File System Retirement

Andrew File System, which hosts this address, will be ending service by January 1, 2021. Learn about the retirement process, managing your existing files, and alternative services at the Andrew File System Retirement Information Page.