Состояния предметной области
Предметная область в каждый момент времени может быть представлена в виде совокупности сущностей, понятий и ситуаций. Выделенная совокупность сущностей, понятий и ситуаций предметной области называется ее состоянием. Так как понятия различаются между собой с помощью признаков, то состояние ПО можно задать, если известны значения всех признаков понятий, используемых для описания ПО.
Предметная область не пребывает в одном статическом состоянии. С течением времени меняются признаки понятий, их состав и взаимосвязи, т. е. возникают новые состояния ПО. Это значит, что ПО можно рассматривать как некоторую динамическую систему, поведение которой состоит в изменении ее состояний. Совокупность всех возможных состояний сущностей и ситуаций, в которых они могут находиться, образует пространство состояний ПО, или, другими словами, фазовое пространство ПО. Жизненный цикл любой ПО в пространстве состояний представляется в виде некоторой последовательности состояний (траекторий), которые возникают в различные моменты времени.
Так, книги в библиотеке могут принадлежать группе книг одного автора или находиться на абонементе одного читателя. Читатели записываются в библиотеку и выбывают из числа пользователей библиотеки. Книги, имеющиеся в библиотеке, меняются с течением времени, так как библиотекой приобретаются новые и удаляются из фонда старые. Библиотека может проводить операции с книгами и читателями и устанавливать связи между ними, когда читатель получает интересующую его книгу на свой абонемент или сдает прочитанную.
Для описания таких динамических явлений, характеризующихся переходами из одного состояния в другое, могут использоваться такие понятия, как ПОЛУЧЕНИЕ КНИГИ, ВОЗВРАТ КНИГИ, ПОКУПКА КНИГИ, СПИСАНИЕ КНИГИ и т. д. Причем как покупка книги библиотекой, так и возврат книги читателем могут привести к одному и тому же состоянию библиотечного фонда. На выполнение некоторой операции могут накладываться различные ограничения: максимальное число взятых читателем книг не может превышать определенного количества, одна книга не может быть записана на абонементах двух читателей и т. д.
Для полного описания ПО необходимо иметь соответствующие средства представления как статических связей между понятиями, так и динамических процессов, которые происходят в реальном мире.
Событие
Любое изменение состояния ПО будем связывать с некоторым событием в ПО. Событие является тем основным понятием, которое мы будем использовать для моделирования динамических процессов, происходящих в ПО. Для целей представления ПО в информационных системах достаточно считать, что любое изменение состояния ПО (событие) происходит мгновенно и не имеет протяженности во времени. Если изменение является протяженным, то его можно рассматривать в виде пары событий, одно из которых соответствует началу изменения состояния, а второе - его завершению. Продолжительность изменения в этом случае совпадает с интервалом времени между наступлением события начала и события - завершения.
Мгновенный характер свершения события позволяет полностью абстрагироваться от того, каким образом осуществлялись происшедшие в ПО изменения, и не принимать во внимание все промежуточные состояния ПО, так как для целей концептуального моделирования важны лишь ее начальное и конечное состояния в некоторый момент времени.
Событие может состоять из более простых событий. Событие, которое заключается в изменении состояния одной сущности или ситуации, назовем элементарным. Сложные события могут быть агрегатами более простых событий, которые происходят в один и тот же момент времени. С элементарным событием необходимо связывать начальное состояние сущности, ее конечное состояние и время наступления события. Кроме того, событию как некоторому понятию можно приписать любые другие признаки, которые представляют интерес для отражения динамики ПО.
Часто возникновение и завершение события в ПО связывают с определенными условиями. Предикат, который характеризует возможность наступления события, называется предусловием, а предикат, описывающий результат завершения события, - постусловием. С помощью этих предикатов обеспечивается более сжатое представление информации, относящейся к начальному и конечному состояниям ПО, так как предикаты в принципе предоставляют возможность указать целую совокупность состояний, приводящих к наступлению события или возникающих в результате его свершения.
Фиксируя множество состояний, предикаты «постусловие» и «предусловие» позволяют абстрагироваться от конкретных значений признаков понятий ПО, что обеспечивает потенциальную возможность раздельного представления статики и динамики ПО, При таком подходе можно сначала осуществлять моделирование динамических процессов в ПО, а затем дать уточненное описание состояний сущностей ПО. Причем граф событий определяет лишь внешнее поведение информационной системы, которое может быть описано ее будущими пользователями, а более детальная проработка структур сущностей, введение дополнительных понятий и определена структур ситуаций могут быть отнесены на более поздний этап концептуального проектирования и определяться разработчиками системы.
С каждым событием, происходящим в ПО, связывается некоторое имя. Аналогично понятиям одновременные события могут быть объединены в классы событий, между которыми могут быть установлены отношения обобщения и агрегации. Например, некоторое событие может быть связано с другим событием отношением ВКЛЮЧАЕТ (агрегация) или ОБОБЩАЕТ (обобщение). Это значит, что к событиям могут быть применены такие же методы анализа и представления, как и к понятиям.
Основной сферой использования событий являются ситуации, приводящие к изменению состояний понятий ПО. Так как изменение состояний понятий означает изменение значений их признаков, то под интенсионалом элементарного события следует понимать правила (алгоритм), задающие соответствующее преобразование признаков. В частности, в качестве такого правила может выступать формула, определяющая функциональное отображение значений признаков. Если соответствующую функцию обозначим через (pi, а декартово произведение доменов значений признаков domAl x domA2 x ... х domAn – через D, то функция производит отображение области D в домен изменяемого признака
ji: D ® domAi.
Тогда аналитическое выражение, задающее функцию ji будет выступать в качестве интенсионала события, а множество пар (di, ai), где di Î D, a ai Î domAi – его экстенсионала. В качестве схемы события в этом случае следует определить перечень имен признаков из области определения и области значений функции.
При наступлении события изменениям могут подвергнуться как характеристические, так и дифференциальные признаки. Очевидно, что изменения дифференциальных признаков фактически приводит к трансформации понятий, т.е. события в этом случае выполняют роль связей при динамических переходах одних понятий в другие.
В общем случае интенсионал события ev следует понимать как правила трансформации состояний, выраженные в виде логических формул. В частности, интенсионал события ev можно рассматривать как импликацию
intL ev = (Pre (ev) ® Post (ev)),
где Рrе (ev) и Post (ev) – соответственно предусловие и постусловие события ev.
Эта формула означает, что если на некотором состоянии истинен предикат Рrе (ev), то после изменения этого состояния вследствие наступления события ev будет истинен предикат Post (ev). Данное определение интенсионала может быть использовано для логического вывода на цепочке событий. В качестве экстенсионала в этом случае выступает отношение, определенное на декартовом произведении признаков, а в качестве схемы – множество имен доменов данного отношения. Рассмотрение события ev в виде четверки:
ev = < int (ev), ext (ev), shm (ev), t (ev)>,
где t (ev) - время наступления события ev, позволяет определить семантику динамических процессов ПО.
Дата добавления: 2016-03-05; просмотров: 1658;