Operationalizing Human Values in the Requirements Engineering Process of Ethics-Aware Autonomous Systems
This fork extends the original LEGOS-SLEEC tool with support for fluents to enable better traceability between SLEEC rules and goal models. These extensions were introduced starting from commit c12d922.
Fluents represent temporal states derived from goal models. A fluent defines a state that:
- Begins when a starting event occurs
- Ends when any of the terminating events occur
fluent <name><{starting_event},{terminating_event1,terminating_event2,...}>
def_start
event StartTrackVitalSigns
event AchievedTrackVitalSigns
fluent TrackVitalSigns <{StartTrackVitalSigns},{AchievedTrackVitalSigns}>
def_end
In this example, the TrackVitalSigns fluent:
- Begins when
StartTrackVitalSignsoccurs - Ends when
AchievedTrackVitalSignsoccurs
When LEGOS-SLEEC-XT detects conflicts between rules, it now automatically traces conflicts back to fluents. If conflicting events are part of fluent definitions (either as starting or terminating events), the tool reports:
- Which fluents are involved in the conflict
- How the conflicting rules relate to goal-level state transitions
This enhancement provides better traceability from low-level rule conflicts to high-level goal model constructs, helping developers understand the root cause of conflicts in terms of the goal model design.
-
Python 3.5 and later
-
z3-solver with python binding:
pip install z3-solverorpip3 install z3-solver -
pysmt:
pip install pysmtorpip3 install pysmt -
pip install ordered-set -
pip install textx -
pip install idle
python3 sleecFrontEnd.py
At this point, an UI window should have popped up. Edit the text in the window to customize your SLEEC rules
The goal-controller repository contains goal-controller, a tool under active development that supports the generation of SLEEC runtime rule specifications from SLEEC-compliant Goal Models.
The primary objective of this project is to enable the systematic derivation of runtime rule designs from high-level goal models, facilitating a structured transition from goal-oriented specifications to SLEEC rule definitions.
By deriving SLEEC rule structures directly from Goal Models, the approach helps reduce manual translation effort, improve consistency between modeling layers, and strengthen traceability between goals and their associated runtime control rules.
A demo is available at: goal-controller-engine
You can the use demo goal model as an example for the demo
Manoel Vieira Coelho Neto
Everaldo Silva Júnior
Caio Otávio Peluti Alencar
Dr. Genaína Nunes Rodrigues
