Skip to content

Software Architecture

Internet of Things Search Engine: Concepts, Classification, and Open Issues

Internet of Things (IoT) enabled infrastructures, products, and services are revolutionising the way businesses and societies engage and operate. Billions of devices, small and large, are predicted to be connected via Internet over the coming years. These devices and the systems built upon them will be generating huge amount of data and information that would be leveraged for providing different products and services. One of the core components of such systems will be Internet of Things Search Engines (IoTSE) because without customised search engines, it is not possible to detect and use devices, sensors and  actuators, that form the IoT systems. Hence, it is important to understand various concepts, technologies, and aspects of IoTSE, which is a complicated and relatively immature research topic. The diversity of IoT systems and the content they generate poses a significant challenge to advance the R&D for IoTSE. To fill this gap, we have produced an article to help easily understand the concepts, classification, and open issues for IoTSE. We are glad to share that this article has been accepted in the ACM Communication magazine, which is one of the top venue for ICT publications. This is the pre-print copy of the article, whose abstract below can provide a brief about the content of the article. Read More »Internet of Things Search Engine: Concepts, Classification, and Open Issues

Architecting for Continuous Delivery and Deployment

Continuous Software Engineering has been gaining signifiant momentum in terms of widespread adoption among large and small Software houses. This paradigm shift is based on the promise of early, frequent delivery and deployment of software features and continuous feedback on the usefulness and adoption of the features. One of the key challenging area of practice for continuous software engineering is architecting – Software development teams are expected to adopt new conceptualisation and designing approaches and design decision making processes – for example, moving from monolithic to micro services. Given the significant challenges of architectural issues in DevOps, it is important to build and share evidence-based body of knowledge about practices and processes for architectural support in Continuous Software Engineering. We have undertaken a significant research program on this topic and one of our comprehensive pieces of of work has just been accepted in a premier Software Engineering journal with the title of, An Empirical Study of Architecting for Continuous Delivery and Deployment, following is the abstract copied from the paper for the readers of this blog. The paper’s pre-print copies will be available soon. Read More »Architecting for Continuous Delivery and Deployment

Our New Work on Self-Adaptive Security for large-scale Open Environments

We are continuously progressing on the plan for strengthening our capabilities in Cyber Security. To achieve this goal, we have been not only building internal capabilities but also forming and leveraging strategic collaborations. Out of one of our recent collaborations, with Giannis and Rami, in the areas of Cyber Security has resulted a high quality piece of work that has been accepted in a highly profile journal, ACM Computing Survey. The abstract of this paper is below and can provide some useful insights to the potential readers of this work. We are hoping that this piece of work will lead to systematic classification and comparison of architectural level Cyber Security Solutions and develop and evaluate new techniques, approaches, and tools for designing and evaluating security centric large scale distributed systems. Below is the abstract from the paper.Read More »Our New Work on Self-Adaptive Security for large-scale Open Environments

An Approach to Designing and Evaluating Web of Things (WoT) Systems

Internet of Things (IoT) have emerged a popular technology that underpinning several innovative products and services. Internet of Everything (IoE) or Web of Things (WoT) are real or virtual networks of things (or services) that can be meaningfully quarried or combined in order to build and provide different types of services. Recently, we have a book chapter, Using Reference Architecture for Design and Evaluation of Web of Things Systems, has been included a newly published book, Managing the Web of Things: Linking the Real World to the Web, edited by Michael Sheng, Yongrui Qin, Lina Yao, and Boualem Benatallah. The abstract of our book chapter is below as it may interest to some of the readers. The book chapter provides a methodological approach and technical details about applying a reference architectures to support the design and evaluation of Web of Things Systems. The research involved students from a software architecture course offered at the IT University of Copenhagen, Denmark. The abstract of the chapter is below:

Read More »An Approach to Designing and Evaluating Web of Things (WoT) Systems

A Reference Architecture for provisioning of Tools as a Service

We have been developing and maturing a state of the art infrastructure for providing tools as a service. Our work has resulted in a reference architecture provides meta-models, Ontologies, quality attributes, and implementation of an instantiated cloud-based infrastructure for providing tools as a service. Recently, we have published a compressive piece of work in a journal article, titled, A Reference Architecture for provisioning of Tools as a Service: Meta-model, Ontologies and Design Elements, in the journal of Future Generation of Computer Systems. We believe that this piece of work has a great potential for further extension and development for providing tools as a service in multiple engineering domains. The theoretical foundations and practical design techniques developed for this particular piece of work have significant contribution to the body of knowledge on reference architectures for tools as a service. The following abstract of the paper can provide some details about the paper for stimulating the interests of the relevant readers. We are quite keen to receive enquiries for the infrastructure use and collaboration on extending and modifying the infrastructure.Read More »A Reference Architecture for provisioning of Tools as a Service

Systemization of Knowledge about Architecting Cloud-Based Systems

We have been expanding our research on engineering systems with/for Cloud based infrastructures. One of the key challenges of engineering cloud-based systems is designing and evaluating appropriate architectures. Being a relatively new area, knowledge about designing and evaluating cloud-based systems is scarce and but growing. We observed the need of systematically identifying and synthesizing the knowledge about the architectural challenges and solutions for cloud-based systems. For this goal, we used systematic literature review, a well known method of Evidence Based Software Engineering.

I am very glad to share that after several months rigours and tireless efforts, we have published our work in a premier Software Engineering journal, Software: Practice and Experience. The paper can be found on this link and the abstract of the paper is below:Read More »Systemization of Knowledge about Architecting Cloud-Based Systems