Автореферат (1148250)
Текст из файла
На правах рукописиГРИГОРЬЕВА Анастасия ВикторовнаИНСТРУМЕНТЫ АСПЕКТНО-ОРИЕНТИРОВАННОГОПРОГРАММИРОВАНИЯ ОБЛАЧНЫХ ВЕБ-ПРИЛОЖЕНИЙВ MICROSOFT AZURE: РАЗРАБОТКА И РЕАЛИЗАЦИЯВ СИСТЕМЕ ASPECT.NET05.13.11 — Математическое и программное обеспечениевычислительных машин, комплексов и компьютерных сетейАВТОРЕФЕРАТдиссертации на соискание ученой степеникандидата технических наукСанкт-Петербург2016Работа выполнена на кафедре информатики федерального государственного бюджетного образовательного учреждения высшего образования «Санкт-Петербургский государственный университет».Научный руководитель:ТУЛУПЬЕВ Александр Львовичдокторфизико-математическихнаук,доцент,федеральноегосударственноебюджетноеобразовательное учреждение высшего образования «СанктПетербургский государственный университет», кафедра информатики, профессорОфициальные оппоненты:МУСАЕВ Александр Азеровичдоктортехническихнаук,профессор,федеральноегосударственноебюджетноеобразовательноеучреждениевысшегообразования«Санкт-Петербургский государственный технологическийинститут» (технический университет), факультет информационных технологий и управления, деканБУРАКОВ Вадим Витальевичдоктортехническихнаук,доцент,федеральноегосударственноеавтономноеобразовательноеучреждениевысшегообразования«Санкт-Петербургский государственный университет аэрокосмического приборостроения» (ГУАП), кафедра компьютерных технологий и программной инженерии институтавычислительных систем и программирования, профессорВедущая организация:федеральное государственное автономное образовательноеучреждение высшего образования «Санкт-Петербургскийнациональный исследовательский университет информационных технологий, механики и оптики» (ИТМО)Защита состоится “22” сентября 2016 г.
в 17:00 часов на заседании диссертационного совета Д 212.232.51 на базе Санкт-Петербургского государственного университета по адресу:198504. Санкт-Петербург. Старый Петергоф. Университетский пр., 28, математико-механическийфакультет, ауд. 405.С диссертацией можно ознакомиться в Научной библиотеке им.М. Горького Санкт-Петербургского государственного университета по адресу: 199034, СанктПетербург, Университетская наб., 7-9 и на сайте https://disser.spbu.ru/disser/soiskatelyu-uchjonojstepeni/dis-list/details/14/994.htmlАвтореферат разослан “____” __________ 2016 г.Ученый секретарьдиссертационного советаД 212.232.51, д.ф.-м.н., профессорДемьянович Юрий Казимирович2Общая характеристика работыАктуальность темы исследования.
В работе рассматриваются два перспективных направления в области развития информационных технологий:облачные вычисления на платформе Microsoft Azure и аспектноориентированное программирование (АОП). Перспективность облачныхприложений не вызывает сомнений: в настоящее время почти любая крупнаякомпания предлагает свои облачные продукты от хранения личных файлов(Dropbox) и до офисных процессоров (Microsoft Office 360), от программнойбиблиотеки распознавания образов (ABBYY Cloud OCR SDK) и до целыхсред разработки (Microsoft Visual Studio Online).В свою очередь, АОП применяется для выделения “сквозной функциональности” (распределенной по многим уровням объектно-ориентированнойиерархии классов целевой системы) в один модуль — аспект. После такойоперации улучшаются метрики качества исходного кода целевой системы,облегчается тестирование как аспекта, так и бизнес-логики.Актуальность темы исследования обусловлена необходимостью повышения качества, производительности и облегчения сопровождения облачныхвеб-приложений.
При этом актуальной является задача идентификациисквозной функциональности (авторизация, кэширование, протоколированиеи пр.), которая встречается во многих веб-приложениях, а затем ее реализации: отделение от бизнес-логики в отдельные аспекты, пригодные для повторного использования. Таким образом, веб-приложение будет сфокусировано на выполнении задач предметной области, в то время как ряд нефункциональных требований переносится в сторонний проект — библиотеку аспектов. С учетом того, что для облачных веб-приложений уже существуетбиблиотека Microsoft Enterprise Library Integration Pack, компоненты которойоблегчают реализацию сквозной функциональности, также актуальной является реализация библиотеки аспектов с их помощью.Степень разработанности темы исследования. Для аспектноориентированной разработки программ применяется множество инструментов, самыми популярными из которых являются AspectJ и PostSharp (по данным Google Trends).
Однако анализ предметной области, проведенный в процессе написания работы, показал, что при изменении поведения программы спомощью современных АОП-инструментов для платформы Microsoft.NETотсутствует бесшовная интеграция аспектов и целевого исходного кода системы. Термин “бесшовная интеграция” можно раскрыть следующим образом:это такое расширение функциональности целевого кода, при котором не требуется вносить изменения в целевой проект, включая его код, файлы настроек и свойства проекта.В качестве примера инструмента АОП, обеспечивающего бесшовноеприменение аспектов, в работе описывается и анализируется система Aspect.NET(средааспектно-ориентированнойразработкипрограмм3для платформы Microsoft.NET), разработанная в лаборатории Javaтехнологии математико-механического факультета СПбГУ под научным руководством профессора В.
О. Сафонова.Впервые вопросы применения Aspect.NET к разработке веб-приложенийисследовал в 2010 г. Нгуен В.Д., аспирант кафедры информатики математико-механического факультета СПбГУ. Результатом его работы стала библиотека с универсальными аспектами для безопасности, криптографии и расширения пользовательского Web-интерфейса приложений на базе ASP.NET.Проведенные им оценки производительности результирующей сборки послеприменения Aspect.NET показали, что накладные расходы на вызовы действий аспектов минимальны и соразмерны со вставкой их в исходный кодвручную.Объектом исследования являются инфраструктура, программные компоненты и сервисы платформы облачных вычислений Microsoft Azure,а также модели, методы и алгоритмы применения аспектов на базе инструмента Aspect.NET.Предметом исследования является возможность улучшения качестваисходного кода облачных веб-приложений с помощью АОП-рефакторинга.Кроме того, исследуется процесс разработки, реализации и применения универсальных аспектов, предназначенных для бесшовного расширения облачных веб-приложений, в том числе с использованием стороннего фреймворкаMicrosoft Enterprise Library Integration Pack.Целью данной работы является повышение с помощью АОП качестваи производительности, а также улучшение сопровождаемости облачных вебприложений на платформе Microsoft Azure.Достижение поставленной цели осуществляется решением следующихзадач.1.
Разработать и реализовать библиотеку аспектов, расширяющуюоблачные веб-приложения следующими видами сквозной функциональности: перенаправление протоколирования в хранилище отладочнойинформации Microsoft Azure, кэширование информации, получаемой изSQL Azure, обработка исключений.2. Предложить методику, позволяющую перехватывать обратныевызовы методов от инфраструктуры Microsoft Azure, не затрагиваяпри этом целевой код.3. Найти способ публикации в облаке АОП-программ, разработанных с помощью Aspect.NET, а также обеспечить возможность их отладки в Microsoft Visual Studio.4. Разработать метод бесшовного расширения функциональностиоблачных веб-приложений с помощью библиотеки Microsoft EnterpriseLibrary и Aspect.NET.45. Разработать методику аспектно-ориентированного рефакторингадля улучшения метрик исходного кода веб-приложения с помощью системы Aspect.NET.Цель и задачи диссертации соответствуют области исследований паспорта специальности 05.13.11 «Математическое и программное обеспечениевычислительных машин, комплексов и компьютерных сетей» – пункту 1 (модели, методы и алгоритмы проектирования и анализа программ и программныхсистем,ихэквивалентныхпреобразований,верификациии тестирования), пункту 2 (языки программирования и системы программирования, семантика программ), пункту 3 (модели, методы, алгоритмы, языкии программные инструменты для организации взаимодействия программ ипрограммных систем) и пункту 9 (модели, методы, алгоритмы и программнаяинфраструктура для организации глобально распределенной обработки данных).Методология и методы исследования.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.