hero image
Akramul Azim, PhD - University of Ontario Institute of Technology. Oshawa, ON, CA

Akramul Azim, PhD Akramul Azim, PhD

Assistant Professor, Department of Electrical, Computer, and Software Engineering, Faculty of Engineering and Applied Science | University of Ontario Institute of Technology

Oshawa, ON, CANADA

Critical demand for safer and more secure devices across many industries drives software expert’s research



Demand for increasingly smaller and more reliable software to power mobile devices continues to grow exponentially. Investigating ways to reduce the size of software while making it safer and more secure, drives the research of Akramul Azim, PhD, Assistant Professor in the Department of Electrical, Computer and Software Engineering in the Faculty of Engineering and Applied Science.

He joined UOIT in January 2016 to focus on the development of reliable embedded software and real-time systems research. His work has critical applications in safety vehicle systems in automotive, avionics, high-speed rail sectors, as well as nuclear power plants, and health and medical software. On the software side, he builds safety critical systems, and explores innovative ways to improve the safe and security of embedded software systems.

Dr. Azim’s latest research examines health informatics and mission learning techniques for optimized software. On the platform side, he aims to use reverse engineering to obtain different data available by first analyzing the data to build a model, then characterizing that data in order to subsequently optimize the model to produce better health data in the future. He is also working on the safety, security, verification and validation aspect of the Internet of Things, the vast global network of devices embedded with electronics, software, sensors and network connectivity that enables the collection and exchange of infinite data.

Utilizing his expertise, Dr. Azim has developed the open graduate course Embedded Real-Time Control Systems to allow students to contribute to the research track, theory, or implement new platforms. Before joining UOIT, he gained industry experience advancing embedded software as a research and development engineer with Ericsson Canada in Ottawa, Ontario. The interdisciplinary nature and limitless applications led him to pursue a Bachelor of Science in Computer Science and Information Technology at the Islamic University of Technology and a Master of Science in Computer Science and Engineering at the Bangladesh University of Engineering and Technology, both in Dhaka, Bangladesh. In 2009, he moved to Canada complete his Doctorate in Electrical and Computer Engineering from the University of Waterloo in Waterloo, Ontario, while serving as a research assistant for five years. For his work, he received the University of Waterloo Graduate Seminar Best Speaker Award in 2013.

Industry Expertise (7)


Electrical Engineering

Computer Hardware

Computer Networking

Computer/Network Security

Computer Software


Areas of Expertise (10)

Real-Time Systems Scheduling and Networking

Operating Systems

Safety Critical Systems

Sensor Networks

Embedded Software

Computer-Aided Verification

Verification and Validation

Cyber-Physical Systems

Multi-Mode Systems

Safety-Critical Software

Education (3)

University of Waterloo: PhD, Electrical and Computer Engineering 2014

Bangladesh University of Engineering and Technology: MSc, Computer Science and Engineering 2009

Islamic University of Technology: BSc, Computer Science and Information Technology 2006

Affiliations (2)

  • Ontario Society of Professional Engineers
  • Institute of Electrical and Electronic Engineers

Event Appearances (4)

Generation of Communication Schedules for Multi-Mode Distributed Real-Time Applications

Design, Automation and Test in Europe Conference  Dresden, Germany


An Efficient Periodic Resource Supply Model for Workloads with Transient Overloads

25th Euromicro Conference on Real-Time Systems  Paris, France


Deterministic Cluster Head Selection for Wireless Sensor Networks

IEEE International Canadian Conference on Electrical and Computer Engineering 2012  Montréal, Québec


Dynamic Service Policy-based Clustered Wireless Sensor Networks

The 6th IEEE International Conference on Wireless and Mobile Computing, Networking and Communications  Niagara Falls, Ontario

Patents (2)

Compilation Validation

US Patent No. US 20140304687 A1


A system and method for compilation validation uses a second compiler, in addition to the compiler under test, to generate intermediate code (a.k.a. certificates). A checker processes the output of the two compilers and generates a statement of correctness regarding the output of the compiler under test.

view more

Compilation Validation

EP 2787435 A1


Compilation validation has several advantages that may overcome some of challenges of compiler validation. It is easier to demonstrate the correctness of a compilation than the correctness of the compiler because it is usually easier to check the result of an algorithm than the algorithm itself. Compilation validation may be unaffected by changes to the compiler, and no additional work may be needed when changes are made. Compilation validation may be used with optimizing compilers as these compilers are notoriously difficult to validate.

Courses (1)

Embedded Real-Time Control Systems

ENGR 5910G, Graduate Course

view more

Articles (3)

Generation of Communication Schedules Using Component Interfaces Proceedings of the 20th IEEE International Conference on Emerging Technologies and Factory Automation


With the growing demand in embedded systems, safety and non-safety critical parts are integrated together although guaranteeing safety is a hard problem to tackle due to the complexity of possible interactions between components involving communication. However, it is sufficiently recognized that separation of computation and communication can reduce the complexity of guaranteeing safety involved in interactions between components. In this work, we propose to use component interfaces derived from periodic resource supplies that can meet the demand of components experiencing bounded delays. The advantage of using interfaces is to provide minimal information of components without requiring the entire task specifications to generate a multi-mode communication schedule. We use integer linear programming to find assignments in generating schedules that are guaranteed to have low average mode change delay. A video-monitoring case study demonstrates the advantages of using our approach in generating communication schedules.

Generation of Communication Schedules for Multi-Mode Distributed Real-Time Applications Proceedings of Design, Automation and Test in Europe (DATE)


A key problem in designing multi-mode, real-time systems is the generation of schedules to reduce the complexities of transforming the model semantics to code. Moreover, distributed multi-mode applications are prone to suffer from delays incurred during mode changes. We therefore aim to generate communication schedules that have low average mode-change delay for multi-mode, real-time distributed applications.

In this paper, we use optimization constraints associated to timing requirements to generate state-based schedules for multi-mode communication systems, and illustrate the workflow for generating schedules from specifications through a real-time, video-monitoring case-study. Our experiments in the case-study demonstrate that schedules generated using the proposed method reduce the average mode-change delay in relation to a randomized algorithm and the well-known EDF scheduling algorithm.

An Efficient Periodic Resource Supply Model for Workloads with Transient Overloads Proceedings of the 25th Euromicro Conference on Real-Time Systems


Real-time applications have deadline constraints.  The system should provision sufficient resources for the application to meet the deadlines, and use supply and demand-bound functions to analyze the schedulability of workloads. The concept of the demand-bound function describes the upper bound on the resources required by the application, while the supply bound function specifies the lower bound on the resources supplied to the tasks. If the system provides fewer resources than required, the application will experience an overload. Most work concentrates on designing systems that cannot experience short periods of overloads.

This work explores resource provisioning for control applications that can tolerate overloads. It introduces analysis techniques for supply and demand bound functions that specifically consider overloads and delays in a periodic resource model. With this extended model, the work addresses three problems: (1) determine the worst-case delay for a given resource demand and supply under a periodic resource model, (2) find a periodic resource supply for a given workload and worst-case tolerable delay, and (3) for a control system with a given robustness criterion, identify a periodic resource supply with a worst-case delay.