The architecture of COPD adaptive control is described in four layers.
The application layer presents the emergency doctor, the patient, emergency reception, and triage interface.
3.2.1. Application Layer
The application layer provides two categories of services (i) administrator service and (ii) functional services for the control of the SLA. The administrator service allows the emergency physician to create or delete vital sign parameters (FIEV, SAo2, HR, temperature) with their respective limits, triage agent profiles, and COPD patient profiles in the system. The functional services for SLA monitoring are available in the different interfaces described below. The control interfaces allow for the dynamic monitoring of the SLA according to the period chosen by the user.
- (i)
Emergency Interface
The emergency physician’s interface allows the SLA control by period. This interface can also receive alerts depending to the patient and SLA context. Only the emergency physician can cancel the SLA.
- (ii)
Triage Agent Interface
The agent interface helps to perform triage activity by using triage dashboard at the emergency reception desk. This dashboard is dynamically updated.
- (iii)
Patient Interface
This interface can receive alerts depending to the patient and SLA context.
3.2.2. Reasoning Layer
The reasoning engine is mainly based on rules, the KPI_TARGET value extracted from the SLA, and the income data sensor. The reasoning process consists of four phases: the phase of identification of the metric items or KPI target, the detection incident phase result from the comparison of the vital data of the four parameters collected on COPD patients, the implementation phase of the SLA violation control algorithm, and the phase of populate the SLA virtual template. These rules are important for the SLA violation evaluation mechanism. The two metrics of the dynamic SLA violation monitoring mechanism in the context of COPD patient are: the number of incidents from patient data, numberIncidentData, and the number of incidents of unsuccessful patient request, NumBeRequestSend. In effect, if the number of incidents is greater than the metric defined in the KPI-Target, there is a violation of the SLA. The rules for the SLA evaluation mechanisms are important for dynamically triggering the control of the SLA according to the context-aware data and SLA document information in WSA format.
- (i)
Detection Incident Phase
The information extracted from the SLA can be grouped into two parts: Content items and KPI-TARGETs. The KPI-TARGETs participate in the dynamic control mechanisms of the SLA. The other content items populate the virtual adaptive SLA template. KPI_IncidentDataValue and KPI_IncidentRequestValue are important items for the mechanism of SLA control violations.
To design these rules, we consider that for every vital sign parameter, there is an interval with a minimum and a maximum value, in which the value of the sensor is a data incident.
Table 2 describes these incident rules.
If IncidentDataNumber > KPI_IncidentDataValue, then the data quality SLA violation alarm is triggered.
Figure 3 presents the violation SLA based on incident data module.
There are two approaches to SLA violation control: the data incident approach and the request incident approach. For data incidents, the reasoning is performed as soon as the following data are entered into the dynamic database: FIEVSensorData, HearateSensorData, and TemperatureSensorData. For each piece of data of the parameters, the system checks through each rule to determine if it is an aberrant or erroneous value. If it is an aberrant or erroneous value, then it is classified as a data incident. The system increments the number of incident data and compares this number to the metric KPI_IncidentValue extracted from the SLA.
Concerning request incidents, the incident counter (IncidentRequestNumber) is calculated as the difference between the number of incidents (RequestSendNumber) sent to the emergency physician by patients and the number of requests (RequestReceiveNumber) confirmed or received by the emergency physician during period. The system then compares the KPI_IncidentRequestValue extracted from the SLA to the IncidentRequestNumber. If IncidentRequestNumber > KPI_IncidentRequestValue, then a QoS SLA violation alert is triggered. All these mechanisms are implemented in the SLA violation algorithm. This algorithm represents the core of the system’s reasoning. Below,
Figure 4 describes the algorithm of SLA violation mechanisms based on incident requests.
- (ii)
Populate Phase
The populate phase consists of displaying the results of the evaluation algorithm for SLA violation to the virtual template. These results are therefore accessible from the interface in a dynamic mode.
3.2.3. Semantic Layer: Development of COPDViolationSLAOntology Domain
Ajami and Mcheick [
16] explain that the semantic approach is a formalism often used to interpret complex information. With the protégé Semantic Web Reasoning Language( SWRL) tool, it is possible to perform queries based on concepts or classes [
16]. Ajami and Mcheick [
16] declared that: “
Ontology is considered to be one of the richest semantic structures for facilitating the representation, integration, and reasoning of knowledge.”
- (i)
Structure of COPDViolationSLAOntology Module
Figure 4 shows the core of the COPDViolationSlaOntology structure. Each component of this structure is an ontology that participates in the implementation of the dynamic evaluation mechanisms of SLA. Each component can be reused to enrich other SLA ontologies. The structure is modular. Each module is described in detail in the following sections. This structure can be linked to the standard COPD ontology, i.e., COPD ontology from the patient COPD Ontology component. COPDViolationSLa Ontology is therefore not an independent ontology. It is a modular ontology that is reusable and extensible with the SLA Ontology Standard.
Figure 5 shows an overview of the core structure of COPDViolationSLaOntology.
- (ii)
COPDPatientOntology Module
The objective of this ontology in the design of SLA control mechanisms is the dynamic collection of COPD patient data. The data come from the vital signal parameters: Fiev, Heartrate, Sao2, and Temperature. The Object Property and Datatype relationships of this ontology are described in
Figure 4. Only the main relationships that participate in the dynamic control mechanisms of the SLA are described in
Figure 4.
The object property relationships that participate in the SLA violation evaluation mechanisms are hasTemperatureSensorData, hasHeartRateSenSorData, hasSAO2SensorData, and hasFIEVSensorData. Indeed, these relationships allow for the collection of temperature, heart rate, oxygen saturation, and FIEV data, respectively, from a sensor installed on each COPD patient. The collected data are evaluated according to the rules defined in the reasoning. During this period, if the collected data do not satisfy the rules policies, then the reasoning engine increments the SLA violation incident counter. When the counter reaches the threshold defined in the KPI-Target Data incident, then the inference engine allows the SLA violation alert to be triggered.
Our solution approach is based on an adaptation mechanism. In effect, the type of alert sent to the parties for the SLA monitoring changes according to the nature of the incident detected by the patient context, for example by time period, if the patient context provides erroneous data, the alert system will generate a data incident.
In another period, if it is the service incidents that are identified, the alert will generate service incidents and not data incidents. Finally, depending on the nature of the incident, the system will propose dynamically the appropriate alert and services.
Table 3 presents some properties of the ontology patient module.
Figure 6 describes COPD Patient Ontology Module
Patient ontology module is structured into two main branches: vital parameters, psychological profile parameters, and patient personal information. The vital parameter sign represents the core of the evaluation mechanism. The SLA control rules are mainly based on the values of these parameters. For example, if the current value of the temperature does not belong to minimum and maximum temperature value, then there is a data incident. The SLA control counter is then incremented. If the counter value is beyond the KPI-TARGET limits, then the SLA control mechanism triggers the SLA violation alert according to the period chosen by the user. All signatory actors are automatically informed.
- (iii)
SLAItemsOntology Module
This ontology aims to provide information about the SLA context. For this purpose, it only addresses the description of the different items of the SLA. The items that are mainly involved in the mechanisms of control SLA are KPI-TARGET, Services and SLO. The Object Property and Datatype Property that characterize them are represented in the main table. The hasKPI_Expression_IncidentRequest and hasKPI_Expression_IncidentData relationships identify the incident levels discussed with the various parties signing the SLA. Indeed, the value of the data incident counter is compared with the KPI-TARGET defined in the SLO expression related to the data: KPI_Expression_IncidentData. The same approach is true for the request incident counter value, which is also compared with the SLO expression related to the incident requests: KPI_Expression_IncidentRequest.
Table 4 presents some properties of SLA items ontology.
The details of the SLAItemsOntology module are described in
Figure 7 below.
- (iv)
Violation Data Concepts and Alarm Management module
The purpose of this ontology is to record violations information and then populates the information to the template dynamically. The items or concepts that mainly participate in the SLA control mechanisms are patient and violation Sla Data Concepts. The hasAlarmViolationSlaManagementProfile and IncrementAlarmLevel links respectively associate the incident to the patient concerned and increment the incident counter to compare it to the KPI-TARGET extracted from the SLA. The hasAcquisitionRate relationship allows the emergency physician to define data collection periods. This approach makes the SLA control system more flexible. Below,
Table 5 describes some properties of violation data concepts and alarm managements.
Figure 8 shows Violation Data Concepts and Alarm Management.
- (v)
ViolationSLARequestconcepts and Alarmanagement Module
The purpose of this ontology is to record violations informations. Then, it provides the information to the template dynamically. The items that mainly participate in the SLA control mechanisms are ViolationRequest_Concepts and Request. The parameters hasNumbeRequestSent and hasNumberRequest are the data properties. Their values are calculated at the end of each AcquisitionRate collection period with the request incident control algorithm. If there is an incident request, then an alarm is generated with the hasGenerateAlarmRequest relationship. The incident request counter is then incremented with the relation hasIncrementAlarmLevelRequest.
Figure 9 describes the different relations between concepts.
The main branch of the ontology related to SLA control mechanisms is Request, ViolationRequest_Concepts. An incident request occurs if the sent request has not been received by the emergency physician, i.e., the status of the request is not confirmed. The difference between the number of requests sent and the number of confirmed requests in a period determines the number of request incidents. The concept or class allows the recording of these incidents and to populate the virtual template dynamically according to the period.
- (vi)
Subscription to Service Monitoring COPD Ontology Module
This ontology is not directly involved in the control mechanisms of the SLA. However, it provides important information to enable the control mechanisms to work correctly and above all, to adapt the interfaces to the context. Indeed, it provides information about the connected patient and the services affected by the SLA. The items that mainly participate in the SLA control mechanisms are: patients, services, and SLA actors. The hasSubscribeSystemCpodMonitoring relationship allows the subscription of the COPD patient, the emergency physician and the triage agent. For each contract with the COPD monitoring system, a service or services are assigned to the subscribed patient.
Table 6 describes the relations between the concept service components.