Article below describes the logic of a disruption report.
One has to define disruption rules
Disruption rule determines when change in crew roster is perceived as a disruption.
Name: self-explanatory
Shortcode: self-explanatory
From: Roster filter that filters out roster activities from the previous version of roster
To: Roster filter that filters out roster activities from succeeding version of roster
Diff Type: defines event by which changes in different versions of roster are calculated; one could choose check-in time (CI), check-out time (CO), both check-in and check-out (CICO), duty start (DS) that is useful when the rule is related to reference activities. Last value is ignore when time event is not relevant.
Diff value: specifies the tolerance in minutes - if time of roster event (i.e. check-in time) is changed by more than this value in succeeding roster - that would qualify this change as a disruption. When diff type is set to ignore - diff value is not taken into account.
Time span: specifies the time in days - how long before the time of roster event (i.e. check-in time) can the roster be changed in order to avoid disruption. If roster is changed shorter ahead of its actual occurence - that would qualify this change as a disruption
Active: self-explanatory
Valid From: self-explanatory
Valid To: self-explanatory
Let's analyze simple scenario, where one of flight-related roster activities was changed by the planner. It will be analyzed against the rule presented above.
Final outcome: there was no disruption on that day for this crew.
Algorithm:
This kind of assessment is performed for every crew chosen (or all crew that fall into the crew filter) for every day within the range. Such day-crew "cells" are analysed against every active and period-valid rule. If one rule is violated for that "cell" - further processing is stopped and algorithm is proceeding to the next one.
Final report will contain disruption occurences per crew as well as some basic statistics.
|