
TimeMeasureEnd вместе с TimeMeasureStart составляет пару объектов, позволяющую измерять время, проведенное заявками между двумя точками диаграммы процесса. Обычно с их помощью измеряется время нахождения заявки в системе или длительность пребывания заявки в каком-то подпроцессе.
TimeMeasureStart задает начальную точку, он запоминает момент времени, в который заявка проходит через этот объект.
TimeMeasureEnd вычисляет для каждой поступившей в него заявки разность между текущим моментом времени и моментом, запомненным объектом TimeMeasureStart, на который ссылается этот объект. Эта разность добавляется во встроенные в объект TimeMeasureEnd элементы сбора статистики. Вся операция выполняется в течение нулевого времени – как только заявка входит в объект TimeMeasureEnd, она тут же покидает его.
Статистика собирается в два объекта - в одном подсчитывается распределение измеренных времен (элемент "данные гистограммы" distribution). Эта статистика может использоваться, в частности, для построения гистограмм. Второй элемент данных - набор данных dataset. Его значения удобно отображать, например, на временном графике.
В одной диаграмме процесса может быть несколько объектов TimeMeasureEnd, каждый из которых может ссылаться сразу на несколько объектов TimeMeasureStart. Это позволяет легко подсчитывать время пребывания заявки в системе, заданной разветвленной диаграммой процесса со множеством источников заявок и объектов, поглощающих заявки.
Демонстрационная модель: Measuring Length of Stay
void resetStats() - удаляет статистику, собранную объектом к текущему моменту времени, в элементах сбора данных dataset и distribution.