This project was a KTH assignment for Modern Methods of Software Engineering. It models the workflow of an imaginary event-planning company "SEP". Specifically, it shows the basic workflows of
- Customer service officers, taking bookings ("event request applications") from a client
- Senior customer sevice officers and administration manager that approve the event bookings
- Financial managers that
- approves these bookings
- approves budget requests
- Staff managers, that
- creates budget requests
- create subteam tasks
- create staff requests
- HR managers that view staff requests
-
Install Python 3.7.4
-
Setup virtual environment in folder venv/
cd path/to/project python3 -m venv venv
-
Start using python distribution of venv
source bin/activate
Check which python/pip is being used by doing
which pip # or which python
-
Install all requirements into venv
pip install -r requirements.txt
In case a new database should be used, be sure to initialize it properly:
-
Execute migrations
python manage.py migrate
-
Initialize data
python manage.py shell_plus < sep/create_user_groups.py
This could have been done better by writing the file into migrations.
shell_plus
is part of django-extensions which executes a Python shell that uses the Django Project as a environment. A super user would have to be created manually however. See Django Docs for that.
Running this project will be fairly straightfoward.
-
Start project (using python from /venv)
python manage.py runserver 0:8001
-
Visit localhost:8001/sep/home
-
Login with
Username | Password |
---|---|
sep_superuser | abc123 |
customer_service_officer_1 | abc123 |
senior_customer_service_officer_1 | abc123 |
financial_manager_1 | abc123 |
production_manager_1 | abc123 |
service_manager_1 | abc123 |
administration_manager_1 | abc123 |
hr_manager_1 | abc123 |