Введение к работе
Задача управления данными, у которых время жизни может превышать время жизни программной системы, которая оперирует ими, является важной и в теоретическом и в практическом плане. Сопряжение кратковременных вычислений с долговременными данными поднимает ряд фундаментальных вопросов типа и тождественности. Также возникает целый ряд важных инженерных вопросов в связи с необходимостью эффективно и согласовано перемещать данные между временными и надежными хранилищами.
Для работы с подобными данными создаются системы долговременного программирования. Одной из важных задач долговременного программирования является создание программных средств, которые оперируют долговечными, конкурентно доступными и потенциально большими объемами информации. Такие программные средства принято называть долговременными (ДПС) (Persistent Application Systems (PAS)). Типичными представителями ДПС являются, например, CAD/САМ системы, системы автоматизации офисов, CASE средства, среды разработки программных средств, интегрированные системы управления медицинскими учреждениями, большие научные базы данных и программы их анализа, географические информационные системы, системы моделирования окружающей среды, объектно-ориентированные базы данных и системы моделирования процессов.
Среди известных подходов наибольший интерес представляют ортогональные системы долговременного программирования (ОСДП) и их развитие - объектные ОСДП.
ОСДП предназначены улучшить системную архитектуру, упростить поддержку и увеличить производительность ДПС. Абстрагирование от времени жизни данных позволяет создавать и манипулировать объектами независимо от их типа и посредством этого совместить программную модель данных и модель данных СУБД. В результате увеличивается продуктивность разработчиков ДПС систем.
Объектные ОСДП (ООСДП), появлению которых во многом способствовало развитие Интернет, ставят перед своими разработчиками множество различных вопросов. Особенностью работы с долговременными объектами является то, что она затрагивает такие аспекты, которые не отражены в
универсальных алгоритмических языках программирования: представление объектов во внешней памяти, параллельный доступ, эффективность и т.д. Эти аспекты всегда будут влиять на ортогональность программного кода работающего с временными или с долговременными объектами.
Аспектно-ориентированный подход позволяет минимизировать отличия программного кода для работы с разными объектами и, тем самым, упростить повторное использование кода.
Представленная в работе ООСДП на основе тонкого клиента, являясь эффективной реализацией ортогональной стабильности объектов, является так же и средой разработки и выполнения для информационных Интернет систем, где вся разработка может вестись на основе клиентского языка сценариев, не требуя изменений на других уровнях многозвенной архитектуры.
Опираясь на известные данные о разработке программных систем, можно сделать вывод, что ДПС приобретают все большую социальную и экономическую значимость. Они потенциально обладают длительным временем жизни, средствами поддержки одновременного доступа со стороны пользователей и состоят из большого объема данных и программного кода. В связи с этим актуальными являются исследования, направленные на разработку принципов и подходов к построению персистентных систем.
Целью работы является исследование свойств систем долговременного программирования и создание прототипа ортогональной объектной системы долговременного программирования на основе аспектно-ориентированного подхода, позволяющего эффективно организовать хранилища объектов для информационных систем с тонким клиентом, функционирующего на последнем уровне многозвенной архитектуры.
Для достижения поставленной цели в работе сформулированы и решены следующие задачи:
исследованы возможности и особенности существующих универсальных ООСДП и на базе этого анализа, с учетом требований, предъявляемых тонкими клиентами, строится метамодель для создания, хранения и управления доступом к объектам в хранилище;
исследована возможность реализации ООСДП, построенной на основе этой метамодели, и возможность реализации в рамках данной метамодели различных методов управления доступом к объектам, удовлетворяющих требованиям различных классов приложений.
определены базовые метаклассы, реализующие наиболее распространенные методы управления объектами и позволяющие легко определять собственные стратегии, а также эффективные алгоритмы для объектного хранилища, обеспечивающие высокую степень масштабируемости и надежности, возможность распараллеливания процессов выполнения объектных запросов;
- разработаны модели параллельной обработки запросов, позволяющие оценить значения характеристик процесса исполнения запросов;
показаны практические возможности выполнения соответствия требованиям парадигмы повторного использования, обеспечения всестороннего контроля при работе с долговременными объектами, поддержки распределенной работы для обеспечения работы произвольного числа клиентов, расположенных на различных узлах сети.
На защиту выносятся:
Результаты анализа систем долговременного хранения, выделяющие основные свойства систем, взаимосвязи между программным обеспечением, свойствами объектов и методами хранения.
Методы организации параллельной обработки и требования к языкам программирования для работы с долговременными объектами и их реализация на основе аспектно-ориентированного подхода.
Математические модели параллельной обработки запросов в системах долговременного программирования.
Методы программной реализации прототипа ортогональной объектной системы долговременного программирования.
Научная новизна полученных результатов состоит в вявлении связей и установлении закономерностей при создании и реализации систем долговременного программирования на основе аспектно-ориентированного подхода, разработке концепции прототипа ООСДП для работы Web-клиентов. Разработке математических моделей для расчета характеристик процесса параллельной обработки запросов.
Практическая ценность результатов диссертации заключается в разработке рекомендаций и конкретных решений для создания компонент программного обеспечения системы долговременного программирования.
Достоверность и обоснованность результатов диссертации обусловлены их согласованностью с известными данными, опубликованными в
работах отечественных и зарубежных авторов, и подтверждаются данными об успешном применении при разработке конкретного программного обеспечения различного назначения.
Методы исследований
При решении поставленных в диссертации задач применялись методы теории систем, теории очередей, системного программирования, объектного программирования.
Реализация и внедрение результатов
Результаты, полученные при выполнении диссертационной работы, использовались в ООО «X-RING» при создании специализированного программного обеспечения для МВД России, при создании компонентов системы долговременного программирования в Интернет системе для Торгово-промышленной палаты России.
Апробация работы
Основные результаты диссертации докладывались и обсуждались на отечественных и зарубежных научно-технических конференциях: Международная конференция «Ломоносов-2003», (Москва, 2003), Научная конференция «Ломоносовские Чтения», Секция Вычислительной Математики и Кибернетики, (Москва, НИВЦ, 2003), XLVI Всероссийская конференция по проблемам математики, информатики, физики и химии. (Москва, РУДН, 2010), 2-я Международная научно-практическая конференция. Современные информационные компьютерные технологии - mcIT - 2010, (Беларусь, Гродно, 2010).
Публикации
Результаты диссертации отражены в 9 опубликованных печатных работах.
Структура и объем диссертации
Диссертация состоит из введения, четырех глав, списка литературы и приложения. Объем диссертации 137 страниц.