Victor Codocedo

Jaume Baixeries

Mehdi Kaytoue
email: mehdi.kaytoue@insa-lyon.fr

Amedeo Napoli

Characterization of Order-like Dependencies with Formal Concept Analysis

Keywords: functional dependencies, order dependencies, formal concept analysis

Functional Dependencies (FDs) play a key role in many fields of the relational database model, one of the most widely used database systems. FDs have also been applied in data analysis, data quality, knowledge discovery and the like, but in a very limited scope, because of their fixed semantics. To overcome this limitation, many generalizations have been defined to relax the crisp definition of FDs. FDs and a few of their generalizations have been characterized with Formal Concept Analysis which reveals itself to be an interesting unified framework for characterizing dependencies, that is, understanding and computing them in a formal way. In this paper, we extend this work by taking into account order-like dependencies. Such dependencies, well defined in the database field, consider an ordering on the domain of each attribute, and not simply an equality relation as with standard FDs.

Introduction

Functional dependencies (FDs) are well-known constraints in the relational model used to show a functional relation between sets of attributes [START_REF] Ullman | Principles of Database Systems and Knowledge-Based Systems[END_REF], i.e. when the values of a set of attributes are determined by the values of another set of attributes. They are also used in different tasks within the relational data model, as for instance, to check the consistency of a database, or to guide the design of a data model [START_REF] Mannila | The Design of Relational Databases[END_REF]. Different generalizations of FDs have been defined in order to deal with imprecision, errors and uncertainty in real-world data, or simply, to mine and discover more complex patterns and constraints within data when the semantics of FDs have shown to be too restrictive for modeling certain attribute domains.

For example, consider the database in Table 1 as an example 4 . Attributes of these 8 tuples are city names, month identifiers, years and average temperatures. From this table, we could expect that the value for average temperature is determined by a city name and a month of the year (e.g. the month of May in Houston is hot, whereas the month of January in Dallas is cold). Therefore, we would expect that this relationship should be somehow expressed as a (functional) dependency in the form city name, month → average temperature. However, while the average temperature is truly determined by a city and a time of the year, it is very hard that it will be exactly the same from one year to another. Instead, we can expect that the value will be similar, or close throughout different years, but rarely the same. Unfortunately, semantics of FDs is based on an equivalence relation and fail to grasp the dependencies among these attributes.

To overcome the limitations of FDs while keeping the idea that some attributes are functionally determined by other attributes, different generalizations of functional dependencies have been defined, as recently deeply reviewed in a comprehensive survey [START_REF] Caruccio | Relaxed functional dependencies -A survey of approaches[END_REF]. Actually, the example presented in the last paragraph is a so-called similarity dependency [START_REF] Baixeries | Computing similarity dependencies with pattern structures[END_REF][START_REF] Caruccio | Relaxed functional dependencies -A survey of approaches[END_REF]. Several other families of dependencies exist and allow relaxing the definition of FDs on the extent part (e.g. the dependency must hold only in a subset of the tuples in a database table) or on the intent part (equality between attribute values is relaxed to a similarity or tolerance relation).

The definition of a variation of a functional dependency shows different problems: characterization, axiomatization and computation. Formal Concept Analysis (FCA [START_REF] Ganter | Formal Concept Analysis[END_REF]) has already been used to characterize and compute functional dependencies. Moreover, in order to overcome some of the limitations of FCA to discover FDs, a more sophisticated formalization is presented in [START_REF] Baixeries | Computing functional dependencies with pattern structures[END_REF] and [START_REF] Baixeries | Characterizing Functional Dependencies in Formal Concept Analysis with Pattern Structures[END_REF] where pattern structures ( [START_REF] Ganter | Pattern structures and their projections[END_REF]) were used. The same framework is used in [START_REF] Baixeries | Computing similarity dependencies with pattern structures[END_REF] to compute similarity dependencies.

In this paper we present an FCA-based characterization of order-like dependencies, a generalization of functional dependencies in which the equality of values is replaced by the notion of order. Firstly, we show that the characterization of order dependencies in their general definition [START_REF] Ginsburg | Order dependency in the relational model[END_REF] can be achieved through a particular use of general ordinal scaling [START_REF] Ganter | Formal Concept Analysis[END_REF]. Secondly, we extend our characterization in order to support restricted order dependencies through which other FDs generalizations can be modeled, namely sequential dependencies and trend dependencies [START_REF] Caruccio | Relaxed functional dependencies -A survey of approaches[END_REF]. Finally, we present a characterization to a complex FD generalization named lexicographical ordered dependencies [START_REF] Ng | Ordered functional dependencies in relational databases[END_REF] showing the flexibility of our approach.

The rest of this paper is organized as follows. In Section 2 we formally introduce the definition of functional dependencies, formal concept analysis and the principle of the characterization of FDs with FCA. In Section 3, we characterize order dependencies in their general definition. We show that our formalization can be adapted to restricted ordered dependencies in Section 4 and lexicographical ordered dependencies [START_REF] Ng | Ordered functional dependencies in relational databases[END_REF] in Section 5 before presenting our conclusions.

Preliminaries

Functional dependencies

We deal with datasets which are sets of tuples. Let U be a set of attributes and Dom be a set of values (a domain). For the sake of simplicity, we assume that Dom is a numerical set. A tuple t is a function t : U → Dom and then a table T is a set of tuples. We define the functional notation of a tuple for a set of attributes X ⊆ U as follows, assuming that there exists a total ordering on U. Given a tuple t ∈ T and X = {x 1 , x 2 , . . . , x n }, we have: t(X) = t(x 1 ), t(x 2 ), . . . , t(x n ) .

Definition 1 (Functional dependency [START_REF] Ullman | Principles of Database Systems and Knowledge-Based Systems[END_REF]). Let T be a set of tuples (data table ), and X, Y ⊆ U. A functional dependency (FD) X → Y holds in T if:

∀t, t ∈ T : t(X) = t (X) → t(Y ) = t (Y ) id a b c d t1 1 3 4 1 t2 4 3 4 3 t3 1 8 4 1 t4 4 3 7 8
Table 2 Example. The table on the right presents 4 tuples T = {t 1 , t 2 , t 3 , t 4 } over attributes U = {a, b, c, d}. We have that t 2 ({a, c}) = t 2 (a), t 2 (c) = 4, 4 . Note that the set notation is usually omitted and we write ab instead of {a, b}. In this example, the functional dependency d → c holds and a → c does not hold.

Formal Concept Analysis (FCA)

Let G and M be arbitrary sets, respectively called objects and attributes, and Example. The table on the left presents a formal context: we have ({g 3 } , {g 3 } ) = ({g 3 , g 4 }, {m 2 , m 3 }) and the implication m 1 → m 2 . Its concept lattice representation involves reduced labeling: each node is a concept, lines represent partial ordering while an attribute (resp. object) label is inherited from the top (resp. the bottom).

I ⊆ G × M

Characterization of Functional Dependencies with FCA

It has been shown in previous work that functional dependencies, can be characterized with FCA. For example, Ganter & Wille [START_REF] Ganter | Formal Concept Analysis[END_REF] presented a data transformation of the initial set of tuples into a formal context. In this context, implications are in 1-to-1 correspondence with the functional dependencies of the initial dataset. In Figure 1, we illustrate this characterization with the set of tuples of Table 2. Each possible pair of tuples gives rise to an object in the formal context. Attributes remain the same. An object, say (t i , t j ), has an attribute m iff t i (m) = t j (m). The concept lattice is given on the right hand side of this figure: there are two implications, namely d → c and d → a, which are also the functional dependencies in the original set of tuples. However, this approach implies that a formal context much larger than the original dataset must be processed. It was then shown that this formal context can actually be encoded with a pattern structure [START_REF] Ganter | Pattern structures and their projections[END_REF]: each attribute of the original dataset becomes an object of the pattern structure and is described by a partition on the tuple set. Actually, each block of the partition is composed of tuples taking the same value for the given attribute [START_REF] Huhtala | Tane: An efficient algorithm for discovering functional and approximate dependencies[END_REF]. For example, in Table 2, the partition describing a is {{t 1 , t 3 }, {t 2 , t 4 }}. Then, the implications in the pattern concept lattice are here again in 1-to-1 correspondence with the functional dependencies of the initial dataset [START_REF] Baixeries | Characterizing Functional Dependencies in Formal Concept Analysis with Pattern Structures[END_REF]. What is important to notice is that this formalization is possible as a partition is an equivalence relation: a symmetric, reflexive and transitive binary relation.

In [START_REF] Baixeries | Computing similarity dependencies with pattern structures[END_REF], another kind of dependencies was formalized in a similar way, i.e. similarity dependencies, where the equality relation is relaxed to a similarity relation when comparing two tuples. An attribute is not anymore described by a partition, but by a tolerance relation, i.e. a symmetric, reflexive, but not necessarily transitive binary relation ("the friends of my friends are not necessarily my friends"). Each original attribute is then described by a set of tolerance blocks, each being a maximal set of tuples that have pairwise similar values (instead of equal values for classical dependencies).

This way of characterizing FDs and similarity dependencies actually fails for order dependencies, as the relation in this case is not symmetric: it is neither an equality nor a similarity but a partial order in the general case.

Characterization of Order Dependencies with FCA

Although functional dependencies are used in several domains they cannot be used to express some relationships that exist in data. Many generalizations have been proposed and we focus in this article on order dependencies [START_REF] Ginsburg | Order dependency in the relational model[END_REF][START_REF] Caruccio | Relaxed functional dependencies -A survey of approaches[END_REF]. Such dependencies are based on the attribute-wise order on tuples. This order assumes that each attribute follows a partial order associated to the values of its domain. For the sake of generality, we represent this order with the symbol x for all x ∈ U. In practice, this symbol will be instantiated by intersections of any partial order on the domain of this attribute, as, for instance, <, ≤, >, ≥, etc. We remark that this order on the set of values of a single attribute does not need to be a total order, although in many different instances, like numeric or character strings domains, this will be the case. In the following, we formalize operator x (Definition 2) and define accordingly order dependencies (Definition 3).

K a b c d (t1, t2) × × (t1, t3) × × × (t1, t4) × (t2, t3) × (t2, t4) × × (t3, t4)
Definition 2 (Attribute-wise ordering). Given two tuples t i , t j ∈ T and a set of attributes X ⊆ U, the attribute-wise order of these two tuples on X is:

t i X t j ⇔ ∀x ∈ X : t i [x] x t j [x]
This definition states that one tuple is greater -in a sense involving the order of all attributes-than another tuple if their attribute-wise values meet this order. This operator induces a partial order Π X = (T, ≺ X ) on the set T of tuples.

Definition 3 (Order dependency). Let X, Y ⊆ U be two subsets of attributes in a dataset T . An order dependency X → Y holds in T if and only if:

∀t i , t j ∈ T : t i X t j → t i Y t j id a b c t1 1 3 1 t2 2 7 2 t3 3 4 4 t4 5 3 9 t5 4 2 5 t6 3 8 4

Table 3

Example. Consider the table on the right with six tuples and three attributes. Taking a , b and c defined as the ordering ≤. The orders induced by the sets of attributes {a},{b},{c} and {a, b} are:

Πa = (T, ≺a) = {{t1} ≺ {t2} ≺ {t3, t6} ≺ {t5} ≺ {t4}} Π b = (T, ≺ b ) = {{t5} ≺ {t1, t4} ≺ {t3} ≺ {t2} ≺ {t6}} Π ab = (T, ≺ ab ) = {{t1} ≺ {t2} ≺ {t6}; {t1} ≺ {t3}; {t1} ≺ {t4}; {t5} ≺ {t4}} Πc = (T, ≺c) = {{t1} ≺ {t2} ≺ {t3, t6} ≺ {t5} ≺ {t4}}
These orders are such that the order dependency {a, b} → {c} holds. Remark that Definition 3 is generic since the orders that are assumed for each attribute need to be instantiated: we chose ≤ in this example for all attributes, while taking the equality would produce standard functional dependencies.

To achieve the characterization of order dependencies with FCA, we propose to represent the partial order Π X = (T, ≺ X ) associated to each subset of attribute X ⊆ U as a formal context K X (a binary relation on T × T thanks to a general ordinal scaling [START_REF] Ganter | Formal Concept Analysis[END_REF]). Then, we show that an order dependency X → Y holds iff K X = K XY .

Definition 4 (General ordinal scaling of the tuple set). Given a subset of attributes X ⊆ U and a table dataset T , we define a formal context for Π X = (T, ≺ X ) (the partial order it induces) as follows:

K X = (T, T, X )
where X = {(t i , t j ) | t i , t j ∈ T, t i X t j }. This formal context is the general ordinal scale of Π X [START_REF] Ganter | Formal Concept Analysis[END_REF]. All formal concepts (A, B) ∈ K X are such that A is the set of lower bounds of B and B is the set of upper bounds of A. Its concept lattice is the smallest complete lattice in which the order Π X can be order embedded.

This way to characterize a partial order is only one among several possibilities. However, the choice of formal contexts is due to their versatility, since they can characterize binary relations, hierarchies, dependencies, different orders [START_REF] Ganter | Formal Concept Analysis[END_REF] and graphs [START_REF] Ferré | A Proposal for Extending Formal Concept Analysis to Knowledge Graphs[END_REF]. In the next section we will see how this versatility allows us to generalize similarity dependencies. Given the set of attributes X ⊆ U, an associated partial order Π X = (T, ≺ X ) and the formal context (T, T, X ), it is easy to show that the later is a composition of contexts defined as: (T, T, X ) = (T, T,

x∈X x ).
We can now propose a characterization of order dependencies with FCA.

Proposition 1. An order dependency X → Y holds in T iff K X = K XY . Proof. Recall that K XY = (T, T, XY ) = (T, T, X ∩ Y ). We have that X → Y ⇐⇒ X = X ∩ Y ⇐⇒ X ⊆ Y ⇐⇒ ∀t i , t j ∈ T, t i X t j → t i Y t j
Example. To calculate (T, T, ab ), we just need to calculate (T, T, a ∩ b ), as illustrated in the example below.

a t1 t2 t3 t4 t5 t6 t1 × × × × × t2 × × × × t3 × × t4 t5 × t6 × × Table 4: (T, T, a ) b t1 t2 t3 t4 t5 t6 t1 × × × t2 × t3 × × t4 × × × t5 × × × × × t6 Table 5: (T, T, b ) ab t1 t2 t3 t4 t5 t6 t1 × × × t2 × t3 t4 t5 × t6 Table 6: (T, T, ab )
The fact that the order dependency {a, b} → {c} holds can be illustrated with the formal contexts in Tables 7,8 and 9. We have indeed that

K ab = K abc . c t1 t2 t3 t4 t5 t6 t1 × × × × × t2 × × × × t3 × × × t4 t5 × t6 × × Table 7: (T, T, c ) ab t1 t2 t3 t4 t5 t6 t1 × × × t2 × t3 t4 t5 × t6 Table 8: (T, T, ab ) abc t1 t2 t3 t4 t5 t6 t1 × × × t2 × t3 t4 t5 × t6 Table 9: (T, T, abc )
Order dependencies and other FDs generalizations. We have seen that the definition of order dependencies replaces the equality condition present in FDs or other similarity measures present in other dependencies, by an order relation. This may suggest that order dependencies and other kinds of FDs generalizations are structurally very similar, whereas this is not the case. Functional dependencies generate a reflexive, symmetric and transitive relation in the set of tuples, i.e. an equivalence relation. Then the set of tuples can be partitioned into equivalence classes that are used to characterize and compute the set of FDs holding in a dataset, as presented in a previous work [START_REF] Baixeries | Characterizing Functional Dependencies in Formal Concept Analysis with Pattern Structures[END_REF].

In the generalization of functional dependencies that replaces the equality condition by a similarity measure or a distance function, this measure generates a symmetric relation in the set of tuples, but not necessarily a transitive relation. In turn, this implies that the set of tuples can be partitioned into blocks of tolerance instead of equivalence classes, as shown in [START_REF] Baixeries | Computing similarity dependencies with pattern structures[END_REF].

In this article, the novelty is that we are dealing with a transitive relation, but not necessarily a symmetric relation. That means that we are not dealing with equivalence classes nor blocks of tolerance any longer, but, precisely, with orders. And since the characterization of these dependencies cannot be performed in terms of equivalence classes nor blocks of tolerance, will use a more general approach: general ordinal scaling. Order dependencies allow taking into account the ordering of the values of each attribute when looking for dependencies in data. However, violations of the ordering due to value variations should sometimes not be considered in many real world scenarios. Consider the example given in Table 10: it gives variations on the number of people waiting at a bus station over time. In such a scenario we can expect that more people will be waiting in the station as time moves on (P eople waiting → T ime). However, at some point, a bus arrives and the number of people waiting decreases and starts increasing again. It is easy to observe that the order dependency P eople waiting → T ime does not hold as we have the counter-example: t 4 P eople waiting t 3 and t 3 T ime t 4

Characterization of Restricted Order Dependencies

However, the gap between the values 77 and 105 is significant enough to be considered as a different instance of the ordering. We can formalize this idea by introducing a similarity threshold θ = 10 for the attribute P eople waiting such that the ordering between values is checked iff the difference is smaller than θ. In this way, the previous counter-example is avoided (restricting the binary relation) along with any other counter-example and we have that the restricted order dependency P eople waiting → T ime holds.

We now formalize the tuple ordering relation, and consequently the notion of restricted order dependencies. Definition 5. Given two tuples t i , t j ∈ T and a set of attributes X ⊆ U, the attribute-wise order of these two tuples on X is:

t i * x t j ⇔ ∀x ∈ X : 0 ≤ t j [x] -t i [x] ≤ θ x Definition 6. Let X, Y ⊆ U two sets of attributes in a table T such that |T | = n,
and let θ X , θ Y be thresholds values of tuples in X and Y respectively. A restricted order dependency X → Y holds in T if and only if:

t[X] * X t [X] → t[Y ] * Y t [Y ]
Using these definitions we can encode the tuple ordering relations as formal contexts for any subset of attributes X ⊆ U. Indeed, the binary relations between tuples by operator * X can be encoded in a formal context K * X = (T, T, * X ) which in turn, can be composed from single attributes x ∈ U as follows:

* X = x∈X * x
Moreover, we can use the same rationale we used to mine order dependencies to find restricted order dependencies.

Proposition 2. A restricted order dependency X → Y holds in T iff X → Y ⇐⇒ K * X = K * XY
Proof. This proposition can be proved similarly to Proposition 1.

Example. For the previous example, we calculate the corresponding formal contexts shown in Tables 11 and12 ( * T m for Time, and * P p for People waiting). It is easy to observe that the restricted order dependency P eople waiting → T ime holds as we have that

K * P p = K * P p,T m . * T m t1 t2 t3 t4 t5 t6 t1 × × × × × × t2 × × × × × t3 × × × × t4 × × × t5 × × t6 × Table 11: (T, T, * T m ) * P p t1 t2 t3 t4 t5 t6 t1 × × × t2 × × t3 × t4 × × × t5 × × t6 × Table 12: (T, T, * P p ) * T m,P p t1 t2 t3 t4 t5 t6 t1 × × × t2 × × t3 × t4 × × × t5 × × t6 × Table 13: (T, T, * T m,P p )
Restricted order dependencies and other FDs generalizations. Similarity dependencies (SDs) generalize functional dependencies through the use of a tolerance relation instead of an equivalence relation between values of tuples for a given set of attributes. A tolerance relation is a reflexive, symmetric and non-transitive binary association between two tuples given a threshold θ. In a nutshell, a SD is established between two tuples if their values are within a given distance controlled by the threshold. Such dependencies were studied in a previous work [START_REF] Baixeries | Computing similarity dependencies with pattern structures[END_REF]. However, from the perspective of order dependencies, we can request that such distance has a certain polarity. As we have previously discussed, order dependencies arise from anti-symmetric, not necessarily reflexive, and transitive binary relations (<, ≤). Then, it can be expected that using a threshold of distance θ between tuple values for a given set of attributes requires an antisymmetric, non-transitive relation between the values of tuples w.r.t. a set of attributes X, that we have defined as * X . Observe that the difference between Definition 5 and tolerance relations is the drop of the absolute value for t j [x] -t i [x] and the requirement that this is a positive number, i.e.

t i [x] < t j [x], ∀x ∈ X.
There is an important difference between this setting and SDs. While in SDs the threshold θ is used to relax the strict equivalence condition of standard functional dependencies, from the perspective of order dependencies the threshold is actually used to restrict tuple relations.

Restricted order dependencies have the potential to implement some other generalizations of FDs such as sequential dependencies and trend dependencies [START_REF] Caruccio | Relaxed functional dependencies -A survey of approaches[END_REF]. The latter is actually a particular case of restricted order dependencies where the threshold is applied to an attribute not contained in the attributes of the dependency. Instead, it is applied to a time attribute that allows defining a snapshot of the database. In sequential dependencies, the antecedent is a mapping (ρ) of a set of attributes with a complete unrestricted order (without a threshold). Currently, we are able to support some instances of sequential dependencies when the mapping is symmetric (ρ(XY ) = ρ(Y X)). Details on this matter has been left out from this paper for space reasons. Rather, in the following section we describe another dependency which is not symmetric, namely lexicographical ordered dependencies (LODs), that exemplifies the flexibility of our approach to support complex dependency definitions.

Lexicographical ordered dependencies LODs

LODs use the notion of lexicographical ordering in a rather unconventional manner 5 . While it could be expected that they compare the values of different attributes using lexicographical order, instead new descriptions (or projections) are composed from the Cartesian product of attribute domains on which the lexicographical order is applied [START_REF] Ng | Ordered functional dependencies in relational databases[END_REF]. Consequently, the order in which we compose new descriptions becomes relevant.

For example, in Table 14 we compose a description using the ordered set X = b, e such that the new descriptions or projections of tuples t 1 , t 2 on X are t X 1 =< 3, 5 > and t X 2 =< 4, 0 > respectively. It is clear that t X 1 is lexicographically lower than t X 2 . However, considering Y = e, b which is the inverse of X, we have t Y 1 = 53 and t Y 2 = 04 where t Y 2 is lexicographically lower than t Y 1 . Definition 7 formalizes lexicographical ordering for tuple projections. Definition 7 ([11]). Let X ⊆ M be an ordered set, such that n = |X|, and let [1, n] be the set of indices of the ordered set X. A lexicographical ordering on X, denoted by ≤ l X is defined for t

X 1 , t X 2 as t X 1 l X t X 2 , if either: 1. ∃k ∈ [1, n] s.t. t X 1 [k] < t X 2 [k] and t X 1 [j] = t X 2 [j] with j ∈ [1, k[. 2. t X 1 [i] = t X 2 [i], ∀i ∈ [1, n]
The main difference between LODs and standard order dependencies is that LODs are established over ordered sets and thus, the LOD a, b c does not imply that b, a c holds, where is used to denote a LOD. Definition 8 formalizes lexicographical order dependencies.

Definition 8 ([11]). Let X, Y ⊆ U be two ordered attribute sets. A LOD, X Y is satisfied iff for all t 1 , t 2 ∈ r, t X 1 ≤ l X t X 2 implies that t Y 1 ≤ l Y t Y 2 .
In Table 14, we have the LOD c, a, b d, e which can be verified as follows. Let X = c, a, b and Y = d, e . As pointed out in [START_REF] Ng | Ordered functional dependencies in relational databases[END_REF], a LOD between single attributes is necessarily an order dependency (with a single attribute there is only one order). Furthermore, given point 2 of Definition 7, all functional dependencies are also LODs. This includes the permutations of the antecedent and the consequent of a FD.

(t X 1 = 123) ≤ l X (t X 2 = 124) → (t Y 1 = 45) ≤ l X (t Y 2 =
In our setting, we have described that a context can be build to encode tuple relations for a given order operator (e.g. X , * X ) w.r.t. a set of attributes X. Regarding LODs, this cannot be the case as the set of attributes X is required to be ordered, meaning that the context K l xy is not necessarily the same as the context K l yx for x, y ∈ U (K l indicates a formal context encoding a lexicographical ordering ≤ l ). For example, from Y reveals that it requires a series of order-like dependencies to hold to be satisfied. For example, if X Y then the functional dependency X → Y holds. We can prove this as follows. Consider two tuples such that t X i = t X j (their projections w.r.t. X are equivalent). Then, t i ≤ l X t j and t j ≤ l X t i which, if X Y holds, implies that t i ≤ l Y t j and t j ≤ l Y t i which is the same as t Y i = t Y j . Clearly, t X i = t X j regardless the order of attributes in X and thus we have a functional dependency X → Y . Now, consider the first attribute of X, x 1 and the first attribute of Y ,

y 1 . Necessarily, t[x 1 ] < t [x 1 ] → t[y 1 ] ≤ t [y 1 ]
which is an order-like dependency between x 1 and y 1 . Similar analysis can be used to obtain sufficient rules so X Y . For the sake of brevity, we describe a simple algorithm verifying that the LOD X Y holds by checking a cascade of order-like dependencies obtained using the previous analysis. Table 5 presents an example of this algorithm applied to a table containing a LOD. For each attribute x ∈ U we generate three different formal contexts, namely K = x = (T, T, = x ), K < x = (T, T, < x ) and K ≤ x = (T, T, ≤ x ). Then, we proceed as follows:

-Check functional dependency X → Y -For the i-th element of Y , y i :

• Build K ψ = K = y1 ∩ K = y2 ∩ K = y3 ∩ • • • ∩ K = yi-1
• For the j-th element of X, x j :

* Build K χ = K = x1 ∩ K = x2 ∩ K = x3 ∩ • • • ∩ K =

Conclusion

Different generalizations of functional dependencies have been defined. The definition of a new kind of generalization of functional dependencies needs to cover two different aspects: axiomatization and computation.

We have presented a characterization of order dependencies with FCA, which can be potentially extended to other types of order-like dependencies, and are used in many fields in database theory, knowledge discovery and data quality.

These dependencies are part of a set of functional dependencies generalizations where equality condition is replaced with a more general relation. In some cases, the equality is replaced by an approximate measure, in other cases, like in order dependencies, by an order relation.

We have seen that order dependencies are based on a transitive, but not necessarily symmetric relation, contrasting approximate dependencies, which are based on a symmetric, but not necessarily transitive relation. It is precisely this formalization in terms of FCA that allows us to find these structural differences between these types of dependencies. We have also seen that this same characterization can be extended to other kinds of approximate dependencies.

This characterization allows us to cover also the computation of these dependencies: they can use the different algorithms that already exist in FCA.

This present work needs to be extended to other kinds of order-like dependencies, and some experimentation needs to be performed in order to verify the computational feasibility of this approach.

  an arbitrary binary relation: (g, m) ∈ I is interpreted as "g has attribute m". (G, M, I) is called a formal context. The two following derivation operators (•) define a Galois connection between the powersets of G and M . A = {m ∈ M | ∀g ∈ A : gIm} f or A ⊆ G, B = {g ∈ G | ∀m ∈ B : gIm} f or B ⊆ M For A ⊆ G, B ⊆ M , a pair (A, B) such that A = B and B = A, is called a (formal) concept while A is called the extent and the set B the intent of the concept. Concepts are partially ordered by (A 1 , B 1 ) ≤ (A 2 , B 2 ) ⇔ A 1 ⊆ A 2 (⇔ B 2 ⊆ B 1 ): the set of all formal concepts forms a complete lattice called the concept lattice of the formal context (G, M, I). An implication of a formal context (G, M, I) is denoted by X → Y , X, Y ⊆ M and means that all objects from G having the attributes in X also have the attributes in Y , i.e. X ⊆ Y . Implications obey the Armstrong rules (reflexivity, augmentation, transitivity).

Fig. 1 :

 1 Fig. 1: Characterizing functional dependencies with FCA.

xj- 1 *

 1 Check the order-like dependency (Kχ ∩ K < xj ∩ K ψ ) ⊆ K ≤ yi Checking a, b c, d :-K = ab is empty and the FD ab → cd holds. -For the first element of c, d :• K < a = {(t1, t2)} ⊆ K ≤ c = {(t1, t2), (t1, t3), (t2, t3), (t3, t2)} • K = a ∩ K < b = {(t2, t3)} ⊆ K ≤ c = {(t1, t2), (t1, t3), (t2, t3), (t3, t2)} -For the second element of element of c, d :• K < a ∩ K = c = ∅ ⊆ K ≤ d = {(t2, t3)} • K = a ∩ K < b ∩ K = c = {(t2, t3)} ⊆ K ≤ d = {(t2,

Table 1

 1

	id Month Year Av. Temp. City
	t1	1	1995	36.4	Milan
	t2	1	1996	33.8	Milan
	t3	5	1996	63.1	Rome
	t4	5	1997	59.6	Rome
	t5	1	1998	41.4	Dallas
	t6	1	1999	46.8	Dallas
	t7	5	1996	84.5	Houston
	t8	5	1998	80.2	Houston

Table 14 :

 14 Example

	≤ l	e,d t 1 t 2	≤ l	d,e t 1 t 2
	t 1 ×	t 1 × ×
	t 2 × ×	t 2	×
	Table 15: K l ed

Table 16 :

 16 K l de

Table 14

 14

	we can build a formal context

Table 17 :

 17 Example

http://academic.udayton.edu/kissock/http/Weather/

Consider lexicographical order as the order of words in a dictionary.

Acknowledgments. This research work has been supported by the SGR2014-890 (MACDA) project of the Generalitat de Catalunya, and MINECO project APCOM (TIN2014-57226-P) and partially funded by the French National Project FUI AAP 14 Tracaverre 2012-2016.


Olivier Sename
email: olivier.sename@gipsa-lab.fr

Michel Basset
email: michel.basset@uha.fr

Benjamin Talon
email: benjamin.talon@soben.fr

Brigitte D'

Andrea -Novel

Damien Koenig

John Martinez

S A S Soben

The INOVE ANR 2010 Blan 0308 project: Integrated approach for observation and control of vehicle dynamics

This paper presents the INOVE "Integrated approach for observation and control of vehicle dynamics" project. The aim and organization of the project are described and we present some recent results on the proposed integrated approach to design new methodologies for the improvement of the vehicle dynamical behaviour.

I. INTRODUCTION

The project is at the heart of the current politics and society concerns in term of road safety. Indeed, even if the number of death due to road accidents is currently decreasing, it is to be noticed that, in Europe, more than 2 million people are injured (about 40% need a stay in hospital), and almost 90000 people decease each year in road accidents (1.24 Million over the world). From the report of the World Health Organisation [START_REF]Global status report on road safety[END_REF], together with the improvement of road infrastructures and of transport policies for pedestrians and cyclists, "Safer vehicles" is part of the 5 pillards towards road safety. In particular it is required that Electronic Stability Control should be part of the minimum standards for vehicle construction (ex European and Latin New Car Assessment Programs -NCAP).

The project scientific breakthrough concerns the development of an integrated approach to design new methodologies for the improvement of the vehicle dynamical behaviour. The long-term goal is to equip vehicles with automatic functions for detection and correction of the vehicle dynamics in case of critical situations, in order to improve road safety by decreasing the number and the graveness of the accidents.

To achieve this objective, the challenge in vehicle control design, is the collaboration of all the devices linked to the chassis (such as brakes, suspensions, steering wheels, etc.) in order to control the global behaviour of the vehicle. This motivates many industrial and academic researches in this field, which aims at improving safety and comfort brigitte.dandrea-novel@mines-paristech.fr on commercial cars through the development of integrated control solutions that could handle different driving situations using many different actuators, in a common objective and ensure process reliability. However, in spite of an abundant literature on vehicle dynamics, few studies propose a global approach, taking into account simultaneously modelling, estimation, observation and control aspects. Moreover, the aspects concerning the bias and the uncertainties, that can be linked to the lack of knowledge of some phenomena, to the limit of validity of the models, or to measurement errors, must be handled in a specific way, due to the increasing complexity of the systems. The core of the project is to elaborate new approaches and innovative solutions, for the identification of the vehicle behaviour, for the observation and detection of critical situations, and for the robust and fault tolerant control of the vehicle dynamics, in view of improving vehicle (and so passengers) safety. The provided methodologies are based on recent results in linear and non linear automatic control.

An unified framework is considered, where some of the key issues to achieve the project objectives are described below.

Modelling/Identification: a unified approach is developed in order to provide, in a generic way, from a reference model whose the structure and the nature have been defined, needed models for observation/control synthesis. The context of global chassis control via switched strategies for mentioned critical driving situations with a serial car (meaning noise on measurement, non linearities, unmodeled characteristics, etc.), is taken into account in order to reach the reference model. First, a new global sensitivity analysis method is developed to focus on principal parameters involved in the modelling. Then, novel model order reduction methodologies are developed with the aim to generate needed models for observers and controllers in a unified way and satisfying to controllability, observability, stability and accuracy aspects compared to existing approaches. The identification of the models are treated with dedicated existing methods.

Observation: we are developing estimation strategies using the on-board sensors available on serial cars such as accelerometers at the center of gravity, odometers for wheel speed measurements, gyrometers for angular velocities as well as radars for vehicle inter-distance. Of course the industrial and real-time context imply that obtained measurements, when available, are noisy. Here, the estimation and filtering strategies rely on recent algebraic methods or parity space approaches.

Control: new methods for global chassis control are developed, integrating the necessary information given by the observers. This needs advanced control methods for MIMO systems, such as the H ∞ approach. In order to account for the actuator coordination and to react against critical situations, some on-line adaptive strategies are proposed, using the Linear Parameter Varying (LPV) framework. A hierarchical control structure is proposed to cope with existing local strategies (ABS), and integrating chassis and longitudinal control. One of the considered key issues is the fault tolerance face to sensors and actuators failures.

For validation, we are interested in some specific critical situations (representative enough to emphasize the project interest) such as:

• Driving on uneven roads, with different road conditions (dry, wet...), with/without braking. Extension in the case of inter-distance control. Physical systems are often characterized by reference models of high order, including uncertainties, non linearities or parameter variation. However, for embedded systems (such as integrated driver aid solutions), these models are too complex to be used for observation and control synthesis. Up to now, no direct links exist between the reference models issued of system specifications (e.g. for simulation purpose) and those used for the development of embedded applications. Facing this complexity, engineers involved in the necessary different technical fields, usually develop their own models for each type of application. In the context of futur automatic vehicles integrating unified global chassis control objectives, this usual approach appears too limited, also due to economical constraints (time consuming.

Then, to cope with observation and control requirements, the modeling objectives focus on the identification of a generic reference model, based on a parameters global sensitivity approach, and on the development of novel approaches for model order reduction from linearized ones.

A. Identified Models Base

Considering previous research works, the MIPS laboratory has developed and identified a non linear reference model including tyres and suspensions non linearities [START_REF] Hamza | Sensitivity analysis for the study of a tire model with correlated parameters and an arbitrary distribution[END_REF]. In order to justify the complexity chosen for the sub-system models (representativness, identifiability), and then, to contribute to the automatic generation of fixed order linearized models, a new method has been developed for parameter sensitivity analysis. Indeed, local and global sensitivity methods, are too restrictive for such a field of applications, considering for example strong constraints on tests trials (constrained excitation), correlated parameters and dynamical aspects. The method, based on chaos polynomials, and has been developed for static models involving correlated parameters and arbitrary probability distribution for input variables. It has been first applied to tyre parameters analysis [START_REF] Kiebre | Sensitivity analysis for the study of influential parameters in tyre models[END_REF], [START_REF] Hamza | Sensitivity analysis for the study of a tire model with correlated parameters and an arbitrary distribution[END_REF] and is currently applied to damper model analysis in collaboration with GIPSA-Lab. The extension to dynamical models is presented in [START_REF] Sandoval | Sensitivity study of dynamic systems with polynomial chaos[END_REF].

On the other hand, a toolbox "Automotive control" has been developed in the project and is maintained in GIPSAlab, which includes different models and control strategies. The vehicle models have been developed and validated in collaboration with the MIPS laboratory (Mulhouse) from experimental data obtained the Renault Mégane Coupé (see figure 1.). Hence, the following models are available in the toolbox, as detailed in [START_REF] Poussot-Vassal | Attitude and handling improvements through gainscheduled suspensions and brakes control[END_REF]:

• Full vehicle non linear model that includes tire models and non linear characteristics of the suspension, in particular a non linear model of a semi-active Magneto-Rheological damper.

B. Model order reduction

The interest of model order-reduction, treated here in a unified way with sensitivity analysis, observation and control developments, is motivated by the fact that high order models generate high order controllers/observers whose synthesis, simulation and implementation is too complex and not reliable.. Both approaches, considering model order reduction (simulation aspect) and robust controller order reduction (implementation of the robust controller) have been investigated, for LTI systems first. It is worth noting that the developed algorithms have to guarantee some specifications such as controllability, observability and stability. Different approaches introducing reachability and observability Grammians of the considered systems, have been developed leading to a balanced truncation model reduction procedure. Such approaches have been tested on different systems as switched systems (considering switched models for observation and control in critical driving situations) [START_REF] Birouche | Model Reduction for Discrete-Time Switched Linear Time-Delay Systems via the H ∞ Robust Stability[END_REF], [START_REF] Guillet | Extracting Second Order Structures from Single-input State-space Models: Application to Model Order Reduction[END_REF] and robust controllers to keep performance and regulation considering uncertainties [START_REF] Zebiri | Balanced Truncation Techniques for Active Suspension Reduced-Order Hinf-Controller[END_REF]. Since the vehicle systems are strongly nonlinear, convenient models are Linear Parameter Varying (LPV) ones. This has recently motivated researches on model-based methods for LPV systems.

A. Contribution Fault detection for LPV systems

Two main contributions have been developed. First, an H ∞ fault estimation method has been developed for LPV systems [START_REF] Varrier | Applicative fault tolerant control for semi-active suspension system : Preliminary results[END_REF]. Then, parity based residual generation methods for different classes of LPV systems have been studied. The main objective of the parity approach is to design a scheduled parity matrix according to the scheduling parameters and with a robustness face to the uncertainties and unknown inputs. The objective is to minimize the residual sensitivity with respect to uncertainties and disturbances, and maximize its sensitivity face to faults. The approach of the generalized eigenvalues/eigenvectors is used. It results an optimal decoupled parity matrix where the residual synthesis is rewritten in terms of a new optimization problem and solved using Linear Matrix Inequalities (LMIs) techniques. Some of the results, including robustness analysis and implementation are presented in [START_REF] Varrier | Robust fault detection for vehicle lateral dynamics[END_REF]. In the field of fault detection for LPV systems, the major contributions rely in the design of fault indicators for a class of non-linear systems which can be written as LPV Uncertain systems subject to Unknown Inputs, as presented in [START_REF] Varrier | Robust fault detection for Uncertain Unknown Inputs LPV system[END_REF].

B. Detection of critical situations

Concerning the detection of critical situations, the preliminary work in [START_REF] Varrier | Détection de situations critiques et commande robuste tolérante aux défauts pour l'automobile[END_REF] allows to use the fault detection methodologies in order to detect a critical situations for vehicle lateral dynamics. Indeed the tire model is decomposed in different zones : normal (linear behavior), and critical thus skidding zones (highly non linear). The vehicle model has been rewritten as an LPV one plus a non linear component that accounts for the skidding zone. The fault detection approach consists in detecting this non linear component which is linked to the dangerousness of the situation.

C. Driving Risk Assessment

In order to better assess and, then, anticipate potential dangerous driving situations, driving risk assessment based on data fusion, represents an interesting and cost-free way to equip vehicles. But defining driving risk still remains a challenge since the driving task is complex and involves numerous factors of different nature which are not easy to consider for control oriented systems as, for example, sociological factors. In current Intelligent Transportation Systems (ITS), risk estimation is classically performed for a particular situation and with simple arithmetic criteria. The estimated risk (considered as a threshold to define the importance of an action) is generally related to information from either the Vehicle, the Driver or the Environment. To cope with that framework, the developed strategy, based on belief functions which are able to model data imperfections, shows a two-level architecture for relative driving risk assessment considering, simultaneously, several heterogeneous factors linked to the Vehicle-Driver-Environment system. A first level is focused on the determination of a local risk for each entity of the VDE independently from the others. The second fusion level combines the local risks to define the relative risk level (Low, Medium, High) of the driving task. This final risk is determined for driver warning and control anticipation if needed [START_REF] Daniel | Driving Risk Assessment with Belief Functions[END_REF], [START_REF] Daniel | Multi-criterion Dempster-Shafer Fusion for Speed Limit Determination[END_REF].

IV. TASK 3: ROBUST, ADAPTIVE AND FAULT-TOLERANT CONTROL FOR VEHICLE DYNAMIC

The main objective is here to improve the dynamical behavior of the vehicle during dangerous driving situations. One of the main challenges concerns the coordination between different car subsystems and the available actuators in the today commercial vehicles to keep the desired performance. Here, the performances are achieved if the system guarantees both the car safety (road holding, for instance) and the comfort of passengers. First, some results have been obtained on semi-active suspension control as in [START_REF] Savaresi | Semi-Active Suspension Control Design for Vehicles[END_REF], [START_REF] Dugard | Full vertical car observer design methodology for suspension control applications[END_REF], [START_REF] Do | LPV modelling and control of semi-active dampers in automotive systems[END_REF], [START_REF] Lozoya-Santos | Magnetorheological damper: an experimental study[END_REF].

A. Vehicle Dynamics Control

On the other hand, a global architecture for vehicle dynamics control is proposed considering a full car model (longitudinal, lateral, vertical, roll, pitch, yaw). In terms of control design, we perform an H-inf Multi-Input Multi-Ouput (MIMO) synthesis for gain-scheduled Vehicle Dynamic Control (VDSC) that involves the steering actuators, rear brakes and four active (or semi-active) suspension (see Figure 2), and aims at enhancing the yaw stability and lateral car performances [START_REF] Poussot-Vassal | Vehicle dynamic stability improvements through gain-scheduled steering and braking control[END_REF], [START_REF] Doumiati | Integrated vehicle dynamics control via coordination of active front steering and rear braking[END_REF].

The aim of this work is to provide an LPV way towards a smart coordination of the three types of actuators, taking into account the physical limitations and some possible loss of effectiveness of braking and suspension actuators [START_REF] Fergani | Performances improvement through an LPV/H ∞ control coordination strategy involving braking, semi-active suspension and steering systems[END_REF], [START_REF] Fergani | A lpv suspension control with performance adaptation to roll behavior, embedded in a global vehicle dynamic control strategy[END_REF], [START_REF] Fergani | A new LPV/H ∞ global chassis control through load transfer distribution and vehicle stability monitoring[END_REF]. In addition, the proposed technique consider the Actuators structural limitations (like semi-active and saturation limits) in a more explicit way during the control design. This strategy is scheduled by a special monitoring system As illustration some simulation results (obtained using our "Automotive toolbox") are shown for a double lane-change maneuver at 100 km/h on a wet road (from t = 2s to t = 6s). The scenario is as follows:

• Faulty left rear braking actuator: saturation = 75N

• 5cm Road bump from t = 0.5s to t = 1.5s and from t = 4s to t = 5s) • Faulty front left damper: force limitation of 70% • Lateral wind occurs at vehicle's front generating an undesirable yaw moment (from t = 2.5s to t = 3s). In figure 3 are shown the 3 parameters to activate the braking/steering actuators and coordinate the suspension ones.

B. Fault Tolerant Control

Due to the number and nature of the available sensors in a car, a multi-sensor fault-tolerant mechanism for LPV systems has been proposed in [START_REF] María | Multisensor switching control strategy with fault tolerance guarantees[END_REF]. The control laws will select at every time-instance, the sensor or a family of sensors that provide the best performance in terms of the control objectives. The latter point allows the control system to avoid faulty sensors in an implicit way. The stability conditions and the sensor switching mechanism is based on the computation of minimal positively invariant sets for linear and polytopic LPV systems.

On the other hand, some methods have been developed in particular when some loss of damper efficiency appears due to oil leakage [START_REF] Sename | LPV methods for fault-tolerant vehicle dynamic control[END_REF], [START_REF] Martinez | Fault Tolerant Strategy for Semi-Active Suspensions with LPV Accommodation[END_REF], incorporating, in an LPV framework, a specific parameter for the loss of damping efficiency.

V. TASK 4: INTEGRATION, VALIDATION AND TESTS. A. INOVE Test-bed

The vehicle dynamics control systems can be evaluated in the 6 degrees-of-freedom: translations in the longitudinal, lateral and vertical axis, as well as the rotation around the roll, pitch and yaw axis. These movements can be controlled using several types of actuators, as : active or semi-active dampers, steering actuators, braking actuators, active differential, .... Among them, the suspension system is the only one that can influence the passenger comfort as well as the car road handling. It is then of huge interest in global chassis control technology. The test rig INOVE, built by SOBEN, aims at studying the effect of the suspension system on the vertical dynamics. The test bench allows to test various strategy on estimation and control for the vertical dynamics, as :

• Modelling : semi-active dampers [START_REF] Lozoya-Santos | Magnetorheological damper: an experimental study[END_REF]; 7 DOF vertical dynamics [START_REF] Dugard | Full vertical car observer design methodology for suspension control applications[END_REF] • Estimation of the road impact and observation of the vertical dynamics state [START_REF] Menhour | -Novel, Road bank and vehicle roll angles estimation based on functional Switched Proportional Integral Hinf Observer[END_REF], [START_REF] Dugard | Full vertical car observer design methodology for suspension control applications[END_REF] • Detection of sensors and actuators faults using observers and parity equations methods [START_REF] Varrier | Détection de situations critiques et commande robuste tolérante aux défauts pour l'automobile[END_REF] • Control of semi-active dampers [START_REF] Poussot-Vassal | Survey and performance evaluation on some automotive semi-active suspension control methods: A comparative study on a single-corner model[END_REF], [START_REF] Savaresi | Semi-Active Suspension Control Design for Vehicles[END_REF] • Control of the vertical dynamics using Linear Parameter

Varying approaches This vehicle has 2 actuators: a brushless-motor providing the power to each wheels throw 3 differentials, and a servomotor controlling the steering wheel. It has been equipped with many sensors: deflection sensors in each suspension, 3 axis accelerometers inside each wheel, 3 axis accelerometers in each corner of the chassis (head of the suspension), a 3 axis accelerometer in the center of gravity of the vehicle, a 3 axis gyrometer in the center of gravity of the vehicle, a GPS sensors, a Steering wheel angle sensors, 2 ultrasonic sensors at the front and the rear of the vehicle, a tachometer in the brushless-motor, tachometers inside each wheels.

C. MIPS test car

In order to validate the different developments performed in the tasks 1, 2 and 3, the MIPS's Renault Mégane Coupé and Renault Scénic test cars are equiped with differents sensors and actuators (see for example Fig. 1). This phase is the last step in the V cycle to verify performance and robustness of developments realised. Then, these test cars are complementary of GIPSA-Labs' presented test benches dedicated to HIL tests. These test cars are equiped with sensors to measure in real time vehicle dynamics, driver's activity and road profile. Most of sensors are those ones from commercialised car. Added sensors like precise DGPS matched inertial sensor giving accelerations, speeds and trajectory, are used for reference. Moreover, with the Renault Scénic test car, two actuators are mounted on the vehicle to control the longitudinal speed and the steering angle. Considering these equipments, the following developments have been validated or are currently under tests for validation : models, sensitivity analysis, model order reduction, controller order reduction, fault detection, risk assessment, obstacle avoidance, high level control strategy.

Fig. 1 .

 1 Fig. 1. MIPS test car (left) and INOVE scaled vehicle (right)

  III. TASK 2: OBSERVATION AND DATA FUSION FOR DETECTION OF CRITICAL SITUATIONS Fault Detection, and on-board diagnosis, is of crucial important in dynamical systems, particularly in automotive applications, due to the emergence of new safety systems for vehicles such as anti-lock braking (ABS), adaptive cruise control (ACC), electronic stability control (ESC). Indeed actuator and sensors failures might lead to extremely dangerous situations, that Fault Detection and Diagnosis methods should overcome. Many model-based fault detection and isolation (FDI) procedures have been developed in the past, as for instance, analytical redundancy-based methods, statistical and geometrical methods or observer-based approaches. More recently, researchers focused on optimization-based techniques for fault detection (H ∞ and H -based approaches).

Fig. 2 .

 2 Fig. 2. Global chassis control implementation scheme

Fig. 3 .Fig. 4 .Fig. 5 .

 345 Fig. 3. Parameter variations for monitoring

Σ(ρ 1 , ρ 2 )Fig. 6 .

 126 Fig.6. LPV/Hinf semi-active suspension control strategy with performance adaptation to roll behavior based on non linear algebraic road profile estimation[START_REF] Fergani | A new LPV/Hinf semi-active suspension control strategy with performance adaptation to roll behavior based on non linear algebraic road profile estimation[END_REF]

Fig. 7 .

 7 Fig. 7. Test rig It consists of a 4-poster bench, and a small 1/5 car equipped with 4 semi-active Electro-Rheological dampers (from Fludicon). The road sollicitation are emulated through 4 independent electrical motors, allowing to provide different road profiles under each wheel. Many sensors are used to give informations on the car behavior: an inertial measurement unit, 4 accelerometers for the wheel vertical behaviors, 4 suspension deflection sensors, pitch and yaw angle sensors, 4 force sensors at the tyre/road contact; 4 ER damper force sensors.

[ 25 ]

 25 B. 1/5 th scale vehicle A new prototype has been developed in the framework of INOVE in order to test some Fault Detection approaches. It consists in a 1/5 th scale vehicle as seen in figure V-B.

Fig. 8 .

 8 Fig. 8. Prototype with view of the components

*This work was supported by the French national project INOVE/ ANR 2010 BLAN 0308.


Adel Noureddine
email: a.noureddine@uel.ac.uk

Syed Islam
email: syed.islam@uel.ac.uk

Rabih Bashroush
email: r.bashroush@qub.ac.uk

Jolinar: Analysing the Energy Footprint of Software Applications (Demo)

Keywords: CCS Concepts, Hardware → Power estimation and optimization, •Software and its engineering → Empirical software validation, Energy Footprint, Program Analysis

Monitoring energy consumption of applications is crucial for energy optimisation and improvements in software systems. With the recent emphasis on energy efficiency, it is vital that software engineers have an understanding of the energy consumed by the code they write. In this paper, we present Jolinar, a tool that bridges the gap between energy measurements and accessibility to software engineers and even end-users. The tool builds on top of recent energy models to provide an accurate, light and easy-to-use interface for energy measurements. The target audience of Jolinar is both software engineers and non-technical end-users who want to monitor their applications' energy footprint. We show that end-users can use Jolinar's GUI to determine the energy consumed by the software they are using, and software engineers can use the tool to analyse energy consumption of systems to make energy-conscious decisions.

INTRODUCTION

With the proliferation of computer devices, the rate of energy consumption of Information and Communication Technologies (ICT) is rising at an alarming rate. It is estimated that ICT consumption will rise from 168 to 433 Gigawatts (7% to 14.5%) by 2020 [START_REF] Vereecken | Communications, Control and Signal Processing (ISCCSP)[END_REF]. Greenhouse Gas emissions (GHG) from ICT are also expected to double to 1430 MtCO2e within the same period [START_REF] Webb | SMART 2020: enabling the low carbon economy in the information age, a report by The Climate Group on behalf of the Global eSustainability Initiative (GeSI)[END_REF], highlighting the need for more energy efficient hardware and designing sustainable software.

For developers to be able to enhance efficiency and optimise performance of software systems, they need to be able to measure energy consumption in order to identify bottlenecks, hotspots or energy smells in the code. Energy efficiency is an emerging software engineering quality that software architects consider as a major architectural concern in the next five years [START_REF] Bashroush | Data center energy demand: What got us here won't get us there[END_REF].

In addition to traditional software properties often cited to aid in program analysis and understanding [START_REF] Storey | Theories, methods and tools in program comprehension: past, present and future[END_REF], it is vital for software engineers to understand the energy consumed by their application and is an important part for program analysis and comprehension [START_REF] Islam | Measuring energy footprint of software features[END_REF]. This is further highlighted by the recent treatment of energy consumption as a significant non-functional property in both industry and academia.

Accordingly, monitoring and optimising the energy consumption of software systems have gained considerable traction over the last few years. Researchers and practitioners are focusing on accurate models to estimate the energy consumption of software, which sometimes includes the use of complex formulas or additional hardware. However, limited research has been conducted on accessible tools to aid such effort and raise the awareness [START_REF] Pinto | Mining questions about software energy consumption[END_REF].

In this paper, we demonstrate Jolinar, our energy monitoring tool. Jolinar is an easy-to-use software tool that allows developers understand the energy consumed by their application. It is designed to be accessible by non-technical users and software engineers alike, providing an intuitive graphical user interface and a command-line tool for easy inclusion in external frameworks.

MOTIVATION & RELATED WORK

Current approaches for monitoring energy range from hardware devices to power models and tools [START_REF] Noureddine | A review of energy measurement approaches[END_REF]. Hardware-based solutions, such as power meter devices and dedicated integrated circuits or sensors, demand additional investment, complex installations, and, treat the entire system as a black box. Tools, such as pTop, PowerSpy, PowerAPI, JouleMeter or Energy Checker provide power and energy insights into software energy footprint but at the cost of limiting usability. For instance, some require a power meter in order to calibrate their models, or for runtime energy monitoring (PowerAPI, PowerSpy, JouleMeter). Others require modifications to applications' source code or patching parts of the operating system to effectively monitor software energy consumption (pTop, Energy Checker). While these modifications and additional investments might be accessible to researchers, this acts as a potential barrier for developers and end-users. This problem is further compounded by the lack of access to physical hardware in modern software development cycles where deployment is moving to the cloud [START_REF] Anthony I Wasserman | Software engineering issues for mobile application development[END_REF].

Jolinar addresses these challenges by providing a lightweight and easy to install and use energy monitoring tool. Jolinar requires no power meter or source code modifications enabling easy incorporation into any analysis toolkit. The visual information provided by Jolinar is pragmatic for precise energy data, while deploying familiar indicators and gauges that the non-energy experts can easily grasp.

JOLINAR DESIGN

Jolinar is based on our energy models [START_REF] Noureddine | A preliminary study of the impact of software engineering on greenit[END_REF]. These models were implemented in a system library tool called PowerAPI. PowerAPI was developed as an energy library that provides an API and is designed to scale to monitor multiple applications at the same time. It runs on personal computers and servers alike, but requires time consuming setup and an advanced level of technical and programming expertise to run, effectively making it difficult to use for end-users.

Jolinar bridges this gap between accurate energy estimations and usability. It monitors single applications at a time (with a limitation of one process per application), is easy to deploy and incorporate into an external framework and is also able to provide data in an easy to understand format. Our estimation models are based on hardware characteristics and software resource utilisation. The former are retrieved from publicly available OEM specifications, while resource utilisation is monitored at runtime with the help of metrics collected by the operating system. Our model uses this information to estimate the overall energy consumption of applications at runtime, as well as at the individual hardware component level. For example, we can estimate the total energy consumed by a particular application, and the breakdown per CPU, hard disk and memory components.

The estimation approach starts by monitoring hardware resource utilisation, such as the current frequency of the CPU or the number of bytes read or written to the hard disk. Next, OEM hardware specification data, along with resource utilisation information, are used by our estimation models to calculate the energy consumed by hardware components. Then, Jolinar monitors resource utilisation of the application, such as the CPU time or cycles used, and the number of bytes read or written. Finally, this information is used by the energy models to estimate the overall software energy consumption. Figure 1 summarises our energy estimation approach. Our CPU energy model [START_REF] Noureddine | A preliminary study of the impact of software engineering on greenit[END_REF] takes into consideration modern processors' characteristics, such as DVFS (Dynamic Voltage and Frequency Scaling), CPU's TDP (Thermal Design Power) and real-time processor frequency and voltage changes. The power consumption is calculated every 500 milliseconds, following power variation whenever frequency or voltage changes. Disk and memory energy models use a similar approach of capturing resources and estimating energy consumption. Disk energy model uses the number of bytes read and written by the application, while the memory mode uses the percentage of RAM memory occupied by the application.

Our energy models were validated with an error margin of around 3% on average [START_REF] Noureddine | A preliminary study of the impact of software engineering on greenit[END_REF]. However, we are aware that energy estimations may lose some accuracy on most recent releases of hardware. Jolinar is designed in a modular way where modules for energy models are independent of the user interface. Accordingly, when new energy models are designed to increase accuracy for latest hardware releases, Jolinar can easily be updated to reflect such changes.

END-USER USE CASE USING GUI

This section introduces the interface design and an enduser use case interaction of Jolinar. Figures 2, and3, display an example of using Jolinar GUI to monitor the energy consumed by FileZilla, an FTP client on GNU/Linux. A typical use case where an end-user wants to understand the amount of energy consumed by usage of software.

Jolinar was designed to be an easy to install and use tool. The tool is distributed as executable Jar, .deb and .rpm packages where dependencies are automatically managed. As such, no compilation or command line instructions are required as the tool is packaged in .deb or .rpm packages.

The initial view of Jolinar is divided into two areas: the input box for choosing the application to monitor, and the visual output display, which shows the energy consumed by the application (Figure 2). Users simply need to indicate the name of the application to start monitoring. Jolinar launches the application and starts monitoring its energy consumption instantaneously. This presents the best tradeoff between swiftness, monitoring and accessibility avoiding the need to deal with process ids. We chose to use a text box to input the application name instead of a list to choose from, or permanently monitoring all applications, because this option presents the best trade-off between swiftness of monitoring and accessibility. Therefore, there is no need for software modification, memorising the application's process ID, or fiddling with a long list of monitored applications to find the one the user needs.

The second tab in Jolinar's GUI window is where users can specify the settings and configuration information needed for the application and the energy models (Figure 3). Our models use hardware specification data that are usually provided by hardware OEMs, such as the TDP, frequency and voltage, or read/write power rates. An option to generate logs is also available for developers and will store runtime software power consumption (in Watts) each 500 milliseconds. When Jolinar launches the application and starts monitoring, it will do so in the background without impacting the performance of the application. Users can then use their software normally. On exit, Jolinar displays the energy estimations in both numerical values (in Joule and percentage) and using visual feedback. Energy estimations are broken into individual hardware components along with the total energy consumed by the application. This provides better understanding and awareness of which hardware component is responsible for the highest/lowest energy impact in the monitored application (which could help in identifying energy hotspots).

In the example of Figure 2, FileZilla consumed 6.73 Joules in a benchmark run consisting of sending and receiving 5 files to an FTP server, with most of that energy (5.85 Joules) being consumed by the processor (86% of the total energy of the application). Disk energy was around 2% due to reading files for FTP transfer, while the RAM memory consumed 10% of FileZilla's energy (0.72 Joules). This breakdown, both in Joules and in percentage, helps both software developers and end-users understand which hardware components are consuming the most energy. For developers, this will provide them with a first indication of the energy consumption of applications and help them focus their optimisation and improvement work to increase the energy efficiency of their software. Therefore, Jolinar is complementary, rather than a replacement, to tools such as Jalen [START_REF] Noureddine | Monitoring energy hotspots in software[END_REF] which monitors energy consumption of software source code (at the methods level). For end-users, the breakdown would allow them to better understand the energy footprint of each hardware component in their computer.

ANALYSIS USE CASE USING CLI

This section of the paper introduces the command line interface of Jolinar and shows its use in a use case where Jolinar is used to analyse libraries and executables, helping software engineers make energy conscious decision.

In addition to the graphical user interface, Jolinar provides a command-line tool (JCL) that is suited for large runs, scientific experiments, for headless applications in server configurations and incorporation into external frameworks. We designed the command line version to be as much intuitive and easy-to-use as the GUI one. Figure 4 displays the configuration wizard that is executed at the first run of Jolinar or when the configuration file is missing. The GUI and command-line versions both share the same config.properties file, giving users and developers two methods to update the settings (they can also edit the file directly).

The command-line tool offers simple commands to update settings or monitor energy with multiple options and flags. For instance, updating the TDP can be achieved by simply typing: jolinar -tdp 20 to update its value to 20 Watts. Finally, monitoring an application follows a similar straightforward approach as the GUI, users only need to indicate the name of the application to monitor and Jolinar will execute, monitor and then output its energy consumption. JCL is suitable for inclusion in frameworks, such as GP that can consider energy consumption as fitness function to evolve programs.

We measure the energy consumed by two different algorithm implementations of calculating the digits of the number Pi. We measure the energy consumed by each algorithm to show the energy consumption for operating on the same set of inputs and computing the same set of data. We use ycruncher [START_REF]y-cruncher, a multi-threaded pi-program[END_REF], a software implementing multiple algorithms for calculating many constants -including Pi, to compare Chudnovsky's algorithm and Ramanujan's algorithm implementations on a GNU/Linux operating system. We compare the algorithms using a single thread and in a multithreaded environment, for calculating digits of Pi ranging from 10 million to 100 million digits. We run the experiments on an HP G70 laptop with an Intel Dual T3400 processor at 2.16 GHz. The results in Figure 5 show that the Chudnovsky multi-threaded implementation (Chudnovsky-MT ) consumes less than half the energy compared to Ramanujan's single-threaded one (Ramanujan-Single). More precisely, across all experiments, the multi-threaded version on average consumes 38% less energy compared to the single- In cases where a software engineer is deciding whether to use an implementation of a Pi algorithm as a library feature, Jolinar would help them make an energy conscious decision thereby reducing the carbon footprint of the software. Profiling and analysis of energy consumption such as this can help developers identify the features that are consuming more energy and use additional information (such as importance and likely frequency of use) to decide on where to focus optimisation efforts (e.g. optimise code or dedicate energy efficient resources to frequently used features). Although software energy consumption varies from one platform to another, we identified in [START_REF] Noureddine | Monitoring energy hotspots in software[END_REF] that energy distribution within source code remains mostly stable with a variance of less than 4%.

CONCLUSIONS

In this paper, we present Jolinar, a software tool that can estimate the energy consumption of applications in an accurate, lightweight and accessible way to researchers, practitioners and non-technical end-users alike. With minimal setup and an automated approach, users only need to choose an application to monitor and Jolinar will provide detailed energy measurements with minimal effort. Jolinar is available as a free open-source software for GNU/Linux systems 1 , and can monitor the energy consumption of any application.

We show how Jolinar can be used by end-users to identify energy consumption of software applications, as well as, aid software engineers profile energy usage and make energyconscious decisions. We plan to improve the usability and the relevance of provided data with additional features, such as autotype and auto-search for applications to monitor; allow Jolinar to monitor already started applications; monitor mulitple process spwaned by an application; and provide energy consumption in monetary units.

Figure 1 :

 1 Figure 1: Jolinar's energy estimation approach.

Figure 2 :

 2 Figure 2: A successful energy monitoring by Jolinar.

Figure 3 :

 3 Figure 3: Jolinar's settings view.

Figure 4 :

 4 Figure 4: Command line version of Jolinar.


Alix Vargas

Andrés Boza
email: aboza@cigip.upv.es

Llanos Cuenca
email: llcuenca@cigip.upv.es

Ioan Sacala
email: sacalaioan@yahoo.com

Inter-Enterprise Architecture and Internet of the Future

Keywords: strategic alignment, enterprise collaboration, enterprise architecture

This paper proposes the concept of Inter-Enterprise Architecture (IEA), which seeks the application of tools and methodologies developed in the Enterprise Architecture (EA) field for the individual firm, adapting to an environment of collaboration between several companies that make networks or supply chains, in order to facilitate the integration and interoperability of their collaborative processes in line with its IS/IT (Information Systems/ Information Technology) to harmonize the joint processes, reduce risk and duplication, increase service and customer responsiveness, reduce technology costs and align the joint business to IS/IT.

Introduction

The current business environment is dominated by globalization, and the biggest consequence of this effect is the increase of competition, not only between companies but also between supply chains and networks. As a result, supply chains and networks are now looking to enforce collaborative agreements, which would produce more efficient workflow, flexibility, effectiveness, agility and coordination between chain links. In order to achieve proper synchronization and organization, every chain link must be provided with sufficient information and communication technology to further facilitate their operational integration. In achieving this level of cooperation, there has been an increase in the number of publications that combines topics of strategic alignment and enterprise collaboration. To fuse these principles, current research proposes the use of enterprise engineering through utilizing enterprise architecture.

In order to explain the origin of that formulation, state of the art research has been conducted in three areas: strategic alignment, enterprise architecture, and enterprise collaboration; this has helped to identify trends in current literature, studying the models that have been presented and their relationships with one another, structuring main concepts and associated issues, analysing main ideas and common points, and identifying a large gap in the literature, due to the fact that there is currently not any documentation tying these three fields of research together. As a result of this gap, the concept of Inter-Enterprise Architecture (IEA) is proposed, using the tools and methodologies of enterprise architecture, which have been developed for the individual enterprise, but adapting them in a collaborative environment between several enterprises making up supply chains and networks. This will facilitate the collaboration and integration process between enterprises and their information and technology systems, supporting joint processes, reducing risks and redundancies, increasing customer service and responsiveness, reducing technology costs and allowing for alignment on multiple levels: joint business processes, and IS/IT. This level of integration has made the Internet vitally important to all business environments. Therefore, the link between the topics of IEA and Internet of the future is evident.

Future Internet and Internet of Things

Currently, it is well known that the Internet is used by everyone in many different ways. Over time, the Internet has become a necessity in business environments, but many SMEs cannot use it as a management and operational tool. In order for the Internet to become useful as a real universal business system used by collaborative networks, it is necessary than society research and industry work jointly and coordinately.

According to the European Commission, Internet of Things (IoT) is an integrated part of the future Internet and could be defined as a dynamic global network infrastructure with self configuring capabilities based on standard and interoperable communication protocols where physical and virtual "things" have identities, physical attributes, virtual personalities and use intelligent interfaces, and are seamlessly integrated into the information network [START_REF]FInES Cluster Position Paper. Future Internet Enterprise Systems (FInES) Cluster[END_REF].

The current research proposes that the concept of an IEA describes how an instrument assures strategic alignment between business and IT in collaborative networks. Thus, it is necessary to also understand the interactions between virtual and physical worlds. Enterprise Architecture and Modelling based on the Internet of Things makes sense because of the proliferation of cheap sensors heralded by the Internet of Things. With this kind of technology being utilized, collaborative enterprise efforts will achieve a better understanding of the joint process of allowing business decisions to be made in real time, even without direct human intervention.

Conceptualization

So far, in the context of the current research, three papers have been published that consolidate the state of the art research in three main topics: strategic alignment, enterprise collaboration and enterprise architecture [START_REF] Vargas | Lograr la alineación estratégica de negocio y las tecnologías de la información a través de Arquitecturas Empresariales: Revisión de la Literatura[END_REF][START_REF] Vargas | Towards Interoperability through Inter-enterprise Collaboration Architectures[END_REF][START_REF] Vargas | The importance of strategic alignment in enterprise collaboration[END_REF].In this section, we are going to brief the reader in a general way about the principal conclusions deduced in these papers, after a deep analysis of the literature. We invite the reader of this paper to check these papers in order to enhance their knowledge of these topics.

Conceptualization of Strategic Alignment

According to the most important elements provided for several authors, in [START_REF] Vargas | The importance of strategic alignment in enterprise collaboration[END_REF], we suggested the following definition for strategic alignment:"The strategic alignment of business and IS/IT is a dynamic and continuous process that enables integration, adjustment, consistency, understanding, synchronization and support between business strategies and strategies of IS / IT, in order to contribute and maintain the correct performance of the organization, creating a competitive advantage that is sustained over time".

The principal models in strategic alignment have been proposed for [START_REF] Henderson | Strategic alignment: Leveraging information technology for transforming organizations[END_REF] and [START_REF] Luftman | Assessing Business-IT alignment maturity[END_REF], Strategic Alignment Model (SAM) and Alignment Maturity Model (AMM), respectively. The field of strategic alignment is reinforced by SAM but their bases are theoretical and not practical. AMM, presents a practical component that SAM does not have, this model is based on the concepts that are treated conceptually in the SAM, but incorporating a practical aspect to the field of strategic alignment, proposing a model to measure the degree of maturity of the business and IS/ IT alignment, enabling the company that applied to identify, how it is, where and how to improve [START_REF] Vargas | Lograr la alineación estratégica de negocio y las tecnologías de la información a través de Arquitecturas Empresariales: Revisión de la Literatura[END_REF].

The principal elements identified in this field are: business strategy, organizational and processes infrastructure, IS infrastructure, IS / IT strategy, IT conceptualisation, maturity model alignment, applications and services portfolio, alignment heuristics, strategic dependencies model and portfolio applications [START_REF] Henderson | Strategic alignment: Leveraging information technology for transforming organizations[END_REF][START_REF] Luftman | Assessing Business-IT alignment maturity[END_REF][START_REF] Cuenca | An enterprise engineering approach for the alignment of business and information technology strategy[END_REF].

Conceptualization of Collaboration

In [START_REF] Vargas | Towards Interoperability through Inter-enterprise Collaboration Architectures[END_REF],business collaboration is defined as: "A joint process between members of the SC, where the decisions are made jointly, based on the information shared and exchanged on a bilateral form, achieving coordinate and synchronize joint activities to meet customer requirements and achieve process efficiency sets to generate a mutually beneficial".

According to [START_REF] Kilger | Collaborative Planning[END_REF], the collaboration process consists of six activities. However, this generic process has not taken a certain crucial aspect into account: the definition of how to share benefits equitably to ensure the stability of the collaboration [START_REF] Audy | A framework for an efficient implementation of logistics collaborations[END_REF]. The solution to this problem is provided by [START_REF] Stadtler | A framework for collaborative planning and state-of-the-art[END_REF], which proposed the definition of a system of compensatory payments, which may agree with the definition phase of the negotiation and exception handling and can be implemented when evaluating the results. Another previously unconsidered aspect in this generic process is the need for feedback between the parties once it has completed the process of collaboration in the stipulated horizon, which also must review the plan and modify if necessary. Thus, we proposed in [START_REF] Vargas | The importance of strategic alignment in enterprise collaboration[END_REF], the following enterprise collaboration process: 1) Definition and collaboration agreement, 2) Planning in the local domain, 3) Plan of exchange, 4) Negotiation, exception handling and compensation system, 5) Execution, 6) Measurement of results and implementation of compensation plan, and 7) Feedback and review of the plan.

Conceptualization of Enterprise Architecture

In [START_REF] Vargas | Towards Interoperability through Inter-enterprise Collaboration Architectures[END_REF], Enterprise Architecture is defined as: "A discipline that provides a set of principles, methods, models and tools used for analysis, design and redesign of a company, thus allowing to represent and document the elements that form the company (such as organizational structure, business processes, systems information and technology infrastructure) and the relations, organization and joints between these elements, allowing the company to be represented in a holistic and integrated perspective, in order to achieve the business objectives and facilitate decision-making processes"

In recent years, several researchers have proposed enterprise architectures, among which stand out: CIMOSA [START_REF]CIMOSA Primer on key concepts, purpose and business value[END_REF], GIM-GRAI [START_REF] Chen | GRAI integrated methodology and its mapping onto generic enterprise reference architecture and methodology[END_REF], PERA and GERAM [START_REF] Williams | PERA and GERAM enterprise reference architectures in enterprise integration[END_REF], IE-GIP [START_REF] Ortiz | Propuesta para el Desarrollo de Programas de Integración Empresarial en Empresas Industriales[END_REF][START_REF] Cuenca | An enterprise engineering approach for the alignment of business and information technology strategy[END_REF], TOGAF-ADM [START_REF]The Open Group[END_REF], ARDIN [START_REF] Chalmeta | ARDIN extension for virtual enterprise integration[END_REF] and ARIS [START_REF] Scheer | ARIS -Architecture of Integrated Information[END_REF].

The common elements that handle these enterprise architectures are: methodology, framework and language modeling [START_REF] Vargas | Towards Interoperability through Inter-enterprise Collaboration Architectures[END_REF].The definition of a methodology facilitates the implementation of the architecture [START_REF] Bernard | An introduction to enterprise architecture[END_REF]; the framework allows a graphic and simple structure of the elements that make up the enterprise [START_REF] Cuenca | Arquitectura de Empresa. Visión General. IX Congreso de Ingeniería de Organización[END_REF] and how these elements are related [START_REF] Bernard | An introduction to enterprise architecture[END_REF]; furthermore, modeling language allows for modeling, organization and understanding of the relationships between elements of the enterprise [START_REF] Vargas | Towards Interoperability through Inter-enterprise Collaboration Architectures[END_REF].

Research contribution

It has been crucial to prepare state of the art research in three areas: strategic alignment, enterprise architecture, and enterprise collaboration; this has helped identify trends in current literature, studying the models that have been presented and their relationships with one another, structuring main concepts and associated issues, analysing main ideas and common points, and identifying a large gap in the literature, due to the fact that there is not currently any documentation tying these three fields of research together.

As a result of this gap, the concept of Inter-Enterprise Architecture (IEA) is proposed, looking for applications of the tools and methodologies of enterprise architecture, which have been developed for the individual enterprise, but adapting them in a collaborative environment between several enterprises that make up supply chains and networks. This will facilitate integrative collaboration processes among enterprises with their information systems and technology systems, supporting joint processes, reducing risks and redundancies, increasing customer service and responsiveness, reducing technology costs and allowing for alignment on multiple levels: joint business processes, Information and Communication Technology (ICT). In Fig. 1, currently complete work is summarized, and in the spotlight, the field of intended study is represented.

The implementation of an IEA is part of establishing a set of arch guidelines that ensure comprehensive development between models and inter enterprise needs, with joint business processes and ICT. This set of ICT strategic guidelines must be based on joint strategic planning and corporate recognition of business strategies and activities that support such planning. These guidelines will also be responsible for organizations and technologies required to support joint operations and processes for implementing new technologies in response to changing needs and jointly involved organizations.

The importance of the IEA resides ultimately in its utility for the joint organization, which will remain there joint strategic planning, changes in vital business processes, or changes in ICT that support vital processes. Fig. 2 describes the main conceptual elements of an IEA. the collaborative proce between network partners minimum of seven activities identified as vital. If the join to take advantage of that collaborat organization in an alignment process, tak alignment model (SAM) organization, where joint business and IT integration, and the external and internal elements of business and IT have to have a strategic fit. To achieve this alignment, enterprise architecture language modelling.

Inter-Enterprise Architecture and Internet of the Future

The implementation of an IEA is part of establishing a set of arch guidelines that ensure comprehensive development between models and inter enterprise needs, with joint business processes and ICT. This set of ICT strategic guidelines must be based on joint strategic planning and corporate recognition of s strategies and activities that support such planning. These guidelines will also be responsible for spawning necessary information for the joint operation of organizations and technologies required to support joint operations and processes for ng new technologies in response to changing needs and jointly involved

Fig. 1. Origin of the IEA concept

The importance of the IEA resides ultimately in its utility for the joint organization, there as long as it will be updated every time there are changes in joint strategic planning, changes in vital business processes, or changes in ICT that support vital processes. Fig. 2 describes the main conceptual elements of an IEA. The core of the IEA is the collaborative process (CP), which is triggered by the necessity of collaboration between network partners. As a result, the collaborative process begins following seven activities identified as vital. If the joint organization really wants to take advantage of that collaborative process, then it is necessary to involve the join alignment process, taking into account the elements of the strategic alignment model (SAM).Thus, it is also important to adapt these to a collaborative organization, where joint business and IT dimensions have to have a clear functional integration, and the external and internal elements of business and IT have to have a To achieve this alignment, it is necessary to enforce the utilization of enterprise architecture and its main elements (EEA): methodology, framework and Enterprise Architecture and Internet of the Future 29

The implementation of an IEA is part of establishing a set of architectural guidelines that ensure comprehensive development between models and interenterprise needs, with joint business processes and ICT. This set of ICT strategic guidelines must be based on joint strategic planning and corporate recognition of s strategies and activities that support such planning. These guidelines will necessary information for the joint operation of organizations and technologies required to support joint operations and processes for ng new technologies in response to changing needs and jointly involved

The importance of the IEA resides ultimately in its utility for the joint organization, changes in joint strategic planning, changes in vital business processes, or changes in ICT that The core of the IEA is which is triggered by the necessity of collaboration e process begins following a organization really wants involve the joint the strategic o adapt these to a collaborative ions have to have a clear functional integration, and the external and internal elements of business and IT have to have a ssary to enforce the utilization of : methodology, framework and On the other hand, it is evident that technology plays a crucial role in this conceptual model. It has been discussed of technology as Internet of Things or Web of Services enable collaborative networks accuracy and effectiveness According to the European Commission, in 2025, the Internet will become entirely universal in all business environments, and new business models will be designed to support competition and enterprise the future based on enterprise systems". Th [FInES] involves the following basic pillars: Internet of Things (IoT), Internet of Services (IoS), Internet of People (Io

Critical view

The fields of enterprise collaboration, strategic alignment and en have made significant progress in the last years in terms of research and applications in the industry. More recently complementary way. C order to extract the main elements al.

other hand, it is evident that technology plays a crucial role in this conceptual model. It has been discussed in previous paragraphs through the utilization of technology as Internet of Things or Web of Services. Therefore it is possible to enable collaborative networks to make decisions in real time, allowing agility, effectiveness in the joint processes.

Fig. 2. Conceptual model of IEA

According to the European Commission, in 2025, the Internet will become entirely universal in all business environments, and new business models will be designed to support competition and enterprise collaboration. This trend is known as "internet of the future based on enterprise systems". The Future Internet networked enterprises the following basic pillars: Internet of Things (IoT), Internet of Services (IoS), Internet of People (IoP), Internet of Knowledge (IoK) [START_REF] Burlacu | Development of a Modeling Framework for Future Internet Enterprise Systems[END_REF].

The fields of enterprise collaboration, strategic alignment and enterprise architecture significant progress in the last years in terms of research and applications recently, each one of these fields is seeking to collaborate Current research proposes the fusion of these three fields in extract the main elements that give origin to the concept of IEA. D other hand, it is evident that technology plays a crucial role in this in previous paragraphs through the utilization it is possible to decisions in real time, allowing agility, According to the European Commission, in 2025, the Internet will become entirely universal in all business environments, and new business models will be designed to collaboration. This trend is known as "internet of e Future Internet networked enterprises the following basic pillars: Internet of Things (IoT), Internet of terprise architecture significant progress in the last years in terms of research and applications collaborate in a urrent research proposes the fusion of these three fields in origin to the concept of IEA. Due to the existence of different perspectives in the literature, this research is looking to contribute to existing research with a more theoretical foundation.

Conclusions and further work

In order to fuse and implement the principles of collaboration and strategic alignment, we propose the use of enterprise engineering through the use of enterprise architectures. Enterprise architectures are tools that provide business concepts, models and tools that enable the integration of the elements that comprise it. The supply chains or networks are a set of related companies where the principles of enterprise architectures can be extended to this type of collaborative organizations.

In relation to research that combines the use of strategic alignment, business collaboration and enterprise architectures, there are no references found that take into simultaneous account these three fields of knowledge, but there are only articles that deal with different ways to combine two of these three disciplines.

The line of research that arises from this analysis is to make a proposal for interenterprise architecture in the context of collaborative networks based in Internet of the future, looking to achieve a real strategic alignment between joint business and joint information technology. This line approaches and combines the three disciplines analysed: enterprise architecture, strategic alignment and business collaboration.

We want to continue working in this line of research seeking a proposal in future papers of a Reference Architecture for Collaborative Networks based in Future Internet.