Keywords

1 Introduction

Many techniques have been proposed to trace the possible failures in embedded systems. The Fault Tree Analysis (FTA) [3] and the Component Fault Tree (CFT) [5] are amongst the most usage techniques. These both mentioned techniques enable safety experts (who are responsible for detecting the failures) to model the possible failure and to trace the failure dependencies between the system components. The resulting fault tree representations model some possible failure scenarios in the system at certain times. However, in order to use such representations system engineers (who are responsible for maintaining all the system components) should be able to understand it and map it with the actual system structures. The collaboration between safety experts and system engineers is important in order to analyze the system behavior and to eliminate the possible critical situations during the system life [1]. However, this collaboration faces several challenges, e.g., the divergence between the interested perspectives. Further, there is a variation in data representations for both groups, e.g., the hardware model of the underlying system (normally used by system engineers) is mostly represented as a 3D data type while the safety scenario (normally used by safety experts) is mostly modeled as a fault tree and is considered to be an abstract data type, which can easily be represented as a 2D graph representation.

In order to fill the above-mentioned gap, we propose a hybrid solution, called the SceneMan (Scene Manager) platform, to visualize the two data types in a 2Dplus3D world, such that the 2D graph representation is available to visualize the abstract fault tree structure while the 3D part is used to visualize the system hardware model. Further, we propose to visualize this 2Dplus3D world using the stereoscopic displays such that the stereoscopic depth is utilized to encode some aspects about the nodes (e.g., to encode the structural relations) in the graph representation. In this case, the depth is used together with other visual cues to encode or convey some data aspects.

2 The SceneMan Platform

In Fig. 1, we show the overall hybrid approach behind the SceneMan platform. SceneMan is responsible for integrating the system 3D view with the graph representation of the abstract data. For this, it combines and synchronizes the system 3D view together with the abstract graph 2D view for creating a 2Dplus3D environment. It supports these views’ alignment in order to respect each other in the 3D world (see Fig. 2). It also gives the viewers the ability to control the positions of each view for getting more insight about the underlying data.

Fig. 1.
figure 1

The mapping operation in the SceneMan hybrid approach

Fig. 2.
figure 2

An integrated Layered view showing the correlation between the two views (i.e., the 2D abstract view and the system 3D model view) using the stack metaphor.

SceneMan offers different interaction techniques for interacting with each view individually without distorting the other view. This is achieved through the scene-graph concept. In this case, the root node represents the whole 3D space containing all the views while children of this root are the 2D abstract view using the graph representation of the component fault tree and the 3D model view of the system.

In order to minimize the occlusion effects, elements in the 3D space are arranged together especially when the size of any of the two views is changed. For this, the size of non-focused view is adapted consequently to guarantee a readability increment of the current focused view. The initial side-by-side configuration is changed when the viewer starts interacting with the 3D space. For example, both views can be arranged into a layered view where these views are stacked above each other, as shown in Fig. 2. In this case, the depth cue is used to show the importance degree of the view Moreover, viewers can also get more focus on the top-view by increasing the distance in depth between it and the lower view. Additionally, SceneMan provides the facility to adjust the size of the view based on the degree of interest in the required view.

3 Utilizing the Stereoscopic Depth

SceneMan visualizes the safety aspects of embedded systems using the compound graph representation, where these graphs represent the fault tree models to describe the possible critical situations. Because these models represent abstract non-spatial data; therefore, SceneMan visualizes them using 2D representations, as it is commonly accepted visual representation approach for this data type. However, in order to integrate it with the 3D environment of the platform, we designed it in a way that bridges the representation gap between the two data types. This is achieved by rendering the overall system in a stereoscopic platform, where the stereoscopic depth is used to encode some aspects about the nodes in the graph representation.

Based on our knowledge, this is the first approach that integrates between the 2D representations and the 3D technologies through encoding structural relations in compound graphs using the stereoscopic depth cue. SceneMan visualizes compound graphs using multi-level graph layout algorithms. In this context, it provides different levels of details inside the graph structure. For example, in Fig. 3 all the nodes are clustered in the initial view; however, they can be explored using the expanding and the contracting operations of the CluE algorithm [2] used inside the SceneMan. Once any compound node is expanded, a new level of details is shown up containing the expanded node’s internal structure. This level is visualized using a new plane that is created closer to the viewer than the remaining graph parts that are not explored yet. The children of the expanded node are positioned in a depth value closer to the viewer than the other graph parts. This approach produces a layered graph representation. However, due to the stereoscopic effect these elements look sharper than the remaining graph parts, which gives a natural focus + context interaction technique, i.e., the closer elements are in focus while the unexplored parts are in the background of the scene to keep the context of the whole graph structure.

Fig. 3.
figure 3

(a) The initial compound graph, (b) the front view after expansion of two nested compound nodes; and (c) the side view of (b).

Additionally, SceneMan allows changing interactively other graph settings, e.g., the transparency of the depth layers in which the further layers look more transparent than the closer layers in the 3D world. The transparency effect was added as it was proposed by Eades and Feng [4] to show the hierarchical relations of clustered graphs. This parameter is useful in decreasing the occlusion ratio between the different visual objects at different depth layers. Naturally, this increases the emphasis to the closer objects reside in the closer layers.

In the future, we intend to evaluate our system with users from different background as well as to evaluate it in other 3D platforms like CAVE systems or power-wall screens.