Научная статья на тему 'Объектная модель СУБД приложения'

Объектная модель СУБД приложения Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
156
57
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Котов И. Н., Салтыкова Н. Н.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Объектная модель СУБД приложения»

обеспечения развития информационной системы по меньшей мере на ближайшие пять - десять лет.

Основным каналом обмена информацией в рамках МГИС может являться магистральная сеть передачи информации, к которой подключаются информационные системы всех пользователей и которая обеспечивает передачу данных режимами "on-line" или электронной почтой из внешних сетей и информационных систем.

В то же время в масштабах города развитие новой высокотехнологичной передающей среды является недоступно дорогим проектом, несмотря на положительные опыты создания такого рода сетей в небольших муниципальных образованиях. Кроме того, ориентация на сугубо профессиональное использование или даже на «продвинутых» пользователей (в случае коммерческого использования таких каналов) экономически неоправдана. В качестве выхода из данной ситуации можгут быть использованы коммуникации кабельных каналов телевидения.

В городе Волгограде в течение ряда лет под управлением комитета по развитию рекламы и телерадиовещанию городской администрации развивается эфирно-кабельное вещание на основе сетей высокой пропускной способности. Помимо десятков аналоговых и цифровых вещательных телевизионных каналов, данные сети потенциально обладают пропускной способностью порядка 6 Мб/с, что на 3 порядка превосходит возможности модемной связи и делает возможным быструю передачу большого количества данных. А с учетом широкой распространенности именно данного поставщика услуг (около 70 тыс. абонентов), высока вероятность экономического успеха данного мероприятия.

При решении ряда правовых вопросов в области защиты информации и некоторых технических проблем (начата реализация пробного проекта по предоставлению высокоскоростного доступа в Интернет с помощью данного канала), задача построения эффективной инфраструктуры Волгограда может быть решена в течение достаточно короткого промежутка времени, и данное решение вполне может оставаться оптимальным в течение как минимум 5-10 лет.

И.Н. Котов, Н.Н. Салтыкова ОБЪЕКТНАЯ МОДЕЛЬ СУБД ПРИЛОЖЕНИЯ

В данной работе рассматриваются технологические аспекты разработки экранных интерфейсов для СУБД приложений. Главный акцент делается на универсальность, эффективность и повторную используемость в различных СУБД приложениях используемых высокоуровневых компонентов. Специальные усилия направлены на обеспечение безболезненности модификаций [1] интерфейса и возможность осуществления изменений в стиле plug’and’play. В качестве основных методов работы с объектами модели предлагается использовать методы XML-технологий.

Предлагается следующая объектная модель СУБД приложения.

Объекты верхнего уровня модели включают: главный модуль приложения, модуль возможных операций, модуль для работы с меню различного вида, модуль для экранных форм (с двумя основными примитивами - для работы с таблицами и для работы с отдельными полями одной записи), модуль фильтрации, модуль упорядочивания, модуль работы с выходными формами, модуль управления событиями.

Как правило, каждый объект использует некоторые однородные конструкции [1]. Например, объект для работы с выходными формами предполагает в качестве однородных элементов другой объект, соответствующий некоторой выходной форме, появляющейся в приложении. Структура каждого однородного элемента заранее определена и включает в себя всю информацию, необходимую для реализации этого элемента. Эта структура записывается в виде XML-файла [2], и поэтому для работы с этой структурой (т.е. ее анализа, синтаксического разбора, трансформаций в другие структуры) можно использовать стандартные инструментальные процедуры из общедоступных программных модулей. Все однородные элементы размещаются в некотором хранилище. Для обработки однородных элементов соответствующий объект имеет специальные методы, одним из входных аргументов которых является хранилище однородных элементов. Следует отметить, что эти методы не зависят от количества элементов в хранилище и корректно работают даже при пустом хранилище. Таким образом, варьирование состава хранилища однородных элементов можно осуществлять внешними по отношению к данному объекту средствами. Это позволяет динамически менять однородные элементы безболезненно, т.е. ничего не меняя в программах, реализующих объект.

Каждый модуль в качестве входных параметров получает символьную строку или файл с соответствующей XML-структурой. По этой структуре динамически генерируется некоторый исполняемый модуль, который тут же выполняется. Для генерации исполняемого модуля используется специально подготовленный XSL-файл, представляющий собой набор шаблонов-преобразований, который высокоуровневым способом определяет структуру генерируемого файла. В качестве механизма, осуществляющего генерацию, используется XSLT-преобразователь.

Данная объектная модель представляет собой набор «горизонтальных» функций любого приложения [3]. Ядро приложения включает стандартный набор компонентов из объектной модели, реализующее исполнительную (runtime) часть каждого горизонтального модуля. Таким образом, ядро приложения - это общая часть различных СУБД-приложений, реализующая стандартные функции этих приложений.

Для спецификации экранного интерфейса конкретного приложения необходимо определить совокупность «вертикальных» модулей, каждый из которых реализует некоторую содержательно целостную функцию приложения, например, работу с некоторым справочником или документами определенного вида. Такой вертикальный содержательно целостный модуль состоит из программных фрагментов (подмодулей), которые вставляются в некоторые заранее предопределенные места программы. Механизм вставки фрагмента из вертикального модуля в некоторое место из программы ядра похож на модификацию общепринятого аппарата работы с программно возбуждаемыми событиями.

Каждый вертикальный модуль помещается в специально отведенный каталог приложения. Модуль подсоединяется к ядру системы в стиле plug’and’play. Это означает, что механизм взаимодействия между модулями ядра и фрагментами вертикального модуля таков, что можно безболезненно удалить данный вертикальный модуль без нарушения работоспособности остальной части программы

приложения. Естественно, при этом будет удалена и функциональность, реализуемая этим вертикальным модулем.

Объектная модель, реализующая интерфейс СУБД приложений, была реализована в различных инструментальных средах (FoxPro, Delphi). Опыт ее использования показал плодотворность и эффективность этой модели. Особенно заметен эффект ее использования на этапе сопровождения приложения, когда надо вносить изменения в уже работающее приложение.

ЛИТЕРАТУРА

1. Горбунов-ПосадовММ. Расширяемые программы. М.: Полиптих. 1999. 336с.

2. Extensible Markup Language (XML) 1.0 W3C Recommendation 10-February-1998, http://www.w3.org/TR/1998/REC-xml-19980210

3. Фуксман А.Л. Технологические аспекты создания программных систем. М.: Статистика. 1979. 184с.

А.А. Букатов, В.А. Шапиро, О.В. Шаройко

ТЕХНОЛОГИЧЕСКИЕ АСПЕКТЫ ПОСТРОЕНИЯ РАСПРЕДЕЛЕННЫХ ИНФОРМАЦИОННЫХ И УПРАВЛЯЮЩИХ

СИСТЕМ

На примере создания системы учета загрузки каналов распределенной информационной сети РГУ рассматриваются некоторые технологические аспекты создания распределенных информационных и управляющих систем, связанные с обеспечением возможности дальнейшего развития таких систем как в плане расширения их функциональных возможностей, так и в плане адаптации к изменениям структуры информационной базы и/или объектов управления, а также к изменению уровня нагрузки на систему.

При построении архитектуры системы выполняется декомпозиция системы в вертикальных и горизонтальных плоскостях. Горизонтальная декомпозиция выполняется в соответствие с моделью трехслойной организации клиент-серверных приложений. В этой модели традиционно выделяются три слоя: слой внешнего интерфейса, слой прикладной логики и слой доступа к данным и/или ресурсам.

Вертикальная декомпозиция выполняется на основе функциональной структуры проектируемого приложения. Реализация каждого прикладного объекта требует включения фрагментов кода в программные модули различных слоев. Будем называть функциональными компонентами совокупность кодовых фрагментов различных слоев, составляющих реализацию этого прикладного объекта.

В частности, в рамках создания системы учета загрузки каналов распределенной информационной сети РГУ было осуществлено следующее разбиение по горизонтальным составляющим:

i Надоели баннеры? Вы всегда можете отключить рекламу.