-
Notifications
You must be signed in to change notification settings - Fork 4
How to deploy the Strategic Dashboard
Q-Rapids Dashboard is a web application developed in Java. Some data is stored in a PostgreSQL database and some in an Elasticsearch Cluster. It is composed by 4 components:
- qrapids-dasboard: web application providing all the functionality to the final user
- qrapids-si_assessment-rest: RESTful service providing strategic indicators assessment using Bayesian Networks instead of an average
- qrapids-forecast-rest: RESTful service prodiding prediction functionality
- qrapids-backlog-XXX: RESTful services to export the quality requirements to the specific tools that manage the backlog. For instance qrapids-backlog-openproject is used if the backlog is managed in _OpenProject _or qrapids-backlog-jira if the backlog is managed in Jira.
The requisites to deploy Q-Rapids Dashboard are:
- A web server, e.g. Tomcat
- Oracle Java JRE
- PostgreSQL, an open source object-relational database system. The information that you are going to need to configure the connection to the database is: URL and PORT where PostgreSQL is accessible, username, and password
- Elastic Search
- R Server
- PABRE RESTful service (available at https://github.com/OpenReqEU/requirement-patterns). Please, follow the instructions shown at section "Running the project with pabre-ws.war" in the README.md to correctly deploy PABRE.
The data is ingested and analysed by the following components
- Q-Rapids Source Data Connectors (qrapids-connect)
- Q-Rapids Data Analysis component (qrapids-eval)
The quality alerts are generated by
- Q-Rapids quality alerts component (qrapids-alert)
The installation package should contain 4 war files and one text file containing some R scripts:
- qrapids-dashboard-X.Y.X.war
- qrapids-forescast-rest-X.Y.X.war
- qrapids-si_assessment-X.Y.X.war
- TimeSeriesFunctions-X.Y.X.R
The corresponding qrapids-backlog-XXX.war (if need) is available in the corresponding repository.
- Deploy qrapids-si_assessment-X.Y.X.war in your Web Server
- Deploy qrapids-forescast-rest-X.Y.X.war in your Web Server
- Copy TimeSeriesFunctions-X.Y.X.R to a accesible folder (RSCRIP_FOLDER)
- Configure forecasting
Rserve.host=<RSERVER IP>
Rserve.port=<RSERVER PORT>
Rscripts.location=<RSCRIP_FOLDER>/TimeSeriesFunctions-X.Y.X.R - Installing some R packages, from an R console
>install.packages("Rserve")
>install.packages("forecast")
>install.packages("elastic")
>install.packages("prophet")
>install.packages("forecastHybrid")
The Rserve is already prepared to be run:
> library(Rserve)
> Rserve()
By default, Rserve will start the server listening on the 6311 port. You can change it if you prefer to use another port with the parameter “port”:
>Rserve(port=6312)
- Deploy the corresponding qrapids-backlog-XXX.war in your Web Server
- Create a database in the PostgreSQL database system:
CREATE DATABASE qrdashboard; - Deploy the qrapids-dashboard-X.Y.X.war in your Web Server
- Configure the dashboard. Details about the dashboard configuration are in Dashboard Configuration file
Check if you have the indexes for each product you have configured for the qrapids-eval. If the strategic_indicators indexes are missing, you must create them manually with the following statement:
PUT strategic_indicators.default
{
"aliases": {},
"mappings": {
"strategic_indicators": {
"properties": {
"datasource": {
"type": "keyword"
},
"description": {
"type": "text"
},
"evaluationDate": {
"type": "date"
},
"strategic_indicator":{
"type": "keyword"
},
"name": {
"type": "keyword"
},
"project": {
"type": "keyword"
},
"value": {
"type": "double"
}
}
}
}
}
Detailed information aobut the Elasticsearch indexes accessed by the dashboard in Elasticsearch Indexes
This component has been created as a result of the Q-Rapids project funded by the European Union Horizon 2020 Research and Innovation programme under grant agreement No 732253.