о моделировании процессов в информационных системах

advertisement
О МОДЕЛИРОВАНИИ ПРОЦЕССОВ В ИНФОРМАЦИОННЫХ СИСТЕМАХ
ABOUT PROCESS MODELING IN INFORMATION SYSTEMS
И.М.Гостев, И.Л.Толмачев
Российский университет дружбы народов, Москва
Тел.: (095) 955-09-75, факс: (095) 952-23-28, e-mail: itolmachev@sci.pfu.edu.ru
Уже длительное время в печати можно встретить словосочетание "объектно-ориентированные базы данных". В это
словосочетание можно вложить два смысла: объектно-ориентированный подход при реализации СУБД и объектноориентированное моделирование с использованием средств реляционных баз данных. Второй наиболее интересный
аспект подробно, на наш взгляд, рассмотрен у Дейта [1].
У него в основном рассматривается возможность использования преимуществ объектно-ориентированного подхода
при моделировании некоторой деятельности, не теряя при этом тех достижений, которые предоставляются
реляционными СУБД.
На наш взгляд данное словосочетание не совсем удачно. Если объектно-ориентированный подход рассчитан на
моделирование процессов, происходящих с объектами, хотя и сложной, но заранее зафиксированной структуры [2], то
реляционная модель рассчитана кроме всего прочего, на заранее не определенные запросы. Именно по этому не
имеет смысла разрабатывать модель, реализующую обе возможности одновременно. Предложение Дейта об
адекватности "объект-домен" является паллиативом, а не решением проблемы.
Дело в том, что на возможные связи, существующие между объектами, различные пользователи акцентируют
внимание по-разному, в зависимости от целей, которые ставятся при решении конкретной задачи. Реляционная модель
пошла по пути унификации моделирования связей, расплачиваясь временем на их восстановление при решении
задачи, а объектно-ориентированный подход на выделение иерархических связей, свойственных объектам в пределах
описываемого процесса. При описании сложных процессов зафиксированных иерархических связей часто не хватает, в
результате чего при реализации приходится вводить разного рода исключения, но даже при этом писать программы,
моделирующие процессы в многообъектных системах, явно проще. В двух словах эту простоту можно определить теми
ограничениями по записи алгоритма, которые определены разработчиками модели.
Таким образом, реляционная модель и объектно-ориентированный подход – это две стороны одной медали.
Мы предлагаем расширить общепринятую трехуровневую инфологическую модель. Внешний уровень модели,
который предоставляет интерфейс для пользователя, становится доступным только для чтения, а реализация
потребностей внесения изменений в данные осуществляется только через услуги. Каждая услуга является элементом
некоторого процесса.
Процесс состоит из трех элементов: инициация, услуга и завершение. Инициация выполняет две функции:
создание структуры объектов с определением их интерфейсов, задействованных в процессе, и формирование самих
объектов на основе существующей базы данных. Услуга позволяет пользователю вносить изменения в данные в
соответствии со свойствами созданной структуры и является совокупностью действий, которые могут быть либо
элементарными транзакциями, либо определять запуск нового процесса. Завершение разрушает созданную структуру
объектов с сохранением введенных изменений в базе данных. Следует отметить, что часть процессов запускается в
момент старта системы.
Так как описание структуры объектов обеспечивается языковыми средствами, то вопросы блокировки одних
процессов другими могут быть решены в момент запуска нового процесса, за счет анализа свойств уже действующих
процессов. Этот анализ проводится блоком управления процессами. Кроме того, этот блок отслеживает за
своевременным завершением уже начатых процессов.
Предложенный нами механизм реализации модели более точно может быть назван как "база данных с
возможностью динамического выделения объектов управления".
Литература
1. К.Дейт Введение в системы баз данных // К.-М., Диалектика, 1998. – 782 с.
2. Г.Буч Объектно-ориентированный анализ и проектирование // Бином, 1998. – 560 с.
1
Download