Research and Publications
Design Analysis and Evolution of System Models
System models such as MATLAB/Simulink or LabVIEW are widely used by traditional engineers (e.g., Electrical or Mechanical Engineers) to develop software in diverse domains. However, existing research shows that most of these engineers may not be familiar with software engineering research and tends to prioritize correctness over other properties (e.g readability, adaptation to changing requirements) that affects the maintenance of the developed software in the long term. This leads to increase in maintenance cost and the introduction of design defects in the software. This research aims to analyse changes across the version history of exisiting LabVIEW and Simulink models in GitHub repositories with the goal of reducing the design defects via appropriate recommendations to engineers developing software with both LabVIEW and Simulink,
Modeling Tools as a Service
Traditional modeling tools are often delivered as a software package that need to be installed locally or as part of a distributed software e.g eclipse plugin. Due to the complexities of these tools, they often require non-trivial configurations and inter-dependencies. This makes them hard to install, update and maintain. This local installation of these tools also limits the reuse of modeling artifacts consumed by them and new artifacts need to be built from scratch every time. Recently, there has been a lot of migration of software products to the cloud which helps remove the complexities of local maintenance and also helps to harness the computing power in the cloud. The aim of this project is to develop novel and optimal ways by which modeling tools can be migrated to the cloud and its functionalities delivered as a service.
Semi-Automated Test Model Generation
Model Driven Engineering (MDE) is a disruptive approach to software engineering whereby models are used as first class artifacts in software development in order to boost productivity. These models are manipulated by model management programs that need to be tested (because they are software and can develop bugs!) in order to boost confidence in their correctness. To test these programs, appropriate models that satisfy necessary constraints are required as test data. Models have inherently complex structures and are often required to satisfy non-trivial constraints which makes them time consuming, labour intensive and error prone to construct manually. Automated capabilities are therefore required, however, existing fully-automated model generation tools cannot generate models that satisfy arbitrarily complex constraints. This project addresses this problem by developing a framework that supports the development of model generators that can produce random and reproducible test models that satisfy complex constraints.
Publications
[2020]
-
Saheed Popoola, Xin Zhao, and Jeff Gray. “Evolution of Bad Smells in LabVIEW Graphical Models” In Journal of Object Technology, 2020 (conditionally accepted).
[2019]
-
Saheed Popoola, and Jeff Gray. “A LabVIEW Metamodel for Automated Analysis.” In 2019 International Conference on Computational Science and Computational Intelligence (CSCI), pp. 1127-1132. IEEE, 2019.
[2017]
-
Saheed Popoola, Jeffrey Carver, and Jeff Gray. “Modelling as a Service: A Survey of Existing Tools” In MDETools Workshop, ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems, 2017.
[2016]
-
Saheed Popoola, Dimitrios Kolovos and Horacio Rodriguez. “EMG: A Domain-Specific Transformation Language for Synthetic Model Generation.” In 9th International Conference on Model Transformation (ICMT), 2016.
Recent posts
Educational Software Engineering
Computer Science Vs Information Techology