Ph.D. in Software Engineering, McMaster University, Canada
Master of Applied Sciences in Software Engineering, McMaster University, Canada
Bachelor of Engineering (Software Engineering), McMaster University, Canada
Associate Big Data Analyst certification by the Data Science Council of America, 2019-2022
Applications of formal methods in software engineering, modeling, model transformation, software performance engineering, and resource management in distributed systems.
- I. Al-Azzoni. On Utilizing Model Transformation for the Performance Analysis of Queueing Networks. Journal of Software Engineering and Applications. 11(9): 435-457, 2018.
- I. Al-Azzoni. An Improved Coloured Petri Net Model for Software Component Allocation on Heterogeneous Embedded Systems. Journal of Computing and Information Technology. 26(2): 85-97, 2018.
- I. Al-Azzoni. Server Consolidation for Heterogeneous Computer Clusters Using Coloured Petri Nets and CPN Tools. Journal of King Saud University - Computer and Information Sciences, 27(4): 376-385, 2015.
- H. Al-Daoud, I. Al-Azzoni, and D.G. Down. Power-aware linear programming based scheduling for heterogeneous server clusters. Future Generation Computer Systems, 28(5): 745-754, 2012.
- I. Al-Azzoni and D.G. Down. Dynamic scheduling for heterogeneous Desktop Grids. Journal of Parallel and Distributed Computing, 70(12): 1231–1240, 2010.
- I. Al-Azzoni and D.G. Down. Linear programming based afﬁnity scheduling of independent tasks on heterogeneous computing systems. IEEE Transactions on Parallel and Distributed Systems, 19(12): 1671–1682, 2008.
- I. Al-Azzoni, D.G. Down, and R. Khedri. Modeling and veriﬁcation of cryptographic protocols using Coloured Petri Nets and Design/CPN. Nordic Journal of Computing, 12(3): 201–228, 2005.
- I. Al-Azzoni. ATL Transformation of Queueing Networks to Queueing Petri Nets. In Proceedings of the International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pages 261-268, February 2017.
- L. Al-Dakheel and I. Al-Azzoni. Model-to-Model Based Approach for Software Components Allocation in Embedded Systems. In Proceedings of the International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pages 320-328, February 2017.
- I. Al-Azzoni. Server Consolidation Using Coloured Petri Nets and CPN Tools. In Proceedings of the International Conference on Information and Communication Systems (ICICS 2015), pages 32-37, 2015.
- I. Al-Azzoni. Software Component Allocation on Heterogeneous Embedded Systems Using Coloured Petri Nets. In Proceedings of the First International Conference on Advances and Trends in Software Engineering (SOFTENG 2015), pages 23-28, 2015.
- I. Al-Azzoni and D. Kondo. Cost-aware Performance modeling of Multi-Tier Web Applications in the Cloud. In Proceedings of the International Conference on Networked Digital Technologies, pages 186-196, 2012.
- I. Al-Azzoni, L. Zhang, and D.G. Down. Performance evaluation for software migration. In Proceedings of the ACM WOSP/SIPEW International Conference on Performance Engineering, pages 323–328, 2011.
- H. Al-Daoud, I. Al-Azzoni, and D.G. Down. Power-aware linear programming based scheduling for heterogeneous computer clusters. In Proceedings of the IEEE International Conference on Green Computing, pages 325–332, 2010.
- I. Al-Azzoni and D.G. Down, Decentralized load balancing for heterogeneous grids, In Proceedings of Future Computing, pages 545–550, 2009.
- M. Kokaly, I. Al-Azzoni, and D.G. Down. MGST: a framework for the performance evaluation in Desktop Grids. In Proceedings of the IEEE International Symposium on Parallel and Distributed Processing, 2009.
- I. Al-Azzoni and D.G. Down. Dynamic scheduling for heterogeneous Desktop Grids. In Proceedings of the IEEE/ACM International Conference on Grid Computing, pages 136–143, 2008.
- Y-T He, I. Al-Azzoni, and D.G. Down. MARO – MinDrift afﬁnity routing for resource management in heterogeneous computing systems. In Proceedings of the International Conference of the Centre for Advanced Studies on Collaborative Research, pages 71–85, 2007.
- I. Al-Azzoni and D.G. Down. Linear programming based afﬁnity scheduling for heterogeneous computing systems. In Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications, pages 105–111, 2007.
- I. Al-Azzoni, D.G. Down, and R. Khedri. Modeling and veriﬁcation of cryptographic protocols using Coloured Petri Nets and Design/CPN. In Proceedings of the International Workshop on Model-Based Methodologies for Pervasive and Embedded Software, pages 1–20, 2005.
Software Measurement and Testing, Introduction to Numerical Methods, Discrete Structures, Introudction to Programming, Introduction to Compilers, Data Structures and Algorithms.
IEEE: Institute of Electrical and Electronics Engineers – Member
Published in: Journal of Software Engineering and Applications
Sep 28, 2018
In this paper, we present an approach for model transformation from Queueing Network Models (QNMs) into Queueing Petri Nets (QPNs). The performance of QPNs can be analyzed using a powerful simulation engine, SimQPN, designed to exploit the knowledge and behavior of QPNs to improve the efficiency of simulation. When QNMs are transformed into QPNs, their performance can be analyzed efficiently using SimQPN. To validate our approach, we apply it to analyze the performance of several queueing network models including a model of a database system. The evaluation results show that the performance analysis of the transformed QNMs has high accuracy and low overhead. In this context, model transformation enables the performance analysis of queueing networks using different ways that can be more efficient.
An Improved Coloured Petri Net Model for Software Component Allocation on Heterogeneous Embedded Systems
Published in: Journal of Computing and Information Technology
Jun 01, 2018
We extend an approach to component allocation on heterogeneous embedded systems using Coloured Petri Nets (CPNs). We improve the CPN model for the embedded systems and outline a technique that exploits CPN Tools, a well-known CPN tool, to efficiently analyze embedded system's state space and find optimal allocations. The approach is model-based and represents an advancement towards a model-driven engineering view of the component allocation problem. We incorporate communication costs between components by extending the CPN formalism with a non-trivial technique to analyze the generated state space. We also suggest a technique to improve the state space generation time by using the branching options supported in CPN Tools. In the evaluation, we demonstrate that this technique significantly cuts down the size of the generated state space and thereby reduces the runtime of state space generation and thus the time to find an optimal allocation.
Published in: MODELSWARD 2017
Feb 19, 2017
This paper presents an approach for model transformation from Queueing Network Models (QNMs) into Queueing Petri Nets (QPNs). This would open up the benefits of QPNs in analyzing the performance of QNMs. We present metamodels for QNMs and QPNs, and then present the transformation rules in the ATLmodel transformation language. To validate our approach, we apply it to analyze the performance of a QNM and compare the results with those obtained using analytic methods. Although the approach is presented using ATL and Ecore meta modeling language in the context of the Eclipse Modeling Project, it can be realized using other modeling frameworks and languages.
Published in: MODELSWARD 2017
Feb 19, 2017
Due to the popularity and heterogeneity of embedded systems, the problem of software component (SW-component) allocation in such systems is receiving increasing attention. Addressing this problem using a graphical modeling language such as Ecore will enable system designers to better and more easily allocate their components. However, the existing Ecore models do not address the problem of SW-component allocation in heterogeneous embedded systems. Because of Ecore informal semantics, Ecore models cannot be analyzed using mathematical tools. On the other hand, an approach based on colored Petri nets (CPNs) was proposed for the modeling and analysis of the software component allocation problem. The approach was shown to be applicable in the field not only with respect to the cost optimization problem, but also because it takes nonfunctional requirements into consideration. In this paper, we propose an approach for the automated transformation of an Ecore model into an equivalent CPN model, which will help the modeler use the power of a formal modeling language by only modeling the system using a simple Ecore-based modeling language.
Jan 01, 2015
In this paper, we present a new approach to server consolidation in heterogeneous computer clusters using Colored Petri Nets (CPNs). Server consolidation aims to reduce energy costs and improve resource utilization by reducing the number of servers necessary to run the existing virtual machines in the cluster. It exploits the emerging technology of live migration which allows migrating virtual machines between servers without stopping their provided services. Server consolidation approaches attempt to find migration plans that aim to minimize the necessary size of the cluster. Our approach finds plans which not only minimize the overall number of used servers, but also minimize the total data migration overhead. The latter objective is not taken into consideration by other approaches and heuristics. We explore the use of CPN Tools in analyzing the state spaces of the CPNs. Since the state space of the CPN model can grow exponentially with the size of the cluster, we examine different techniques to generate and analyze the state space in order to find good plans to server consolidation within acceptable time and computing power.