<<
>>

Введение

Актуальность темы. Современные прикладные программные системы (ИПС) ориентированы на решение вычислительных задач или задач обработки данных. В обоих случаях, как правило, осуществляется работа с большими объёмами информации сложной структуры, что обуславливает необходимость использования баз данных (БД) и реализации специализированных функций для решения задач конкретной предметной области.

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

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

Современные технологии разработки ПБД, основанные на императивном программировании и использовании развитых библиотек визуальных компонентов (например, Visual Component Library [45,90] или Microsoft

Foundation Classes [43] или Framework Class Library [5]) предоставляют общецелевые инструментальные средства.

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

Существующие подходы в области объектно-реляционного отображения [71], (например, Hibernate/NHibernate [77] или Entity Framework [79]) позволяют ускорить разработку ПБД за счёт автоматизации построения объектной модели обеспечивающей взаимодействие с сущностями реляционной БД и являющейся описанием структуры БД для приложения. При этом часть программного кода, в частности классы соответствующие сущностям БД, классы обеспечивающие преобразование объектных запросов в SQL-запросы, генерируется автоматически. Необходимо отметить, что изменения в структуре БД приводят к необходимости перегенерации классов, что не является сложным процессом, но требует аккуратного программирования при доработке этих классов, чтобы не смешивать автоматически сгенерированный и созданный вручную код. Дальнейшая реализация системы, т.е. программирование пользовательского интерфейса, операций поиска, и т.д. уже выполняется вручную отдельно для каждой сущности, только теперь через свойства и методы классов, что снова приводит к созданию больших объёмов однотипного кода.

В настоящее время активно ведутся исследования в области автоматизации разработки как пользовательских интерфейсов (например, Model-Based User Interface Development), так и ППС в целом (например, Model Driven

Architecture [22], порождающее программирование [64]), позволяющих повысить эффективность процесса создания приложений.

Основной тенденцией в этих исследованиях является разработка современных методов структурирования метаданных (данных о структуре) об 1П1С в виде моделей системы (иногда только пользовательского интерфейса [23,74,87]) различными средствами (например, надстройки над моделями классов UML [65], применение модельных каркасов [66], или построения онтологий предметной области [24,25,38]). Формализация знаний о структуре 1П1С в модели позволяет выделять схожие структуры данных и присущие им бизнес-процессы в отдельные компоненты, а также генерировать соответствующие им сценарии создания структур в СУБД, алгоритмы обработки бизнес-процессов, экранные формы единожды и распространить их на все подобные компоненты. Как показывает практика, сгенерированный код практически всегда требуется дорабатывать программисту, при этом полученные изменения не отражаются в исходных абстрактных моделях системы.

Для решения задач обработки, представления и анализа пространственных данных (ПД) современные ППС должны включать соответствующие функциональные возможности геоинформационных систем (ГИС). Современные ГИС предоставляют разработчикам API (Application Programming Interface) для реализации ГИС-функциональности [21]. Несмотря на развитость этих API, реализация таких функций - сложная и трудоёмкая задача, требующая знаний в области геоинформационных технологий. Реализация ГИС-функциональности существующими методами часто приводит к дублированию функций целевой ГИС в разрабатываемой системе. Модернизация существующих ППС, направленная на интеграцию с функциями обработки ПД, как правило, требует наличия исходных кодов этих ППС у разработчика, а в случае их отсутствия приводит к необходимости повторной разработки системы.

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

Это обосновывает актуальность задачи разработки концептуально новых технологий и инструментальных средств, автоматизирующих процесс создания ПБД, которые позволят сократить сроки и, как следствие, затраты на создание (модернизацию) ПБД, а также позволят решать более широкий круг комплексных научно-исследовательских задач за счёт встроенной ГИС-функциональности.

В качестве способа представления и хранения модели приложений БД в работе предложено использовать декларативные спецификации [1] - детальные описания в текстовом виде структур приложений, требований к функциональности, правил представления и обработки данных и механизмов взаимодействия с внешними ППС. Декларативные спецификации отличаются своей компактностью по сравнению с программами на императивных языках, обладают предметной ориентированностью и выразительностью, а также возможностью интерпретации различными трансформационными и другими процедурами [27].

Цель и задачи исследования. Целью диссертационной работы является разработка языка и инструментального средства формирования декларативных спецификаций ПБД, а также технологии применения этих спецификаций для автоматизации процесса создания и модернизации ПБД, обладающих ГИС- функциональностью.

Основные задачи исследования.

1. Провести анализ существующих подходов к автоматизации создания 1П1С.

2. Разработать технологию автоматизации создания ПБД, обладающих ГИС- функциональностью, на основе их декларативных спецификаций.

3. Построить концептуальную модель ПБД, описывающую структуру БД, правила отображения схемы БД в пользовательский интерфейс и механизм взаимодействия ПБД с внешними ППС, в том числе с ГИС.

4. Создать декларативный язык спецификации ПБД.

5. Реализовать инструментальное средство для автоматизации создания ПБД, обладающих ГИС-функциональностью, на основе их декларативных спецификаций.

6. В качестве апробации результатов диссертационного исследования применить разработанную технологию для решения ряда практических задач.

Объектом исследования являются технологии автоматизации создания ПБД.

Предметом исследования являются декларативные спецификации и их использование для автоматизации создания ПБД с ГИС-функциональностью.

Методы исследования. Для решения поставленных задач использованы методы объектно-ориентированного, модульного и сборочного программирования, построения интерпретаторов, баз данных, разработки предметно-ориентированных языков, спецификаций программ и автоматизации создания ППС.

Научная новизна работы заключается в следующем.

Предложена технология автоматизации создания ПБД, отличием которой от известных является выделение информации о структуре ПБД и формирование спецификаций в виде формализованных знаний. Это позволяет: абстрагироваться от структуры БД и типа используемой СУБД, использовать универсальные алгоритмы для доступа и модификации таблиц БД, динамического создания пользовательского интерфейса, а также взаимодействия с внешними ППС, в том числе с ГИС.

Создана оригинальная концептуальная модель ПБД, особенность которой заключается в том, что информация о структуре БД расширена знаниями о способах представления данных пользователю и механизме взаимодействия с внешними ППС, что позволяет создавать универсальные алгоритмы для

взаимодействия с таблицами БД, динамического формирования

пользовательского интерфейса и взаимодействия с внешними системами, в том числе с ГИС.

Разработан новый предметно-ориентированный декларативный язык спецификаций ПБД, включающий конструкции для описания не только структур таблиц и связей между ними, но и правил формирования пользовательского

интерфейса для взаимодействия с этими таблицами, взаимосвязи информации из БД с пространственными данными, а также механизма взаимодействия с внешними ППС, решающими специфические задачи.

Впервые разработано инструментальное средство, позволяющее интерактивно создавать спецификации ПБД, а также настраиваться при помощи спецификаций на работу с предметной БД.

В целом, в диссертации предложена новая технология создания ПБД, обладающих ГИС-функциональностью, позволяющая значительно сократить сроки и стоимость разработки, а также снизить требования к квалификации разработчика в части знания языков программирования за счёт применения интерактивного инструментального средства для создания спецификаций ПБД.

Научная и практическая значимость результатов. Основные научные результаты по теме диссертации получены в рамках следующих программ и проектов: программы фундаментальных исследований СО РАН (проект IV.31.2.4.

«Методы и технологии разработки программного обеспечения для анализа, обработки и хранения разноформатных междисциплинарных данных и знаний, основанные на применении декларативных спецификаций форматов представления информации и моделей программных систем», 2010-2012 гг.); программы фундаментальных исследований Отделения нанотехнологий и информационных технологий РАН (проект № 3, 2009-2011 гг., № 4.1, 2012­2014 гг.); междисциплинарной программы 4.5.2. СО РАН (проект 4.5.2.1. «Интеллектные методы и инструментальные средства создания и анализа интегрированных распределённых информационно-аналитических и вычислительных систем для междисциплинарных исследований с применением ГИС, GRID- и Веб- технологий» 2007-2009 гг.); междисциплинарного интеграционного проекта СО РАН (проект № 121) и проектов РФФИ (08-07- 00163-а, 09-07-12017-офи_м, 11-07-00426-а, 11-07-92204-Монг_а).

Разработанные в рамках диссертационной работы технология и инструментальное средство позволяют значительно повысить эффективность, снизить трудозатраты и сократить сроки создания ПБД, обладающих ГИС-

функциональностью. Созданное программное обеспечение зарегистрировано в Федеральной службе по интеллектуальной собственности, патентам и товарным знакам [12,14,16]. Практическая значимость результатов определяется их использованием при создании интегрированных прикладных программных систем: «Муниципальная ГИС г. Иркутска», «Муниципальная информационная система градостроительной деятельности г. Иркутска», АИС «Управление многоквартирными домами», АИС «Отдел жилищного хозяйства», АИС «Топонимика г. Иркутска», АИС «Реестр геодезических съёмок», АИС «Единый общегородской регистр адресов объектов недвижимости».

Соответствие специальности. В соответствии с формулой специальности 05.13.11 - «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», диссертационная работа охватывает решение задач создания и сопровождения программных средств различного назначения и включает исследование моделей, методов и алгоритмов проектирования программ и программных систем, языков и программных инструментов для организации взаимодействия программ и программных систем, систем управления базами данных, человеко-машинных интерфейсов.

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

Отражённые в диссертации положения соответствуют пунктам 3 и 7 области исследования специальности 05.13.11.

Апробация работы. Основные результаты диссертационной работы, её отдельные положения, а также результаты конкретных прикладных исследований и разработок обсуждались на научных семинарах ИДСТУ СО РАН, на международных, региональных научных и научно-практических конференциях и совещаниях, на научных координационных советах СО РАН и на региональных совещаниях, посвященных методам и технологиям информатики, развитию

11 информационно-телекоммуникационной инфраструктуры и внедрению геоинформационных систем в управление территориальным развитием.

Результаты диссертационной работы докладывались и обсуждались на следующих научных конференциях: VI, VIII, IX Байкальских школах-семинарах «Математическое моделирование и информационные технологи» (г. Иркутск, 2005, 2006, 2007 гг.); X, XII, XIV, XVII, XVIII Байкальских Всероссийских конференциях «Информационные и математические технологии в науке и управлении» (г. Иркутск 2005, 2007, 2009, 2012, 2013 гг.); II, III Международных конференциях «Инфокоммуникационные и вычислительные технологии и системы» (г. Улан-Удэ - о. Байкал, 2006, 2010 гг.); «Ляпуновские чтения» (г. Иркутск, 2006-2013 гг.); Школа-семинар молодых ученых «Информационные технологии и моделирование социальных эколого-экономических систем» (Россия, г. Иркутск - Монголия, п. Ханх, 2008, 2013 гг.); 3-я Всероссийская

конференция «Винеровские чтения» (г. Иркутск, 2009 г.); Сибирский научно­практический семинар «Информационные технологии регионального и муниципального управления» (г. Барнаул, 2009 г.); Всероссийская конференция «Математическое моделирование и вычислительно-информационные технологии в междисциплинарных научных исследованиях» (г. Иркутск, 2011 г.);

Международная конференция «Математические и информационные технологии. МИТ 2011» (Сербия, г. Врнячка Баня, Черногория, г. Будва, 2011 г.); 17-я международная научная конференция «Системный анализ, управление и навигация» (г. Евпатория, 2012 г.).

Публикации. По теме диссертации опубликованы 11 статей в рецензируемых журналах из перечня ВАК, 3 в специальных выпусках периодических журналов, 1 монография, а также получены 3 свидетельства об официальной регистрации программ для ЭВМ Федеральной службы по интеллектуальной собственности, патентам и товарным знакам.

Личный вклад автора. Все выносимые на защиту научные положения получены соискателем лично. В основных научных работах по теме диссертации, опубликованных в соавторстве, лично соискателем разработаны: в

[10,11, 15, 47, 53-55] - технология создания ПБД, обладающих ГИС- функциональностью на основе спецификаций, [49, 53, 55, 57, 58] -

концептуальная модель ПБД, [15, 57, 60] - язык спецификаций ПБД, [8, 11, 12, 15, 20, 51, 55, 56] - инструментальное средство создания ПБД на основе декларативных спецификаций, [46, 48-50] - программная реализация картографического модуля, [14, 48]- библиотека для создания отчетов, [15] - прикладная АИС «Управление многоквартирными домами г. Иркутска», реализованная в рамках предложенной технологии.

Разработка алгоритмов обработки данных и программная реализация модуля для работы с БД получены в неделимом соавторстве с к.т.н. Хмельновым А.Е. Программная реализация всех упомянутых в диссертации библиотек, модулей и систем выполнена в рамках обозначенных ранее научно­исследовательских работ в отделе «Комплексных информационных систем» ИДСТУ СО РАН при непосредственном участии автора.

Структура и объем диссертации. Диссертационная работа состоит из введения, четырех глав, заключения и списка литературы, включающего 92 наименований, и приложений. Объем составляет 152 страницы, включая 117 страниц основного текста, 38 рисунок, 10 таблиц, список сокращений и условных обозначений, словарь терминов и понятий.

<< | >>
Источник: Фереферов Евгений Сергеевич. ТЕХНОЛОГИЯ АВТОМАТИЗАЦИИ СОЗДАНИЯ ПРИЛОЖЕНИЙ БАЗ ДАННЫХ С ГИС-ФУНКЦИОНАЛЬНОСТЬЮ НА ОСНОВЕ ИХ ДЕКЛАРАТИВНЫХ СПЕЦИФИКАЦИЙ. ДИССЕРТАЦИЯ на соискание ученой степени кандидата технических наук. Иркутск - 2014. 2014

Еще по теме Введение:

  1. ВВЕДЕНИЕ
  2. ВВЕДЕНИЕ
  3. Введение
  4. ВВЕДЕНИЕ
  5. ВВЕДЕНИЕ
  6. ВВЕДЕНИЕ
  7. Введение
  8. Введение
  9. ВВЕДЕНИЕ
  10. ВВЕДЕНИЕ
  11. Введение
  12. ВВЕДЕНИЕ