Петька, ну как? Сдал экзамен?
Нет, Василий Иванович! Меня попросили квадратный трехчлен разложить. А я его не то что разложить, я его представить не могу!
Постановка вопроса
При моделировании предметной области и описании реализации мы часто используем термин событие. Однако, насколько мне известно, мало кто понимает смысл этого термина и может четко дать определение этого термина. Кроме того, часто путают событие, тип событий и класс событий.
Посмотрите на диаграмму. На ней кружочками что-то изображено. В нотации BPMN это что-то называется «Событие». Но что есть само событие? И почему операция по отправке сообщения в одном случае обозначено как событие, а в другом как операция?
Чем ИСО 15926 мне не понравился
В прошлых статьях я давал определения физического объекта.
Физический объект — это любое подмножество 4-Д пространства-времени.
Кроме того, я давал определения функционального и информационного объектов.
Физический и информационный объекты — это физические объекты в 4-Д пространстве-времени, которые с точки зрения наблюдателя выполняют определенные функции, или служат определенным целям.
Например, физический объект железяка, которая существует в пространстве-времени, может для одного субъекта служить монтировкой, для другого – отверткой, для третьего – молотком, а для четвертого – символом освобождения от рабства. Также я отметил, что объект и операция – суть одно и то же с точки зрения пространства-времени. Это равенство позволяет нам описывать операции как объекты 4-Д пространства- времени. Этот вывод я заимствовал из стандарта ИСО 15926, предназначенного для описания производственных процессов нефтегазовой отрасли. Однако, те, кто участвовал в разработке стандарта, схватили половину идеи, но не уловили вторую ее половину.
На рисунке изображено все пространство–время. Любое подмножество этого пространства – есть 4-Д физический объект (железяка), который в свою очередь, в глазах субъектов может исполнять множество функций (гвоздодер, молоток, лом), или быть самими функциями: выдрать гвоздь, подрихтовать капот и так далее.
Но они не смогли понять, что физический 4-Д объект может быть и физическим событием, которое может быть трактовано разными субъектами по-разному, то есть физический объект есть физическое событие, которое, в свою очередь, имеет связь со множеством функциональных событий.
Например, 4-Д объект «Куликовская битва» может рассматриваться как физическое событие, с которым связаны два функциональных события: победа и поражение. То есть, один физический объект (много потных тел в одном месте), который рассказчик описывает как функциональное событие (победа или поражение в зависимости от предпочтений рассказчика).
В ИСО 159126 же под событием понимается 3-Д объект, — некая абстракция, которую можно представить себе, как замороженное время. Неправильная трактовка этого термина в стандарте ИСО 15926 породило множество проблем. Например, невозможность использования стандарта в других областях знаний, например, при описании активности предприятия.
В этой статье я подробно опишу смысл термина событие в терминах 4-Д пространства-времени.
Подчеркиваю, что я использую термин активность, а не деятельности, как сейчас принято говорить. Термин деятельность относится к психическим функциям человека и не имеет ничего общего с описание активности объектов, в том числе и предприятий.
Все встало ясно. Тела не состоят из точек, а точки — это лишь абстракция. И все разговоры о том, что мир состоит из бесчисленного количества точек – бессмысленны. Знание этого пригодится нам для того, чтобы ввести понятие события.
Точка зрения философов
Многие философы говорят так: есть трехмерные объекты и есть их свойства. И, что трехмерные объекты проявляют свои свойства лишь во времени. То есть, время – это возможность трехмерным объектам проявить себя. Вот такая картина получается:
Попробуйте ее проанализировать так, как анализируете любую другую предметную область. Не получится, потому что свойство объекта проявлять себя во времени – это описание нашего психического переживания сущего. Описывать сущее в терминах наших переживаний – это задача гуманитариев. Задача же инженеров – создать такую модель реальности, которую можно использовать с практической целью – построение моделей определенных предметных областей (предприятий, технологических процессов и так далее).
Еще раз про ИСО 15926
Давайте изменим свое отношение ко времени и приравняем его к остальным координатам. Эта точка зрения позволит нам обращаться с четырехмерными объектами так, как мы обращаемся с трехмерными. Это позволит применить теорию множеств к объектам реального мира и в итоге решить вполне прагматичную задачу – описать архитектуру предприятия и наладить планирование и учет без специальных костылей, к которым мы вынуждены сейчас прибегать. Один из таких костылей – это вынужденная уверенность многих аналитиков в том, что есть правильная точка зрения и остальные. Эта уверенность берется из того, что аналитику трудно описывать различные проекции 4-х мерных объектов на трехмерные плоскости в терминах психических переживаний. Даже, я бы сказал, невозможно, потому что для этого надо обладать не дюжим воображением. Я пробовал это делать – задача не из легких! Однако, приняв существование 4-Д пространства, все очень сильно упрощается.
Именно так и поступили разработчики стандарта ИСО 15926. Этот стандарт показывает насколько важно уметь принять оптимальную точку зрения на исследуемые области. Не подходит одна, можно применить другую. В терминах 4-х мерного пространства-времени становится понятна задача, которую надо решить, и понятны ограничения этой задачи. Задача состоит в проектировании требуемых заказчиком 4-Д объектов. А ограничения задачи – наличие самой модели.
Способы описания трехмерных объектов и их смысл.
Как мы описываем трехмерные объекты? Способов описания много. Без доказательств и пояснений приведу картинку:
В качестве опоры для описания трехмерных объектов мы используем поверхности. Это то, что мы можем себе представить, потому что наши органы чувств способны воспринимать поверхности, но не объемы. (Разговор на эту тему – отдельная задача). Как мы представляем себе поверхность? Как поверхность, которая разделяет две разных среды. Например, плоскость пирамиды – это поверхность, которая разделяет камень и воздух. И тут же мы сталкиваемся с обобщением – поверхность неровная, имеющая достаточно большую толщину. И тем не менее, мы говорим о плоскости. Потому что для наших целей мы можем пренебречь неровностями и толщиной. В точности, как говорил Колмогоров (см. Лирическое отступление). Конечно, это не значит, что мы будем делать теперь это вечно. В нужный момент мы детализируем наше представление о плоскости пирамиды. Итак, поверхностью можно считать некий объем пространства (объект), который с точки зрения моделирования можно представить себе как объект, не имеющий толщины. Что такое линия? Линией можно назвать пересечение поверхностей. Таким образом, линия – это некий объем пространства (объект), который с точки зрения моделирования не имеет ширины и высоты, а имеет только длину. Хорошо, а точка тогда — это объект, размерами которого с точки зрения моделирования можно пренебречь. Например, точка- это пересечение нескольких плоскостей – вершина пирамиды. Понятно, что вершина имеет имеет некий объем, но в целях моделирования мы пренебрегли этим объемом.
Определение события
Рассмотрим вершину пирамиды с точки зрения 4-д пространства-времени. В этом пространстве вершина пирамиды существует не только в пространстве, но и во во времени. Во времени вершина представляет из себя линию. Поэтому то, что мы привыкли называть точкой, в 4-Д пространстве-времени есть линия! Эта линия — траектория движения вершины. Таким образом, первой находкой, которую мы нашли в 4-Д пространстве-времени стала траектория!
Грань пирамиды – это трехмерный объем в пространстве-времени. А сама пирамида – это четырехмерный объем в пространстве-времени. Такая позиция позволит нам ввести определение понятия события.
Поступим по аналогии с геометрическими конструкциями. Точка, плоскость, линия – это такие объекты, которые обладают размерами с точки зрения наблюдателя пренебрежимо малыми, чтобы о них упоминать. Если взять временную ось и вырезать на ней участок такого размера, что его размерами можно пренебречь, то к чему это приведет? Мы выбрали на оси времени дельту t, в пределах которой положение тел менялось очень слабо. Взяли такое тело и сказали, что в такой-то промежуток времени тело находилось приблизительно здесь. Например, в 10-00 спускаемый аппарат пересек границу плотных слоев атмосферы (точка1 на рисунке).
Понятно, что и граница существует как довольно толстое образование, толщиной которого мы пренебрегли. Понятно, что и момент вхождения аппарата в плотные слой – довольно длительный процесс. Однако, с точки зрения моделирования – это был краткий миг и тонкая грань. В итоге такая конструкция получила название – событие.
Дадим определение термина событие по аналогии с терминами точка, плоскость и прямая.
Событие – это объект в 4-Д пространстве-времени, временными размерами которого с точки зрения моделирования можно пренебречь.
Построим пространственно-временную диаграмму. Пусть есть три координаты, которые на диаграмме слиты в одну вертикальную ось. И пусть есть координата времени, которая есть горизонтальная ось. Тогда объект в пространстве-времени можно представить себе так:
Событие на такой диаграмме можно изобразить так:
Событие может быть геометрической точкой? Нет, точка – это длинная линия во времени. Однако, если точка существовала очень мало во времени с точки зрения моделирования, то она становится событием — точкой. Например, в 12-00 в созвездии стрельца вспыхнула сверхновая. Вспыхнула – краткий миг по времени, сверхновая с такого расстояния – это точка в пространстве. Таким образом, вспышка сверхновой может считаться событием-точкой.
Событие – прямую и событие – плоскость придумайте сами. А вот событие-объем – это то, с чем мы работаем постоянно. Например, Куликовская битва. Это событие с точки зрения школьника произошло в пространстве – на Куликовом поле.
Если точки в геометрии нужны для построения линий, плоскостей и объемов, то события нужны для построения траекторий, описание формата видеозаписи, описания активностей предприятия. Уравнивание временной оси и пространственных координат приводит нас к тому, что мы искали. Мы получили возможность описания событий тем же способом, каким мы описываем геометрические параметры объектов.
События как способ описания объекта.
Применим определение события для описания объекта во времени. Для этого объект делится на состояния и события. При этом интуитивно мы понимаем, что состояние – это то, что продолжается долго, и оно стабильно, а событие – это то, что совершается мгновенно. В результате объект представляется в виде череды состояний, разделенных событиями. Попробуем применить этот принцип к описанию маяка. И докажем, что деление на события и состояния исключительно произвольно, зависит только от предпочтений автора такого деления.
Итак, пусть у нас есть маяк, для создания луча которого используется обычный костер. При этом для того, чтобы создать мерцание этого маяка, инженеры ничего лучше не придумали, кроме как заставить смотрителей маяка разжигать и тушить костер непрерывно. То есть, как только смотритель разжег костер, как только тот воспылал, так его сразу же надо начинать тушить: тащить ведра с водой и заливать угли. Только залил угли, сразу же надо начинать сушить их, раздувать и снова разжигать. Вот такой непрерывный цикл производства. Посмотрим, как его можно смоделировать.
Пусть яркость костра меняется по закону, представленному на графике:
Давайте представим себе впередсмотрящего на корабле, который докладывает обстановку капитану. Его риторика такая: справа на два румба вижу маяк. Он не говорит о том, что маяк меняет свое состояние, нет. Он говорит так, как будто маяк не меняет своего состояния. Потому что в данный момент нет необходимости в такой степени детализации. Однако, когда моряк должен убеждается в том, что перед ним маяк, а не случайный блик, он должен проверить, что маяк мерцает. И тогда он про себя считает: потух, вспыхнул, потух… ага, значит маяк. Вот тут вопрос, что такое вспыхнул, потух, и что между ними? Вспыхнул – это с точки зрения моряка событие, которое означает, что маяк зажегся. Но он не зажегся мгновенно, хотя моряк именно так себе и представил – зажегся мгновенно. На самом деле зажегся – это отрезок времени, и потух – это тоже промежуток времени. На графике это можно увидеть так:
Итого, описание маяка в голове у моряка выглядит так: состояния маяка: светится и не светится. События, которые необходимо зарегистрировать – это маяк вспыхнул и маяк потух.
Теперь обратим внимание на то, как состояния маяка видит смотритель. У него две задачи – тушить и разжигать. Это два состояния, в которых он находится. Между ними два события – переход от состояния розжига к состоянию тушения и от состояния тушения к состоянию розжига. На временной карте это можно изобразить так:
Из графиков видно, что то, что в первом случае (с точки зрения моряка) было состоянием, во втором (с точки зрения смотрителя) стало событием и наоборот — то, что в первом случае (с точки зрения моряка) было событием, во втором (с точки зрения смотрителя) стало состоянием.
Таким образом, один и тот же объект можно описать совершенно разными способами, разбив его на разные временные части. Получилось, что одна и та же временная часть объекта (которая тоже есть по определению объект) может быть как событием, так и состоянием в зависимости от точки зрения. Это подтверждает нашу догадку, что событие – это 4-Д объект, который с точки зрения наблюдателя имеет нулевую ширину во времени. При этом мы получили бесплатно определение состояния.
Состояние – это временная часть объекта, с точки зрения наблюдателя неизменная на всем протяжении во времени. Отличительной чертой состояния является его протяженность во времени.
Что остается неизменным в состоянии маяка «Костер разжигается» — неизменным с точки зрения наблюдателя остается разжигание костра.
Мы показали, что для описания объекта во времени мы используем способ разбивки этого объекта на временные части, некоторые из которых с точки зрения наблюдателя считаются нулевой ширины по времени (события), а некоторые – ненулевой (состояния). Маяк с точки зрения наблюдателя описан таким образом:
Заключение
При этом надо заметить, что маяк разбивается на связанные друг с другом части. Но есть такие объекты, которые могут не иметь связи в пространстве-времени. Например, пусть есть школа №134. Сначала она была построена на одном месте, затем разрушена и построена на другом.
Таким образом, объект может представлять из себя и несвязанное множество в 4-Д пространстве.
События выполняют важную роль в описании объектов. В следующих статьях мы более подробно обсудим эту тему. Мы изучим функциональные события и затем посмотрим, как события используются в описании активности предприятия. А также поговорим о классах событий.
Автор: maxstroy