About
68
Publications
92,452
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
1,318
Citations
Introduction
I aim to revolutionize the way we live by integrating cutting-edge cyber-physical systems into our habitats, making them genuinely smart. My scholarly pursuit zeroes in on novel software frameworks and state-of-the-art engineering methods tailored for AI, IoT, and the Cloud-Edge Continuum. My work also extensively delves into the realms of physical hardware and network infrastructures. In the academic setting, I mentor and educate graduate and doctoral candidates within these specialized domains
Current institution
Additional affiliations
October 2016 - August 2018
Publications
Publications (68)
Mobile devices have become a commodity: we use several devices for various purposes. Although we carry only some of our devices with us, we still want to access content originating from any device. To overcome this issue, device users often upload content into a hosting service available in the cloud. However, cloud-based hosting can alienate the c...
There's growing interest in developing applications for the Internet of Things. Such applications' main objective is to integrate technology into people's everyday lives, to be of service to them en masse. The form in which this integration is implemented, however, still leaves much room for improvement. Usually, the user must set parameters within...
Computing machines and humans interacting has long followed similar principles – A human gives an input command to a machine, which the machine then executes, gives an output, and waits for the next human input. Thus the interactions are user-initiated, requiring constant active participation, and much attention. Despite this, the number of such in...
System design where cyber-physical applications are securely coordinated from the cloud may simplify the development process. However, all private data are then pushed to these remote “swamps,” and human users lose actual control as compared to when the applications are executed directly on their devices. At the same time, computing at the network...
Today’s dominant design for the Internet of Things (IoT) is a Cloud-based system, where devices transfer their data to a back-end and in return receive instructions on how to act. This view is challenged when delays caused by communication with the back-end become an obstacle for IoT applications with, for example, stringent timing constraints. In...
Agile software development relies on self-organized teams, underlining the importance of individual responsibility. How developers take responsibility and build ownership are influenced by external factors such as architecture and development methods. This position paper examines the existing literature on ownership in software engineering and in p...
Agile software development relies on self-organized teams, underlining the importance of individual responsibility. How developers take responsibility and build ownership are influenced by external factors such as architecture and development methods. This paper examines the existing literature on ownership in software engineering and in psychology...
Urban Air Mobility (UAM) is an emerging System of System (SoS) that faces challenges in system architecture, planning, task management, and execution. Traditional architectural approaches struggle with scalability, adaptability, and seamless resource integration within dynamic and complex environments. This paper presents an intelligent holonic arc...
As modern system of systems (SoS) become increasingly adaptive and human centred, traditional architectures often struggle to support interoperability, reconfigurability, and effective human system interaction. This paper addresses these challenges by advancing the state of the art holonic architecture for SoS, offering two main contributions to su...
The goal of the project QLEAP (2022-24), funded by Business Finland and participating organizations, was to study using containers as elements of architecture design. Such systems include containerized AI systems, using containers in a hybrid setup (public/hybrid/private clouds), and related security concerns. The consortium consists of four compan...
The emergence of generative artificial intelligence (GAI) and large language models (LLMs) such ChatGPT has enabled the realization of long-harbored desires in software and robotic development. The technology however, has brought with it novel ethical challenges. These challenges are compounded by the application of LLMs in other machine learning s...
As Systems of Systems evolve into increasingly complex networks, harnessing their collective potential becomes paramount. Traditional SoS engineering approaches lack the necessary programmability to develop third party SoS level behaviors. To address this challenge, we propose a software defined approach to enable flexible and adaptive programming...
In the era of 6G, developing and managing software requires cutting-edge software engineering (SE) theories and practices tailored for such complexity across a vast number of connected edge devices. Our project aims to lead the development of sustainable methods and energy-efficient orchestration models specifically for edge environments, enhancing...
Business and technology are intricately connected through logic and design. They are equally sensitive to societal changes and may be devastated by scandal. Cooperative multi-robot systems (MRSs) are on the rise, allowing robots of different types and brands to work together in diverse contexts. Generative artificial intelligence has been a dominan...
The growing domain of liquidity in computing extends its boundaries to include advancements like liquid artificial intelligence (AI). Liquid AI leverages liquid software using isomorphic Internet of Things (IoT) architecture to enhance computation at the edge. This innovation presents numerous possibilities and significant challenges. Central to th...
Robotics enabled by AI and advanced software technologies are taking the world by storm. The advanced automation systems, systems-of-systems that power them, and their collaboration are complex and difficult to understand. Lacking knowledge about how they work can only improve our lives so much; in fact, it can hamper the interactions between syste...
The exponentially growing amount of digital information and data analysis increase the ability to perceive the holistic situation of people. This article applies the digital twin paradigm to strengthen a person’s ability to utilize information about themselves by creating a digital representation of their situation to support their well-being. More...
The paper introduces an architecture for robot-to-robot cooperation which takes into consideration how situational context augmented with peer modeling fosters cooperation opportunity identification and cooperation planning. The presented architecture allows developing, training, testing, and deploying dynamic cooperation solutions for diverse auto...
Recent years have seen the rise of a new generation of UI frameworks for web application development. These frameworks differ from previous generations of JavaScript frameworks in that they define a declarative application development model, where transitions in the state of the UI are managed by the framework. This potentially greatly simplifies a...
Going all the way to IoT with web technologies opens up the door to isomorphic IoT system architectures, which deliver flexible deployment and live migration of code between any device in the overall system. In this vision paper, we propose using WebAssembly to implement lightweight containers and deliver the required portability. Our long-term vis...
Nowadays, the number of devices connected to the Internet is growing at an unstoppable rate. This, added to the amount of information these devices produce, makes new techniques necessary to take advantage of their potential. New devices are continually being introduced in the daily life of people, and they are already producing an unprecedented am...
Today, smart environments require attention from the network level for connecting devices to the application level for adapting their behavior to continuously changing environmental conditions. Just as a smartphone can choose between using mobile internet or a WLAN connection, IoT applications that manage smart environments must know how to establi...
We live in an era in which the most valued services are not paid for in money, but in personal data. Every day, service providers collect the personal information of billions of individuals, information that sustain their infrastructure by marketing profiles labeled with this information to personal data consumers, such as advertisers. Not all uses...
Artificial intelligence (AI) and machine learning (ML) is becoming commonplace in numerous fields. As they are often embedded in the context of larger software systems, issues that are faced with software systems in general are also applicable to AI/ML. In this paper, we address ML systems and their characteristics in the light of software maintena...
Today, an increasing number of systems produce, process, and store personal and intimate data. Such data has plenty of potential for entirely new types of software applications, as well as for improving old applications, particularly in the domain of smart healthcare. However, utilizing this data, especially when it is continuously generated by sen...
The availability of open source assets for almost all imaginable domains has led the software industry to opportunistic design—an approach in which people develop new software systems in an ad hoc fashion by reusing and combining components that were not designed to be used together. In this paper we investigate this emerging approach. We demonstra...
Today, the number of interconnected devices and the amount of personal information gathered by them increases tremendously resulting in the need for development tools to harness its potential. New devices are continually being introduced in the daily life of people, and they are already producing an unprecedented amount of data related to people's...
Design by contract is a paradigm that aims at capturing the interactions of different software components, and formalizing them so that they can be relied upon in other phases of the design. Such a characteristic is especially helpful in the context of microservice architecture, where each service is an independent entity that can be individually (...
Software is the key enabling technology (KET) as digitalization is cross-cutting future energy systems spanning the production sites, distribution networks, and consumers particularly in electricity smart grids. In this paper, we identify systematically what particular software competencies are required in the future energy systems focusing on elec...
The Agile Manifesto emphasizes value on individuals and interactions over processes and tools, explicitly encouraging face-to-face communication as the most effective way of conveying information and collaboration between Agile teams. Effective collaboration enables teams to develop workable solutions to complex problems. However, in reality, this...
A growing number of software systems operate in uncertain environments. They benefit from an ability to autonomously adapt to changes during runtime without suffering from a lowered quality of service. Several different architectural approaches to self-adaptive software exist with their sources of inspiration varying from psychology to mathematics....
Fog computing paradigm is emerging after a decade's dominance of cloud-based system design and architecture. Now, instead of centralising the computation and coordination to remote services, these are deployed and distributed to all over physical surroundings and network nodes, including cloud services, smart gateways, and network edge devices. At...
One of the more recent avenues towards more flexible installations and execution is the transition from monolithic architecture to microservice architecture. In such architecture, where microservices can be more liberally updated, relocated, and replaced, building liquid software also becomes simpler, as adaptation and deployment of code is easier...
Major chat platforms, such as Facebook Messenger, have recently added support for chatbots, thus making chatbots more accessible for the end users. This paper presents a case study on building and designing a Messenger chatbot for a media company. The chatbot uses a Serverless Microservice architecture which was implemented using Amazon Web Service...
As the users possess a growing number of personal computers, smart phones, tablets, and other connected computing devices, the architecture of Web applications needs to be redesigned to enable truly seamless cross-device and multi-device use. In this tutorial, we address the Liquid Software concept in the context of Web applications. Liquid Web app...
System design where cyber-physical applications are securely coordinated from the cloud may simplify the development process. However, all private data are then pushed to these remote swamps, and human users lose the actual control as compared to when the applications are executed directly on their devices. At the same time, computing at the networ...
Today, digitalization decisively penetrates all the sides of the modern society. One of the key enablers to maintain this process secure is authentication. It covers many different areas of a hyper-connected world, including online payments, communications, access right management, etc. This work sheds light on the evolution of authentication syste...
In traditional IoT system simple edge devices collect data to specialized server. However, hardware has already evolved enabling intelligence and programmability of IoT devices.
Our focus is on programmability of heterogeneous IoT devices and dynamic orchestration of the IoT applications together with web applications. In this paper we present our...
The mobile devices of today evolve towards offering uninterrupted connectivity while attempting to achieve untethered mobility of their users. Further technological advances in hardware often lead to an increased data consumption. Combining these two factors, we notice that the data rates on the current Internet connections are starting to lag behi...
Both number and diversity of computer-enabled physical objects in our surroundings is rapidly increasing. Such objects offer connectivity and are programmable, which forms basis for new kinds of cyber-physical computing environments. This has inspired us to propose a programming model called Action-Oriented Programming (AcOP), where focus is at sim...
Recent device shipment trends strongly indicate that the number of Web-enabled devices other than PCs and smart phones are growing rapidly. Marking the end of the dominant era of these two traditional device categories, people will soon commonly use various types of Internet-connected devices in their daily lives, where no single device will domina...
Smartphones have become major players in the consumption of cloud services. These services are usually employed to share information and to interact with other people. All this information is reused by marketing companies to create sociological profiles of the users. Users, however, often share similar pieces of information via different platforms....
Today's mobile and embedded devices are Internet-connected, and have decent computing power, which creates a possibility for complex, cooperative multi-device platforms. Yet, from user's perspective, it seems that we are not freed to use different technologies seamlessly and without thinking. From developer's perspective, on the other hand, buildin...
Today's Internet-connected devices, such as tablets and mobile phones, have excellent computing power, which creates a possibility for complex, cooperative multi-device platforms. However, coordinating these devices typically requires implementing the coordination process separately in an application specific fashion, which takes focus away from th...
Nowadays, smart devices have excellent computing power and connectivity and at the same time are used for various purposes. This creates the possibility for complex, cooperative multi-device programs. However, current programming paradigms are not tailored for such a setting. This paper tackles the problem by introducing a new paradigm: an action-o...
Mobile devices are becoming the primary access point for users
for various services and mobile cloud computing has emerged as a means of
utilizing the advantages of cloud computing within mobile devices. Cloud
computing, in general, hides the location of services, regardless of whether
they are provided by the mobile devices or by backend services....
Contemporary Internet connected devices, such as tablets and mobile phones, have excellent computing power, which creates a possibility for complex, cooperative multi-device platforms. We have introduced a concept of Social Devices and its reference implementation Social Devices Platform. The system offers an intuitive way to build interactions bet...
In addition to functions, the architecture of a software system defines numerous other properties, commonly referred to as non-functional or quality properties. In web applications, two well-known architectural styles are common. They are resource-oriented architectural style, implemented using RESTful principles, and message-passing architectural...
Online social media services, such as Facebook and Twitter,
have set new standards on how people interact with
each other online, share their everyday activities, and media
services. While current mobile services supporting social interaction
are typically primarily for remote communication,
similar services can be introduced to co-located social i...
The amount of digital content is increasing at an accelerating speed. This content is distributed to a heterogeneous set of users' devices and handling the content manually is an unsustainable solution and soon leads to a increasing problem. We have studied the most crucial concepts of content management systems and how the distributed environment...