This repository is a supplementary branch to the main SimuBridge project. It contains the source code for the web application that is the heart piece of the project. Please refer to the SimuBridge project root repository for overall project documentation.
This project focuses on sustainability related information on SimuBridge. The extensions made allows users to assign abstract environmental cost drivers to specific activities, and further refine these into concrete cost drivers for accurate impact assessment. The platform facilitates a deeper understanding of the environmental implications of different operational choices, providing valuable insights for sustainable decision-making. To this end, it communicates with the sustainability database software openLCA and the business process simulation engine Scylla using a tailored plugin.
Have a look at the demo folder for a little demonstration how the extension works.
The fastest way to setup the system is to use the provided docker-compose
file provided with this repository - no git checkout needed. As a prerequisite, Docker needs to be installed
To do so, first download the docker-compose.yml.
Then run the following command in the folder where you downloaded the compose file:
docker-compose -f docker-compose.yml up
This will set-up SimuBridge as well as Scylla (including the necessary plugins) and the Simod simulation model discovery tool.
To install openLCA, go to https://www.openlca.org/download/ and download and run the respective installer.
Download the demo data we provide at ./demo/LCA/demo_dataset.zolca
and import into openLCA via File > Import > File > demo_dataset.zolca
. Open the demo database by double-clicking on it. Start the IPC server of openLCA by clicking Tools > Developer tools > IPC Server
, entering port 8081
and clicking run
. Open SimuBridge in the browser at http://localhost:3000
and select the OpenLCA Integration
menu entry. Click Fetch Impact Methods
, select an impact method such as ReCiPe 2016 Endpoint (H)
and click Calculate
. Proceed to configure the simulation scenario and environmental cost variants. The demo
folder of this repository provides three sample process models and event logs you can use to test out the main functionalities of the SOPA-SimuBridge integration.
This extension adds and extends multiple pages to the basic SimuBridge UI.
Configure LCA with host and port for a flexible data fetching. Note that the availability of LCA data and impact calculation methods is determined by the database loaded into openLCA.
Assign abstract cost drivers to activities within your process model in model based parameters panel.
Use this panel to map abstract cost drivers to concrete cost drivers from dropdown menus. Configure the frequency of cost variants to simulate the process instances and calculate the overall environmental impact.
Shows a comparison of the environmental impact score of previously run scenarios.
This repository adds the following components and logic classes to the base SimuBridge project:
Lca/
├── Components/
│ ├── BasicSpinner.jsx
│ ├── FormattedConcreteDriver.jsx
│ ├── LcaIntegration.jsx
│ ├── LcaVariantsConfiguration.jsx
│ ├── OlcaConnectionAlert.jsx
│ └── VariantEditor.jsx
└── Logic/
├── LcaDataManager.js
├── LcaIntegrationUtils.js
└── OpenLcaConnector.js
BasicSpinner.jsx
: Auxiliary React component for the loading spinner.FormattedConcreteDriver.jsx
: Component to display formatted data of concrete cost drivers.LcaIntegration.jsx
: Interface for configuring external LCA data integration.LcaVariantsConfiguration.jsx
: Manages the mapping of abstract and concrete cost drivers for variants.VariantEditor.jsx
: UI component for creating or editing variants.OlcaConnectionAlert.jsx
: Notifies about the OpenLCA connection status.
LcaDataManager.js
: Manages app data storage.LcaIntegrationUtils.js
: Handles requests to external LCA systems.OpenLcaConnector.js
: Specialized connector for OpenLCA software integration.