Проблема и ее решение Пусть будут пользователи информационной системы.
Авторизованным пользователям разрешено строить свои модели в данной ИС.
Неавторизованные могут только наблюдать, как другие строят эти модели, но не могут сделать это сами.
Вопрос: сколько ролей в IS? Пусть рядом лежат две кучки песка.
Вопрос: Это одна куча или все еще две кучи, но теперь сложенные рядом? Пусть будет должность директора школы № 123. Сидоров занимает эту должность после Иванова.
Вопрос: Это два разных режиссера или один? Сегодня Иванова играет роль княжны Марьи.
Вопрос: завтра, когда он сыграет роль с таким же названием, это будет та же самая роль или другая? Вопрос: Сидоров, который сегодня играет одноимённую роль, играет ту же роль или другую? В часах на городской башне имеется часовой механизм, выполняющий роль привода часов.
Пусть он сломается и будет заменен другим часовым механизмом.
Вопрос: Часовой привод теперь другой, или это тот же часовой привод, но с другим часовым механизмом? На все эти вопросы (и подобные) можно ответить одинаково – каждый решает сам, как ему удобно, исходя из контекста.
Обычно это никого не беспокоит, поскольку нет необходимости строить модели.
Как аналитик, я должен постоянно быть начеку.
Необходимо понять, как клиент видит предметную область, чтобы правильно построить модель.
Сегодня я хочу показать вам последовательность рассуждений, которые я провожу.
Объяснение решения
Пусть будет директор школы № 123 Сидоров.Вопрос: это та же роль, что и у директора школы № 123 Иванова? Для начала нужно понять, для кого строится информационная система? Пусть он будет построен для сбора статистической отчетности по зарплатам директоров школ.
В этом репортаже все директора безлики.
Разницы между занимающими должность Ивановым и Сидоровым нет, но важно различать директоров разных школ.
Понятно, что с этой точки зрения роль директора школы одна.
Теперь предположим, что ИС строится для анализа деятельности директоров различных школ.
В таком ИС будет важно различать Иванова-режиссера и Сидорова-режиссера.
С этой точки зрения роли режиссеров будут разными.
Чтобы понять, как перейти от первого представления ко второму, нужно понять, что такое роль.
Об этом я подробно писал в статье Моделирование объектов учета .
Напомню вкратце.
Роль – это некий 4-х мерный объем пространства-времени, занятый в разное время разными людьми, а точнее их временными частями.
Это означает, что роль можно представить как конструкт, состоящий из временных частей людей, каждая из которых характеризуется датой начала и датой окончания ее участия.
Сама роль — это не набор этих временных частей, а склейка всех этих частей.
Понятие склеивания необходимо объяснить подробно.
То же самое касается и концепции разделения.
Если мы возьмем четыре ножки и столешницу, то, соединив их вместе, получим стол.
Глядя на пространство, которое занимает стол, мы можем переключать свое внимание, в разное время видя либо 4 ножки и столешницу, либо весь стол.
Склеивание – это процесс восприятия, посредством которого мы можем многое представить в целом.
Разделение — это процесс восприятия, посредством которого мы можем представить целое как множество.
Наше сознание способно как разделять, так и склеивать.
Но мы не всегда осознаем эти процессы.
Представьте, что у вас есть несколько кучек песка.
Вы сложили их вместе и получили одну кучу.
Склеивание височных частей происходит точно так же.
Вы берете их и склеиваете.
Из множества мелких височных частей получается одна височная часть большего размера.
Таким образом, для получения роли директора школы № 123 необходимо склеить временные части: роль директора школы № 123, исполняемую Ивановым, с ролью директора школы № 123. 123 в исполнении Сидорова.
Если можно соединить кучки песка, то можно и одну кучу разделить на части.
По аналогии роль можно разделить на части.
Пусть будет роль директора школы в исполнении Сидорова.
Представим это в виде множества ролей, каждая из которых представляет собой ежедневное исполнение Сидоровым роли режиссера с 8-00, когда он приходит на работу, до 17-00, когда он уходит. Можно сказать, что роль директора школы, которую играет Сидоров, является связующим звеном всех повседневных ролей Сидорова.
Пусть будет много повседневных ролей, исполняемых Сидоровым.
Как мы видим, эти роли можно склеить в одну большую роль.
Вы можете сложить их в стопку и посмотреть, что у них общего — создайте типичную ежедневную роль.
Можно провести статистический анализ этих повседневных ролей.
При этом важно понимать, с какими объектами мы работаем и какие атрибуты используются.
Если возникает вопрос о продолжительности работы Сидорова как режиссера, то речь идет о склейке повседневных ролей в одну большую роль, и эта длительность является свойством этой роли.
Если вопрос стоит о том, когда Сидоров ОБЫЧНО приходит на работу, то речь идет о типичной повседневной роли Сидорова, и это время является свойством типичной повседневной роли.
Если вопрос в том, во сколько Сидоров приходит на работу в СРЕДНЕМ, то речь идет о многих ежедневных ролях и это время является свойством многих ежедневных ролей.
Поэтому, если мы хотим корректно передать эти свойства в ИС, нам необходимо создать в ИС все перечисленные мной объекты: ежедневные роли, склеенную большую роль, стандартную роль, множество ролей.
При этом надо помнить, что набор в ИС — это отдельный объект со своими атрибутами, а не просто набор ролей.
Можно склеить роли всех директоров всех школ, и при этом получить такую огромную роль - директора школы, которую будут исполнять разные люди одновременно в разных местах.
Поэтому роль не обязательно одновременно выполняет один человек.
Роль могут исполнять разные люди одновременно в разных местах.
Однако не следует путать эту огромную роль с типичной ролью директора школы! Такая путаница возникает довольно часто.
Кроме того, роль часто выдается за общую роль.
Вопрос, с которого я начал пост: есть авторизованные пользователи и есть неавторизованные.
Вопрос: Сколько ролей в этом ИС? Надеюсь, теперь ответ ясен: сколько угодно.
Мы можем назвать это ролью, в которой пользователь участвует в каждом сеансе.
Вы можете объединить все сеансы, принадлежащие одной учетной записи, и определить роль для этого подключения; вы можете объединить все сеансы авторизованных пользователей и определить роль для этого соединения.
Можно объединить все сессии и определить роль для этой склейки — это будет склейка авторизованных и неавторизованных пользователей.
Или можно склеить сеансы работы в этой программе с сеансами работы в других программах.
И т. д. и что угодно.
Вопрос целесообразности.
Все зависит от целей нашего учета: построенная модель должна удовлетворять целям нашей работы.
Природа ролей и физических объектов
После нашего разговора остается впечатление, что роль — это нечто эфемерное — склеивание, вырезание.Но на самом деле роль имеет ту же природу, что и любой другой физический объект. Тот факт, что мы получаем роль, разрезая пространство-время или склеивая его, не отличает эту роль от любого другого физического объекта.
Представьте себе мир, в котором люди знают о переселении душ из одного тела в другое.
Более того, они не только это знают, у них есть паспорта для души, а не для тела.
Часто говорят – я прекрасно провел время в роли Иванова, или я, как Сидоров, плохо поработал над своей кармой.
И то, что вы видите как объект, они воспринимают как роль.
Физические объекты также можно склеивать и разрезать для создания новых объектов.
Например, доска плюс доска образуют скамейку.
Или стол можно разрезать на столешницу и ножки.
Или материю Солнечной системы можно разделить на облако газа и пыли, оставшееся после взрыва сверхновой, и планетную систему, возникшую позднее из этого облака.
В конце концов, вы сможете понять, что все вокруг нас — не что иное, как результат нашей интерпретации реального и непостижимого мира.
А то, что наше сознание различает физический мир как реальность и мир ролей, как он нам представляется, есть не что иное, как эгоцентризм, подобный антропоцентризму системы Птолемея.
Объяснение того, как объекты появляются в нашем сознании, я сделал в статье.
Происхождение объектов учета Теги: #бизнес-анализ #роль #проектирование баз данных #моделирование предметной области #Семантика #Анализ и проектирование систем #ИТ-стандарты #Бизнес-модели
-
Они Пишут Правильно
19 Oct, 24