This service was created as a result of the OpenReq project funded by the European Union Horizon 2020 Research and Innovation programme under grant agreement No 732463. This project uses the Connexion library on top of Flask.
This group-based recommendation service accepts and analyzes a set of requirement ratings and individual stakeholder preferences within a requirements project. For every requirement, the service detects (rating) conflicts (i.e., conflicts of opinions and rating dissents) and computes a utility value reflecting the appropriateness of the stakeholders for the requirement by considering the relevance of the requirements for the individual stakeholders as well as the availability of these stakeholders. The stakeholders with the highest utility values are recommended as potential candidates to be assigned to the requirements.
This service requires Python 3.7.0+
- Docker (-> https://www.docker.com/)
- Flask Connexion (-> /~https://github.com/zalando/connexion/)
- python-dateutil (-> https://pypi.org/project/python-dateutil/)
- Flask (-> /~https://github.com/pallets/flask/)
- NLTK (-> /~https://github.com/nltk/nltk/)
- Werkzeug (-> http://werkzeug.pocoo.org/)
- Setuptools (-> https://pypi.org/project/setuptools/)
To run the server and to install all dependencies, please execute the following commands from the project root directory:
pip3 install -r requirements.txt
python3 -m application
To launch the integration tests, use tox:
sudo pip install tox
tox
To run the server on a Docker container, please execute the following commands from the project root directory:
# building the image
docker build -t application .
# starting up a container
docker run -p 9008:9008 application
Once the server is running, open your browser and call the following URL to see the API documentation:
http://217.172.12.199:9008/v1/ui/
The Swagger definition lives here:
http://217.172.12.199:9008/v1/swagger.json
None.
None.
See OpenReq project contribution Guidlines
Free use of this software is granted under the terms of the EPL version 2 (EPL2.0).