Black0wL / nephro-planner

Automatically exported from code.google.com/p/nephro-planner
0 stars 0 forks source link

[General] Planning Management #3

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Purpose is to build a modelisation of a one-month planning that:
    - PK:
        - month ("DATE" NOT NULL)
        - version (INTEGER NOT NULL, auto-increment: +1, seed: 0)
    - uses instances of work timeslots template to generate a genuine model of the current month's activities planning ()
    - that bears all the necessary logic to split nephrologists into timeslots according to their current activity counters, and with respect to their actual "efforts" weight balance (best-effort, load balancing-like algorithm)
    - fields:
        - isReleasedVersion ("BOOLEAN" NOT NULL): whether this planning instance is the one released to the nephrology department (Note: an unicity has to be programmatically maintained on [month, isReleasedVersion=1])
        - nephrologistsCounters: retains the counters of each nephrologist involved in current month's planning

Behavioural definition:
The load balancing algorithm uses the aggregated results of "effort weights" 
counters of all previous one-month plannings that have isReleasedVersion=1:
    - if no previous one-month planning is found, starts from scratch (initialization process)
    - it does not need a continuous one-month plannings chain in the past:
        - either some months previous to the current specific one have no one-month plannings version.
        - either or no one-month planning that has ever been released.

Original issue reported on code.google.com by christop...@gmail.com on 7 Nov 2014 at 2:31

GoogleCodeExporter commented 9 years ago
http://labix.org/python-constraint
It is urgent to switch to a real constraint solving programming approach...

Original comment by christop...@gmail.com on 2 Dec 2014 at 1:02