Применение аспектно-ориентированного подхода к созданию ортогональных долговременных объектных систем в архитектуре с веб-клиентом тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат технических наук Зудин, Андрей Борисович
- Специальность ВАК РФ05.13.11
- Количество страниц 137
Оглавление диссертации кандидат технических наук Зудин, Андрей Борисович
ВВЕДЕНИЕ.
1. ОБЪЕКТНЫЕ ОРТОГОНАЛЬНЫЕ СИСТЕМЫ ДОЛГОВРЕМЕННОГО ПРОГРАММИРОВАНИЯ.
1.1 Системы долговременного программирования.
1.2 Основные понятия и свойства ООСДП.
1.2.1 Персистентность (Долговременность).
1.2.2 Принципы ортогонального долговременного программирования.
1.2.3 Объектные ортогональные долговременные системы.
1.3 Обзор проблемы и выбор путей решения.
1.3.1 Интеграция системы типов и модели данных.
1.3.2 Механизмы связывания.
1.3.3 Параллельный доступ.
Выводы.
2. ОБЩИЕ ПРИНЦИПЫ ПОСТРОЕНИЯ Р\¥ЕВ.
2.1. Аспектно-ориентированное программирование.
2.2. Подходы к реализации распределенных об ьекггных ортогональных долговременных систем.
2.3. Выбор модели вычислений.
2.3.1. Логическое представление системы.
2.3.2. Техническая реализация.
2.3.3. Работа с распределенными данными.
2.4. Метаобъекты в Р\УЕВ.
2.4.1. Поддержка параллельных вычислений различными клиентами.
2.4.2. Синхронизация доступа в рамках одного клиента.
2.4.3. Управление кэш памятью объектов.
Выводы.
3. МАТЕМАТИЧЕСКИЕ МОДЕЛИ ИСПОЛНЕНИЯ ЗАПРОСОВ В СИСТЕМАХ ДОЛГОВРЕМЕННОГО ХРАНЕНИЯ.
3.1 Описание системы.
3.1.1. Простая дисциплина обслуживания.
3.1.2. Дисциплины обслуживания с параллельной обработкой.
3.2. Дисциплина исполнения в системе с общим разделяемым ресурсом.
3.2.1. Описание системы.
3.2.2. Стохастическая модель системы.
3.2.3.Вычисление показателей эффективности работы системы.
3.2.4. Пример составления СУР.
3.3. Имитационная модель.
3.3.1. Реализация имитационной модели. Результаты расчетов.
Выводы.
4. ПРАКТИЧЕСКАЯ РЕАЛИЗАЦИЯ ПРЕДЛАГАЕМЫХ РЕШЕНИЙ.
4.1. Архитектура ООСДП PWEB.
4.2. Описание мил-аобъектного протокола.
4.3. Описание стандартных метаобъектов PWEB.
4.3.1. Назначение метаобъекта экземпляру класса.
4.4. Реализация транзакционного подхода обеспечения параллельного доступа в системе PWEB.
4.5. Менеджер обьектов.
4.6. Менеджер классов.
4.7. Менеджер транзакций.
Рекомендованный список диссертаций по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Аспектный подход к созданию объектно-ориентированных систем управления базами данных1999 год, кандидат физико-математических наук Книжник, Константин Александрович
Разработка методики построения унифицированных трехзвенных объектно-ориентированных приложений2007 год, кандидат технических наук Олейник, Павел Петрович
Математическое и программное обеспечение информационных систем реального времени с гетерогенной средой распределенных СУБД2011 год, кандидат технических наук Рыков, Сергей Александрович
Разработка интеллектуальных геоинформационных систем на основе настраиваемой объектной модели предметной области2004 год, кандидат технических наук Шпаков, Михаил Владимирович
Параллельная распределенная объектно-ориентированная вычислительная среда для конечно-элементного анализа2004 год, кандидат физико-математических наук Рычков, Владимир Николаевич
Введение диссертации (часть автореферата) на тему «Применение аспектно-ориентированного подхода к созданию ортогональных долговременных объектных систем в архитектуре с веб-клиентом»
Задача управления данными, у которых время жизни может превышать время жизни программной системы, которая оперирует ими, является важной и в теоретическом и в практическом плане. Сопряжение кратковременных вычислений с долговременными данными поднимает ряд фундаментальных вопросов типа и тождественности. Также возникает целый ряд важных инженерных вопросов в связи с необходимостью эффективно и согласовано перемещать данные между временными и надежными хранилищами.
Для работы с подобными данными создаются системы долговременного программирования. Одной из важных задач долговременного программирования является создание программных средств, которые оперируют долговечными, конкурентно доступными и потенциально большими объемами информации. Такие программные средства будем называть долговременными' или долговечными (ДПС). Типичными представителями ДПС являются, например, CAD/CAM системы, системы автоматизации офисов, CASE средства, среды разработки программных средств, интегрированные системы управления медицинскими учреждениями, большие научные базы данных и программы их анализа, географические информационные системы, системы моделирования окружающей среды, объектно-ориентированные базы данных и системы моделирования процессов.
ДПС (Persistent Application Systems (PAS)) - приобретают все большую социальную и экономическую значимость. Они потенциально обладают длительным временем жизни, средствами поддержки одновременного доступа со стороны пользователей и состоят из большого объема^ данных и программного кода. В связи с этим актуальными являются исследования, направленные на разработку принципов и подходов к построению персистентных систем.
Среди исследуемых подходов наибольший интерес представляют ортогональные системы долговременного программирования (ОСДП) и их развитие - объектные ОСДП.
ОСДП предназначены улучшить системную архитектуру, упростить поддержку И' увеличить производительность ДПС. Абстрагирование от времени жизни данных позволяет создавать и манипулировать объектами независимо от их типа и посредством этого совместить программную модель данных и модель данных СУБД. В результате увеличивается продуктивность разработчиков ДПС систем.
Объектные ОСДП (ООСДП), появлению которых во многом способствовало развитие Интернет, ставят перед своими разработчиками множество различных вопросов. Задачи, в которых используются ООСДП, настолько различны по своим требованиям, что практически невозможно разработать универсальную систему, которая предоставляет эффективные решения для всех возможных задач.
Особенностью работы с долговременными объектами является то, что она затрагивает такие аспекты, которые не отражены в универсальных алгоритмических языках программирования: представление объектов во внешней памяти, параллельный доступ, эффективность и т.д. Эти аспекты безусловно всегда будут влиять на ортогональность программного кода работающего с временными или с долговременными объектами.
В работе предложен аспектно-ориентированный подход позволяющий вынести код, отвечающий за реализацию перечисленных выше аспектов, на уровень метаклассов. Таким образом, удалось минимизировать отличия программного кода для работы с разными объектами и, тем самым, упростить повторное использование кода.
Представленная в работе ООСДП на основе тонкого клиента, являясь эффективной реализацией ортогональной стабильности объектов, является так же и средой разработки и выполнения для информационных Интернет систем, где вся разработка может вестись на основе клиентского языка сценариев, не требуя изменений на других уровнях многозвенной архитектуры.
Целью работы является исследование свойств систем долговременного программирования и создание прототипа ортогональной объектной системы долговременного программирования на основе аспектно-ориентированного подхода, позволяющего эффективно организовать хранилища объектов для информационных систем с тонким клиентом, функционирующего на последнем уровне многозвенной архитектуры.
Для достижения поставленной цели в работе сформулированы и решены следующие задачи: исследованы возможности и особенности существующих универсальных ООСДП и на базе этого анализа, с учетом требований, предъявляемыми тонкими клиентами, строится метамодель для создания, хранения и управления доступом к объектам в хранилище;
- исследована возможность реализации ООСДП, построенной на основе этой метамодели, и возможность реализации в рамках данной метамодели различных методов управления доступом к объектам, удовлетворяющих требованиям различных классов приложений. определены базовые метаклассы, реализующие наиболее распространенные методы управления объектами и позволяющие легко определять собственные стратегии, а также эффективные алгоритмы для объектного хранилища, обеспечивающие высокую степень масштабируемости и наделено сти; особое внимание было уделено распараллеливанию процессов выполнения объектных запросов различных клиентов;
- разработаны модели параллельной обработки запросов, позволяющие оценить значения характеристик процесса исполнения запросов;
- показаны практические возможности выполнения соответствия требованиям парадигмы повторного использования, обеспечения всестороннего контроля при работе с долговременными объектами, поддержки распределенной работы для обеспечения работы произвольного числа клиентов, расположенных на различных узлах сети. На защиту выносятся:
1. Результаты анализа систем долговременного хранения, выделяющие основные свойства систем, взаимосвязи между программным обеспечением, свойствами объектов и методами хранения
2. Методы организации параллельной обработки и требования к языкам программирования для работы с долговременными объектами и их реализация на основе аспектно-ориентированного подхода;
3. Математические модели параллельной обработки запросов в системах долговременного программирования.
4. Методы программной реализации прототипа ортогональной объектной системы долговременного программирования.
Научная новизна полученных результатов состоит в выделении связей и установлении закономерностей при создании и реализации систем долговременного программирования на основе аспектно-ориентированного подхода, разработке концепции прототипа ООСДП для работы \¥еЬ-клиентов.
Практическая ценность результатов диссертации заключается в разработке рекомендаций и конкретных решений для создания компонент программного обеспечения системы долговременного программирования.
Достоверность и обоснованность результатов диссертации обусловлены их согласованностью с известными данными, опубликованными в работах отечественных и зарубежных авторов, и подтверждаются данными об успешном применении при разработке конкретного программного обеспечения различного назначения.
Методы исследований
При решении поставленных в диссертации задач применялись методы теории систем, теории очередей, системного программирования, объектного программирования.
Реализация и внедрение результатов
Результаты, полученные при выполнении диссертационной работы использовались при создании специализированного программного обеспечения, при создании компонентов системы долговременного программирования в .
Апробация работы
Основные результаты диссертации докладывались и обсуждались на отечественных и зарубежных научно-технических конференциях: Международная конференция «Ломоносов-2003», (Москва, 2003), Научная конференция «Ломоносовские Чтения», Секция Вычислительной Математики и Кибернетики, (Москва, НИВЦ, 2003), ХЬУ1 Всероссийская конференция по проблемам математики, информатики, физики и химии. (Москва, РУДН, 2010), 2-я Международная научно-практическая конференция. Современные информационные компьютерные технологии — тсГГ - 2010, (Беларусь, Гродно, 2010).
Публикации
Результаты диссертации отражены в 9 опубликованных печатных работах.
Похожие диссертационные работы по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК
Модели и методы параллельной асинхронной переработки информации в графодинамической ассоциативной памяти2000 год, кандидат технических наук Гапонов, Павел Анатольевич
Разработка специального математического и программного обеспечения многозвенных интранет-ориентированных систем обработки транзакций2010 год, кандидат технических наук Копылов, Михаил Васильевич
Нечисловая обработка информации на вычислительной машине нетрадиционной архитектуры потока данных1999 год, кандидат технических наук Провоторова, Анна Олеговна
Разработка системы поддержки объектных представлений на основе функционального интерфейса в объектно-ориентированных базах данных САПР СБИС2005 год, кандидат технических наук Дубровин, Станислав Александрович
Разработка гетерогенной объектной кластерной среды для автоматизированного проектирования распределенных приложений2002 год, кандидат технических наук Курилов, Леонид Сергеевич
Заключение диссертации по теме «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», Зудин, Андрей Борисович
ЗАКЛЮЧЕНИЕ. ОБЩИЕ ВЫВОДЫ
1. Обзор существующих теоретических и практических проблем, возникающих при создании ортогональных долговременных систем, показал необходимость использования более гибких подходов на этапе проектирования, обеспечивающих сокращение этапов разработки и отладки программ.
2. На основе анализа существующих подходов, алгоритмов и современных теоретических достижений в управлении долговременными данными создана метамодель, которая позволяет реализовать любую из известных стратегий управления транзакциями и параллельным доступом к долговременным объектам, а также создавать специфичные для конкретной задачи модели поведения системы.
3. Разработаны математические модели для анализа процесса параллельной обработки запросов, позволяющие вычислять время обработки, вероятности потери запросов, определять параметры хранилища данных.
4. Разработан прототип системы PWEB обладающий базовыми возможностями объектно-ориентированной ортогональной системы долговременного программирования, позволяющими с использованием метаобъектного протокола расширять базовую функциональность системы до необходимого пользователю уровня.
5. На основе использования метаобъектного протокола, для решения проблемы объединения системы типов языка программирования, и модели данных СУБД предложен способ описания стабильных типов на языке XML. Как следствие ортогонального использования долговременных и кратковременных объектов, стандартный механизм связывания языка сценариев JavaScript был расширен механизмом связывания имени с сохраненным объектом в хранилище. Связывание также происходит непосредственно с прямым участием метаобъектов.
6. Эффективное использование метаобъектного протокола обуславливает необходимость тщательной разработки метаобъектного интерфейса и, таким образом, определять базовые классы. В соответствии с этим разработаны стандартные метаклассы для реализации оптимистической и пессимистической модели синхронизации. Разработан протокол взаимодействия хранилища с клиентом при фиксации транзакций.
7. Показано, что системы, подобные Р\УЕВ целесообразно строить по модульному принципу, с разбиением всех компонент системы на логически обособленные модули, взаимодействующие друг с другом посредством четко определенных интерфейсов. Это позволяет использовать различные реализации для каждого модуля с последующей настройкой под конкретные конфигурации для повышения производительности системы и удовлетворения специфических требований целевых информационных систем. Эффективность различных алгоритмов и их пригодность для различных типов информационных систем можно оценить, экспериментируя с различными реализациями модулей, отвечающими за организацию кэш памяти, обработку транзакций, и т.д.
Работы целесообразно продолжить в следующих направлениях:
• Исследования в области контроля над параллельными взаимодействующими вычислениями. Представляют интерес изучение и разработка новых механизмов, с помощью которых распределенные параллельные вычисления могут взаимодействовать друг с другом в рамках Р>УЕВ.
• Исследования в области эффективной поддержки параллельных вычислений путем обеспечения соответствующими ресурсами. Здесь важно более подробно проработать вопросы управления общими ресурсами в распределенных долговременных ортогональных системах программирования.
• Расширение используемой системы типов в сторону объектно-ориентированной модели.
• Повышение степени масштабируемости системы.
Список литературы диссертационного исследования кандидат технических наук Зудин, Андрей Борисович, 2010 год
1. Башарин Г.П. Лекции по математической теории телетрафика. М.: Изд-во РУДН, 2004. С. 52 83
2. Боев В.Д. Моделирование систем / Инструментальные средства GPSS WORLD. С.-Пб.: Изд-во "БВХ-Петербург", 2004. 350 с.
3. Бочаров П.П., Печинкин A.B. Теория массового обслуживания. М.: Изд-во РУДН, 1995. 529 с.
4. Бочаров П.П., Шлумпер Л.О. Однолинейная система массового обслуживания с фоновыми запросми / / АиТ. 2005. №6. С. 74 88.
5. Бэкон Д., Харрис Т. Операционные системы. Параллельные и распределенные системы. СПб.: Питер; Киев: Издательская группа BHV, 2004. 840 с.
6. Бычков С.П., Храмов A.A. Разработка моделей в системе моделирования GPSS. М.: МИФИ, 1997. 32 с.
7. Введение в информационный бизнес / Под ред. акад. Тихомирова В.П. и проф. Хорошилова A.B. М.: Финансы и статистика, 1996. - 246с.
8. Вишневский В.М. Теоретические основы проектирования компьютерных сетей / / М.: Изд-во "Техносфера", 2003.
9. Гнеденко Б.В., Коваленко И.Н. Введение в теорию массового обслуживания. М.: Наука, Гл. ред. физ.-мат. лит., 1987. 336 с.
10. Гордеев A.B., Молчанов А.Ю. Системное программное обеспечение. -СПб.: Питер, 2002. 736 с.
11. Зелковиц М., Шоу А., Гэннон Д. Принципы разработки программного обеспечения. М.: Мир, 1982. - 368 с.
12. Зудин А.Б. "Спецификация требований к долговременным объектным системам на основе сравнительного анализа моделей сохраняемостиобъектов". Материалы международной конференции «Ломоносов-2003», М.:, МГУ, 2003, с. 7.
13. Зудин А.Б. Системы долговременного программирования. // Мир компьютерной автоматизации. М.: №3, 2003 с. 50 - 56.
14. Зудин А.Б. Концепции интеграции языков программирования и баз данных. Мир компьютерной автоматизации, М.:, № 6, 2003. с.
15. Зудин А.Б. Методы хранения объектов в системах долговременного программирования // Математическое и программное обеспечение вычислительных систем: Межвуз. сб. науч. тр. / Под ред. А.Н. Пылькина М.: Горячая линия - Телеком, 2007. с. 92-95.
16. Зудин А.Б. Системы долговременного программирования. // Качество. Инновации. Образование. 9, 2008. с. 17 -20.
17. Зудин А.Б. Модель обслуживания запросов в системах долговременного программирования // Проблемы передачи и обработки информации в сетях и системах телекоммуникаций. Материалы 16-й международной научно-технической конференции. -Рязань, 2010. с. 83 85.
18. Зудин А.Б. Модель доступа в системах долговременного программирования // XLVI Всероссийская конференция по проблемам математики, инфоматики, физики и химии. Секции математики и информатики. Тезисы докладов. М.: РУДН, 2010. с. 53-54.
19. Зудин А.Б. Система долговременного программирования // Современные информационные компьютерные технологии (mclT2010). 2 Международная научно-практическая конференция. Беларусь, Гродно, 2010.
20. Камер Дуглас Э. Компьютерные сети и Internet. Разработка приложений для Internet : Пер. с англ. М.: Изд. дом "Вильяме", 2002. -640 с.
21. Климов Г.П. Стохастические системы обслуживания. М.: Наука. 1966 - 244 с.
22. Кормен Т.Х., Лейзерсон Ч.И., Ривест Р., Штайн К. Алгоритмы: построение и анализ. 2-е изд. -М.: Вильяме, 2005. 1296 с.
23. Матюшенко С.И., Спесивов С.С. Основы имитационного моделирования в среде GPSS WORLD. М.: Изд-во РУДН, 2006.
24. Семенов Ю.А. Сети Интернет. Архитектура и протоколы. М.:, изд. "Сирин". 1998.-424 с.
25. Слама Д., Гарбис Д., Рассел П. Корпоративные системы на основ CORBA. -М.: Издательский дом «Вильяме», 2000. 368 с.
26. Советов Б.Я. Моделирование систем. М.: Высшая школа. 1995. 372 с.
27. Спортак М., Паппас Ф. и др. Компьютерные сети и сетевые технологии, ДиаСофт, 2002. 736 с.
28. Танненбаум Э., М. Ван Стен. Распределенные системы. Принципы и парадигмы. СПб.: Питер, 2003. - 877 с.
29. Томасян А. Управление параллельной обработкой транзакций: Методы, Производительность, Анализ // Перевод. "Вычислительные Системы и Сети", 1998.
30. Ульман Дж. Основы систем баз данных: Пер. с англ. М.: Финансы и статистика. 1983. - 572 с.
31. Хелд Г. Технологии передачи данных. СПб.: Питер. 2003. - 720 с.
32. Цимбал А., Анпшна М. Технологии создания распределенных систем.
33. Для профессионалов. СПб.: Питер, 2003.- 576 с.
34. Чадин П. Многоверсионность данных и управление параллельными транзакциями / / "Открытые системы", 2005.
35. Шенк Д.Д. Руководство Novell. Технология клиент/сервер и ее приложения. М.: Лори. 1995. - 272 с.36. www.gpss.ru Имитационное моделирование с использованием GPSS.37. www.minutemansoftware.com Свободнораспространяемая версия GPSS WORLD.
36. Albano, A., Ghelli, G., Occhiuto, M. E., and Orsini, R. "A Strongly Typed, Interactive Object-Oriented Database Programming Language"
37. Astrova I., "Evaluating Persistence Models", Proceedings of the Workshop on Computer Science and Information Technologies CSIT'2000 UFA, Russia, 2000.
38. Aspect-Oriented software development network, www.aosd.net
39. The Aspect Programming Guide 1998-2002, Xerox Corporation.
40. Atkinson, M.P., Bailey, P.J., Chisholm, K.J., Cockshott, W.P. & Morrison, R., 1983. An Approach to Persistent Programming. Computer Journal 26, 4 pp 360-365.
41. Atkinson, M.P. & Morrison, R., 1985. Procedures as Persistent Data Objects. ACM Transactions on Programming Languages and Systems 7,4
42. Atkinson, M.P. & Morrison, R., 1986. Integrated Persistent Programming Systems. In Proc. 19th International Conference on Systems Sciences, Hawaii.
43. Atkinson, M.P. & Morrison, R. "Orthogonally Persistent Object Systems". VLDB Journal 4, 3 (1995) pp 319-401.
44. Cardelli, L. & MacQueen, D.B., 1988. Persistence and Type Abstraction. In Data Types and Persistence, Atkinson, M.P., Buneman, O.P. & Morrison, R. (ed.), Springer-Verlag.
45. Cardelli, L. & Wegner, P., 1985. On Understanding Types, Data Abstraction and Polymorphism. ACM Computing Surveys 17, 4.
46. Codd E. F., "Extending the Database Relational Model to Capture More Meaning", ACM Trans. Database Systems, 4, #4 (December 1979).
47. Connor, R. C. H., 1990. Types and Polymorphism in Persistent Programming Systems. Ph. D. Thesis, University of St Andrews.
48. Bancilhon F., Khoshafian, S. "A Calculus of Complex Objects", Proc. ACM SIGACT-SIGMOD Sypm. on Principles of Database Systems, 1986.
49. Bernstein, P.A., Handzilacos, N. Goodman, "Concurrency Control and Recovery in Database Systems", Addison-Wesley, 1987.
50. Checn, P."The EntityHRelationship Model — Toward a Unified View of Data", ACMP Trans, database Systems, 1, No.l (March 1976).
51. Gray, J., Reuter, A. "Transaction Processing: Concepts and Techniques", Corrected Second Printing, Morgan Kaufmann, 1993. Section 7.6.
52. Kiczales, J. Lamping, A. Mendhekar, etc. Aspect-oriented programming. Published in proceedings of the Europeen Conference on Object-Oriented Programming. Finland, Springer-Verlag LNCS 1241. June 1997.
53. Lampson, B. W., Sturgis , H. E.: "Crash Recovery in a Distributed Data Storage System". Technical report, XEROX Research, Palo Alto, June 1979.
54. McCarthy, J., Abrahams, P.W., Edwards, D.J., Hart, T.P. & Levin, M.I., 1962. The Lisp Programmers' Manual. M.I.T. Press, Cambridge , Massachusetts.
55. Meta Object Facility (MOF) Specification. Version 1.3. March, 2000.
56. Morrison, R., Brown, A.L., Dearie, A. & Atkinson, M.P., 1990. On the Classification of Binding Mechanisms. Information Processing Letters 34.
57. O'Brien, P., Bullis, B. and Schaffert, C. "Persistent and Shared Objects in Trellis/Owl"
58. O'Neil, O. "Database Principles, Programming, Performance", Morgan Kaufmann, 1994, Section 9.5
59. Papadimitriou, C. "The Theory of Database Concurrency Control", Computer Science Press, 1986.
60. Schmidt, J.W. "Some High Level Language Constructs for Data of Type Relation", ACMP Trans. Database Systems, 2(3), Sept. 1977.
61. Sheard, T. & Stemple, D., 1989. Automatic Verification of Database Transaction Safety. ACM Transactions on Database Systems 12, 3
62. Stonebraker, M. & Kemnitz, G., 1991. The POSTGRES Next Generation Database Management System. Communications of the ACM 34, 10.
63. Stratchey, C., 1967. Fundamental Concepts in Programming Languages. Oxford University Press, Oxford.
64. Tennent, R.D., 1977. Language Design Methods Based on Semantic Principles. Acta Informática 8 pp. 97-112.68. van Wijngaarden, A., Mailloux, B.J., Peck, J.E.L. & Koster, C.H.A. 1969. Report on the Algorithmic Language ALGOL 68.
Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.