RoCA is a graphical tool to model IT infrastructures. It uses ontologies and Markov Logic Networks (MLN) as internal representation. Based on the modeled infrastructure and provided evidence about available and unavailable components it conducts a root cause analysis, calculating the most probable underlying source of the observed unavailabilities. RoCA is the result of the project Development of a risk management tool for complex technical systems.
RoCA translates the modeled infrastructure into a special MLN for abductive reasoning (inference to the best explanation). To find the root cause RoCA calculates the MAP state of the MLN. We use RockIt as MLN solver.
RoCA requires the following software to be installed to run:
- Java Runtime Environment (JRE) 1.8
- Gurobi (free academic license available)
- MySQL
Needed by RockIt. By default, it uses the following user account:
sql_username = root
sql_password = mannheim1234
You can verify from the console that all environment variables are set correctly:
- Run the command
java -version
. The first line should show something likejava version "1.8.0_XX"
. - Run
echo %PATH%
(Windows) orecho $PATH
(Linux). The output must contain thebin
folder of your Gurobi installation (and the path to the JRE 1.8). - Run
echo %GUROBI_HOME%
orecho $GUROBI_HOME
. It should point to root of your Gurobi installation.
A binary to run RoCA can be downloaded here.
To start the GUI either double-click on the JAR-file or execute the command java -jar roca-XXX.jar
from a console in the folder where you put the binary.
RoCA comes with a default MLN and a default background ontology to get you started. After starting the application an empty model is presented. You can either load information about your infrastructure from an MLN evidence file or an ontology, or start from scratch. When your model is finished and contains all necessary or available information, you can start RockIt to run the root cause analysis.
Evidence can be loaded form the menu Root Cause Analysis with the menu point Load Evidence....
After selecting a file and loading it, the graph of the model is displayed an can than be edited.
You can edit the model by either drag&drop of new elements from the palette on the left side, or draw new edges between already placed components. RoCA automatically determines the type of an edge (dependsOn between components, hasRiskDegree between a components and risks). By double-clicking on a component or an edge you can edit its properties: name and state for componentes, and weight for relations.
The root cause analyis can also be started from the menu. A dialog is shown that updates with the current progress.
When the root cause analysis is finished, a popup with the proposed most probable cause is displayed.
- Schoenfisch, J., von Stülpnagel, J., Ortmann, J., Meilicke, C., Stuckenschmidt, H.: Root Cause Analysis through Abduction in Markov Logic Networks, 2015, to appear
This work has been partially supported by the German Federal Ministry of Economics and Technology (BMWI) in the framework of the Central Innovation Program SME (Zentrales Innovationsprogramm Mittelstand - ZIM) within the project "Risk management tool for complex IT infrastructures".