1 Introduction and Motivation

The Internet of Things (IoT) is the most pervasive technological trend of the last years, because it represents the contact point between the physical and the digital world through the use of Internet technology. IoT represents a global technological infrastructure, based on interoperable standards and protocols where objects, both physical and virtual, acquire attributes, identities and personalities, communicate with each other and modify their behavior according to rules, conditions and the evolution of the whole ecosystem. Thanks to the IoT, everything can take on new functions, collect and communicate information, receive commands, and support people in a multitude of old and new tasks.

The miniaturization of electronics, the speed of data transmission, the spread of mobile devices, the growing computational capacity and Internet-based communication protocols have transformed scenarios and frameworks, since the IoT systems perform functions that are widespread across the territory and involve a multitude of actors (as in Smart Cities), allowing contextual information to be provided to users (Smart Environments). The result is a transformation of traditional business processes, in which the IoT necessarily becomes a resource and a driver: the focus is on data and their exploitation through a pervasive use of digital technologies in order to connect, innovate and manage the whole business value chain.

Smart City projects aim at making urban area more efficient in terms of mobility, environment, economy, living, people, and governance. For this purpose, technology must be easily usable by citizens, as well as businesses and public institutions; it must be distributed, shared and horizontal, in order to foster citizens’ participation. The digital process of city transformation, therefore, requires a strong and drastic paradigm shift compared to the past, putting the citizen at the center and the government at its services, with particular emphasis on their simplicity and usability. It is not only an issue of publishing some information in Open Data format, but of adopting a new paradigm based on the idea of citizens’ active participation, moving from passive service consumers to Smart Citizens, who are actors in the definition of services and co-creators of new ideas. The typical culture of participation of a Smart City would be perfectly translated, at a technological level in the application development process, with the adoption of the User-Centered Design approach, which considers the stakeholders and the end users as co-designers of a solution, even if they do not have programming or technological skills [1].

However, in order to adopt a User-centered perspective, we have to provide answers to questions regarding the use of the most suitable semantics for an application, both for describing the application domain and for considering the different types of users that interact with it. In other words, we have to provide tools for solving the ambiguity of many terms and for representing the information with the most suitable constructs, not only for the application domain but also for the user that interacts with it. For example, the Public Administration (PA) domain is composed of numerous sub-domains representing the different operational areas of a city (Mobility and Traffic, Environment, Tourism, Health, etc.). A multitude of actors (e.g., administrative employees, politicians, citizens, companies, domain experts) are involved: they have different interests, technological skills and execute different tasks. The same IoT device could be used in several subdomains of the PA: the detected data can therefore assume a different semantic meaning according to the process in which they are used, or to the user type whether it is inside the same PA (e.g., a process manager) or outside the PA (e.g., a citizen).

The data collected through the IoT device must be appropriately enriched with attributes and semantic relations in order to be transformed into information useful and semantically comprehensible to the user, and this operation must necessarily be conducted by a domain expert, who knows the scenario and the environment in depth. However, to the best of our knowledge, the topics of semantics related to the integration of business process modeling and of IoT as a new process resource in data driven systems was investigated in [2, 3] only. Semantic issues about the interplay between IoT-based applications and different types of users in complex and heterogeneous contexts, such as Smart Cities, are still neglected.

This paper aims to describe and explore issues related to the semantic characterization of IoT-based application development in the Smart Cities domain: it proposes a user-centered approach oriented to software developers, who must evaluate semantic issues related to user’s interaction. The paper describes which ontologies are needed to support the development of an IoT application using a user-centered approach. A formal classification of attributes and semantic relations is proposed, to be used according to the considered user perspective, in order to:

  • use the most appropriate subset of attributes and semantic relations extracted from different ontologies involved in the development of an IoT-based application in the Smart Cities domain;

  • solve conflicts or disambiguate concepts that are available in various of the considered ontologies;

  • encourage and support the reuse of ontology subsets in the development of IoT-based applications.

The paper is organised as follows. Section 2 provides a brief overview of the existing studies on ontology in the IoT domain. Section 3 illustrates the proposed approach and suggests a classification for the semantic structures involved in the development of IoT-based applications. Section 4 reports conclusions and future work.

2 Related Work

While the technological issues due to the variety of involved actors have been successfully addressed through the development of methods and techniques of participatory design and facilitated visual programming - from software design patterns such as Model-View-Controller (MVC) to Web mashups (see, for example, [4, 5]) - the questions regarding the use of the most suitable semantics for an application remain open, both for describing the application domain and for considering the different types of users that interact with it.

Studies related to the integration of IoT and business processes are already available in the literature [6, 7]. In particular, they address how to extend the standard process modelling approaches, such as the Business Process Model and Notation (BPMN), in order to include IoT as a process resource [2, 7]. However, such studies have mainly focused on process modelling and on technological aspects of the IoT. Further challenges are posed from a semantic point of view, but those authors who considered this aspect also approached it from an organisational and technological perspective. For example, Bauer et al. defined a common and unified ontology to overcome the problems related to the heterogeneity and interoperability of IoT devices [8].

In literature there are various studies about semantic technologies applied to the IoT domain, in order to enable interoperability and foster machine to machine communication [9]. Various research initiatives addressed the IoT domain, by proposing reference architectures (such us the European FP7 project “The Internet of Things Architecture” (IoT-A) [8]), and semantic models [10]; the European H2020 FIESTA-IoT project provides a simplified semantic model called IoT-Lite [11]. Bajai et al. [12] propose a survey of the existing ontologies which include ontological IoT concepts (e.g., sensor capabilities and context-awareness) and identify the core concepts required for developing an IoT application.

Instead, there is a limited number of works about the integration of Business Process (BP) modeling techniques in the IoT domain. Mayer et al. [2] propose an integrated view of IoT concepts in BP modeling. Suri et al. [3] introduce a semantic model (IoT-BPO) by re-using and extending concepts from IoT-Lite and build relationships between concepts of the BP domain (i.e., tasks) and concepts of the IoT domain (i.e. devices, service).

3 The Knowledge Stratification Model

Let we consider the use case of a municipality that is installing devices equipped with different sensors that provide data on traffic and air pollution. These raw data, that in Fig. 1 we call Real World Data, are:

Fig. 1.
figure 1

The Knowledge Stratification Model (KSM).

  • A (lat, long): coordinates of the location where the device is installed;

  • S1 (vehicle counter sensor): numbers of vehicles passing through A at time t;

  • S2 (CO2 sensor): milligrams of CO2 in A at time t.

Further data (S3, …, Sn) could be collected by additional sensors. S1, …, Sn data represent the input data for one or more Business Processes of the Municipality. For example, the S1 raw datum is one of the input, together with A, to process P1 “Road congestion quantification” of the Mobility Department for determining road congestion levels (calculated as the number, exceeding a pre-established threshold, of vehicles passing through A in a time interval); A and S1 data are also the input to process P2 “Air pollution level measurement” of the Environment Department, which processes it together with S2 to determine the pollution level in a time interval of a specific area of the city (to which point A belongs) due to the transit of vehicles.

The connections between elements of the same layer indicate interactions and/or combinations between these elements. For example, sensors S1 and S2 are in the same device D1; process P4 uses processes P1 and P2; User application A1 offers different views, as v1 and v2.

The connections between elements of different layers indicate how raw data produced by sensors are transformed first into information (through calculation procedures and algorithms), then into knowledge (through contextualization in the domain of knowledge, e.g. Environment or Mobility, and correlation/combination with other data), called Output Knowledge. The knowledge produced by the business processes is then represented through User Applications aimed at end users who can be both internal (employees, politicians, etc.) and external (citizens, businesses, associations, etc.) to the Municipality.

The User Applications have to satisfy the needs of the different users who interact with them, through semantic and graphic constructs aimed at facilitating usability. In fact, appropriate visualization and interaction techniques support users in distilling knowledge, which becomes “awareness” of reality (or “wisdom” as defined by Ackoff in the DIKW architecture [13]) and in turn can generate further knowledge, which is the typical example of Open-data reuse (see Fig. 2).

Fig. 2.
figure 2

Ackoff’s DIKW architecture.

The model in Fig. 1 also shows the actors and their involvement in the different layers:

  • Technical Experts are software developers, who define and implement procedures and constructs for interfacing the sensors with the Business Processes;

  • Domain Experts are experienced and representative users of the considered domain, who collaborate with the Technical Experts to formalize the domain knowledge at the level of both processes and terminology, as well as the semantic concepts most suitable for that domain;

  • End Users are all users who can interact with the User Applications, differentiating them by their role with respect to the Public Administration (employees, citizens, businesses, politicians, etc.).

In order to support designers in creating IoT applications, the KSM model has to guide them in organizing the domain concepts, in identifying the data produced by IoT devices and in integrating them into business processes, thus making them meaningful for the user.

The EER schema reported in Fig. 3 shows how the concepts of IoT Resource, Process, Output Knowledge and User are related to each other. The schema implements a recursive structure of multi-graph type.

Fig. 3.
figure 3

A EER schema modelling the KSM.

Each process has a specific classification or taxonomy (e.g. executive process, business process, generic process of domain, specialized process of domain, etc.) and, possibly, shares some phases (sub-processes) with other processes, as modelled by the self-relation “Pr_hierarchy”.

The classification potentialities of recursive topological structures permit to semantically describe IoT resources (which can be simple sensors, devices, actuators or other complex systems) with the self-relation “Res_hierarchy”. The ternary relationship “contributes” represents the transition from information to the knowledge gained from IoT data processing performed by business processes. The Output_Knowledge can also be organized according to a tree topology structure, which is suitable for building interface templates that depend on the characteristics and needs of the specific user: it is been modelling through the ternary relationship “know_hierarchy”.

The EER model shows how the concepts of IoT Resource, Process, Output Knowledge and User are related to each other, but it cannot allow to infer new knowledge, because table instances generated from the EER model have values only when the process occurs. Moreover, EER does not consider some critical issues related to: (1) technology, e.g. interoperability between heterogeneous IoT resources; (2) process modelling, e.g. considering the IoT resource as a business process resource; (3) user interaction (disambiguation of terms, graphical constructs suitable to user skills, etc.). Such criticalities can be addressed by adopting a semantic approach, based on a OWA(Open World Assumption) modelling and a specific ontology for each layer of the KSM and also for the interaction among layers (see Fig. 4).

Fig. 4.
figure 4

Ontologies underlying the KSM model.

The ontological model is composed of the ontologies that Technical experts should use for developing IoT applications and it shows how the ontologies are connected each other: the arrows point towards the ontology to be imported. Technical experts must use a subset of these ontologies, creating or just importing the necessary ones, in order to consider all the layers of the KSM model:

  • Iot Ontology: an ontology, for example the IoT-Lite ontology [11], is necessary due to the heterogeneous characteristics of the devices (different vendors, protocols, etc.). The IoT ontology allows Technical expert to standardize IoT Resources through semantic annotations avoiding technological issues, as interoperability. For example, the vehicle counter sensor could be associated with the geographical coordinates of the installation point and with the street name in the applications for the Mobility Department and for the Environment Department, respectively. The same “location” attribute could therefore be used in a different way, with some effects on automatic procedures based on attributes (e.g. geolocation on a map) or on the activation of internal processes within the public administration that uses them.

  • Business Process Ontology: in order to be meaningful for the business processes, which are often represented with BPMN, IoT Resources need to be integrated into business processes and not be considered as external to them. A suitable ontology is the IoT-BPO ontology [3], which bridges IoT concepts with Business Process concepts. Moreover, it is necessary to take into consideration also an ontology to describe each subdomain of PA (Sub-Domain Ontology) to manage the semantic issues related to the domain knowledge. For this reason, the collaboration between domain experts and technical experts is fundamental, since the former can guide the latter in defining the most appropriate meaning for a concept which could also be found in multiple business processes.

  • User Application Ontology: the applications have to adopt a vocabulary comprehensible to its different users, so that they can benefit from the knowledge produced by business process execution. This could be represented in different ways according to the different users who interact with the application, due to their different interests and skills. In fact, some information on the underlying devices or processes may not be of interest or understandable by certain users due, for example, to very specific domain concepts. Thus, according to [14], the design of the user application interfaces has to be based on specific ontologies (End User Interface Ontology) describing the most suitable graphical constructs for the specific user and on the vocabulary used in the domain (Sub Domain Ontology). For example, information on CO2 and Pm10 will inform the Environment Department employee about air pollution trend over time. The same information will be represented as an index of traffic congestion over time for the Mobility Department employee. Instead, a citizen, to correctly interpret the same information, needs a suitable representation, as a geochartFootnote 1 (e.g., a map reporting colored circles according to the calculated values), a simple explanation (e.g., “high-medium-low pollution level”) or a push notification service for his/her mobile device (e.g., by a Telegram channel).

The semantic approach also permits to infer knowledge not explicitly defined in the model through a semantic reasoner, thus allowing Technical Experts to develop new services and applications.

The schema in Fig. 5 applies the KMS model to the considered case study. In the Transportation domain, the procedures of BP1, on the basis of the number of vehicles passing through the point A in a time interval as detected by the sensor S1, compute the road congestion level. The output knowledge is related to the concepts “Road” and “Traffic”. The User application A1 “Vehicle flow monitoring” provides different views using user interface elements suitable to specific users, i.e., v1 for Mobility Department employee and v2 for citizens. In the Environment domain, the procedures of BP2 compute the level of CO2 and PM10 thanks to the data returned by the sensors S2 and Sn located in the point A. The output knowledge is related to the concepts “Air Quality” and it is provided to users by the A2 “Air quality monitoring”, which shows a pollution level graph to the Environment Department employee (v1) and a geochart to citizens (v2), who can be possibly warned by an alarm notification service.

Fig. 5.
figure 5

Applying the KMS to the considered case study.

The knowledge generated by BP1 (concepts “Traffic” and “Road”) and BP2 (“Air Quality”) permits to infer new knowledge about “Infrastructure” useful in the Urban Planning domain. In BP4 “Territorial Planning”, a procedure computes the less polluted areas and also allows users to infer the best place for building a school. A User application could represent this knowledge in a GIS platform or in a Decision Support System (DSS) for the Urban Planning Department.

4 Discussion and Conclusion

In this paper, we presented a three-layer model for organizing the elements of knowledge of an IoT application in complex heterogeneous contexts, such as Smart City. In such contexts, traditional business processes have been transformed, due to the need of integrating real world data through IoT and of considering a multitude of users, each of them having specific goals. Technical experts must take into account each layer and the relations between them, in order to solve both technological and semantic issues when developing an IoT application. In our model we propose a semantic approach based on a subset of ontologies that describe each layer of the KSM and the relations between them, in order to represent different contexts and different user interactions.

We recognize that, at the current stage of our research, the proposed model has some limitations. In particular, we have to investigate some issues related to: security and reliability of the collected data (with regard to connection, network reliability, prevention of attacks and security of the transmitted data); compliance with privacy legislation (as EU Regulation 2016/679 GDPR - General Data Protection Regulation); processing of personal data and their representation. As future work, we are going to adopt the Web Ontology Language (OWL) and Description Logic (DL) languages to enrich the description of the model, in order to facilitate the reasoning about the concepts of the different application domains. Moreover, we are extending the Resource layer by including the typical resources of the Internet of Everything that, by including user-generated communications (such as citizen’s smartphones, wearable devices, etc.) and interactions with networked devices, introduces further technological and semantic issues, for example new business processes must be defined to filter the collected data, to protocol citizens’ alerts and include them in the administrative management. Our research group is already working on this topic, since the need of augmenting smart devices with semantic attributes emerged in our studies for proposing visual interaction paradigms to allow end users to define smart visit experience in the Cultural Heritage domain [15].