Главная » Просмотр файлов » Диссертация

Диссертация (1148251), страница 2

Файл №1148251 Диссертация (Инструменты аспектно-ориентированного программирования облачных веб-приложений в Microsoft Azure разработка и реализация в системе Aspect.NET) 2 страницаДиссертация (1148251) страница 22019-06-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

Исходный код такой системы обладает высокойсвязанностью, его сложно декомпозировать и сопровождать.АОП предлагает решение данной проблемы — выделение “сквознойфункциональности” в один модуль, аспект [125]. По своей сути, реализация“сквозной функциональности” состоит в том, чтобы выполнить некие действия вопределенных точках целевой программы или же расширить существующиеклассыновымиметодамииполями.Всетакиедействия(advices)инкапсулируются в аспекте и снабжены описанием своих точек внедрения(joinpoints). Кроме того, чтобы влиять на поведение целевой программы, действияаспекта имеют доступ к контексту своих точек внедрения, например, к ссылкам наобъекты, окружающим данную точку.

Всё это сокращает размер исходного кода,облегчает тестирование как аспекта, так и бизнес-логики [103].Актуальность темы исследования обусловлена необходимостью повышениякачества, производительности и сопровождаемости облачных веб-приложений.Всё большее количество сервисов, которыми пользуются рядовые пользователи,переносится в облака, и принципы АОП могут сильно облегчить сопровождение инаписание этих сервисов.Актуальнойявляетсязадачавыявлениясквозныхфункциональныхпотребностей, общих для большинства веб-приложений, для дальнейшей ихреализации в виде библиотек аспектов. И следующая из неё задача разработкиэтих библиотек для использования их при решении практических задач.Ещё одной актуальной задачей является разработка и реализациябиблиотек,позволяющихулучшитьтакиехарактеристикикачествакаксопровождаемость, производительность, связность, объем кода веб-приложений.А улучшение любой из этих характеристик в свою очередь ведет к удешевлениюпроцесса разработки за счет уменьшения человеко-часов.Степень разработанности темы исследования.

Для АОП разработкипрограмм применяется множество инструментов, самыми популярными изкоторых являются AspectJ [68] и PostSharp [80] (по данным Google Trends [38]).6Однако проведенный в процессе написания работы анализ предметнойобласти показал, что популярность АОП-инструментов уступает альтернативнымтехнологиям повышения качества программного обеспечения, таким как,например, рефакторинг и IoC-контейнеры. Существенной проблемой приизменении поведения программы с помощью современных АОП-инструментовявляется отсутствие бесшовной интеграции аспектов и целевого исходного кодасистемы.

Термин “бесшовная интеграция” применительно к аспектам и целевомукоду можно сформулировать следующим образом: это такое расширениефункциональности целевого кода, при котором не требуется вносить изменения вцелевой проект, включая его код, файлы настроек и свойства проекта. Прибесшовной интеграции в этом смысле у пользователя должна быть возможностьотдельно компилировать, запускать и тестировать аспектную и целевую сборки,без необходимости иметь их исходный код. Данное определение отличается от“бесшовности” применения ряда АОП-инструментов (PostSharp, FuseJ [94] и др.),когда целевой код не зависит от аспектов, однако они тесно интегрированы в егопроект, что препятствует тестированию бизнес-логики и затрудняет возможныйотказ от применяемого АОП-инструмента.В то время как пользователи AspectJ для Java-платформы имеютвозможность создавать свои аспекты и правила внедрения в одном модуле ивнедрять их в целевые сборки на бинарном уровне, то на платформе .NETсуществуетнесколькоАОП-инструментов,которыепозволяютбесшовновнедрять аспекты, например, проекты SheepAspect [90] и AOP.NET [11].

Оба этипроекта позволяют хранить определения аспектов вместе с правилами ихвнедрения и вставлять их в целевую сборку на этапе пост-компиляции, однако ниодин из них не вышел из стадии альфа-версии и их развитие приостановлено.В качестве примера современного инструмента АОП, обеспечивающегобесшовное применение аспектов, в работе описывается и анализируется системаAspect.NET — среда аспектно-ориентированной разработки программ дляплатформы Microsoft.NET, разработанный в лаборатории Java-технологии7математико-механического факультета СПбГУ под научным руководствомпрофессора В.

О. Сафонова.Впервые вопросы применения Aspect.NET к разработке веб-приложенийисследовал в 2010 г. Нгуен В. Д., аспирант кафедры “Информатики” математикомеханического факультета СПбГУ. Результатом его работы [123] сталабиблиотека с универсальными аспектами для безопасности, криптографии ирасширения пользовательского Web-интерфейса приложений на базе ASP.NET.Проведенные им оценки производительности результирующей сборки послеприменения Aspect.NET показали, что накладные расходы на вызовы действийаспектов минимальны и соразмерны со вставкой их в исходный код вручную.Объектомисследованияявляютсяинфраструктура,программныекомпоненты и сервисы платформы облачных вычислений Microsoft Azure, а такжемодели, методы и алгоритмы применения аспектов на базе инструментаAspect.NET.Предметом исследования является возможность повышения качестваисходного кода облачных веб-приложений с помощью АОП-рефакторинга.

Крометого, исследуется процесс разработки, реализации и применения универсальныхаспектов,предназначенныхдлябесшовногорасширенияоблачныхвеб-приложений, в том числе с использованием стороннего фреймворка MicrosoftEnterprise Library Integration Pack.Большинство разработчиков используют Microsoft Visual Studio (VS) дляразработки облачных веб-приложений Microsoft Azure. Так как Aspect.NET — этоконсольное приложение, которое лишь сливает целевую и аспектную сборки, тоего необходимо первоначально адаптировать для пост-компиляции аспектов в VS,публикации результирующей сборки в облаке, а также реализовать возможностьотладки в облаке примененных аспектов.

Кроме того, аспекты веб-приложениймогут сохранять свои настройки в конфигурационном файле целевого проектаweb.config. Соответственно требуется разработать технологию раздельногохранения настроек аспектов и целевого приложения, а затем их слияния передкомпоновкой аспектов. Такой подход позволяет разрабатывать аспекты в8отдельном проекте VS, исключая необходимость какой-либо модификациицелевого проекта.

Следовательно, становится возможным бесшовно расширятьлюбое ASP.NET веб-приложение функциональностью аспектов, предложенных врамках AzureLibrary. Отметим, что данная технология соответствует общемутренду развития средств построения облачных веб-приложений на платформеMicrosoft Azure, когда пользователи на специальном веб-портале выбираютшаблон приложения, конфигурируют его в веб-интерфейсе и публикуют в облаке.Разработанная автором технология позволяет расширять функциональностьподобных приложений, не требуя от конечного пользователя изменять их код.Целью данной работы является повышение с помощью АОП качества ипроизводительности, а также улучшение сопровождаемости облачных вебприложений на платформе Microsoft Azure.Достижение поставленной цели осуществляется решением следующих задач.1.

Разработатьоблачныеиреализоватьвеб-приложениябиблиотекуаспектов,следующимирасширяющуювидамисквознойфункциональности: перенаправление протоколирования в хранилищеотладочной информации Microsoft Azure, кэширование информации,получаемой из SQL Azure, обработка исключений.2. Предложить методику, позволяющую перехватывать обратные вызовыметодов от инфраструктуры Microsoft Azure, не затрагивая при этомцелевой код.3. Найти способ публикации в облаке АОП-программ, разработанныхс помощью Aspect.NET, а также обеспечить возможность их отладкив Microsoft Visual Studio.4. Разработатьметодбесшовногорасширенияфункциональностиоблачных веб-приложений с помощью библиотеки Microsoft EnterpriseLibrary и Aspect.NET.5. Разработать методику аспектно-ориентированного рефакторинга дляулучшения метрик исходного кода веб-приложения с помощью системыAspect.NET.9Цель и задачи диссертации соответствуют области исследований паспортаспециальности05.13.11«Математическоеипрограммноеобеспечениевычислительных машин, комплексов и компьютерных сетей» – пункту 1 (модели,методы и алгоритмы проектирования и анализа программ и программных систем,их эквивалентных преобразований, верификации и тестирования), пункту 2(языки программирования и системы программирования, семантика программ),пункту 3 (модели, методы, алгоритмы, языки и программные инструменты дляорганизации взаимодействия программ и программных систем) и пункту 9(модели, методы, алгоритмы и программная инфраструктура для организацииглобально распределенной обработки данных).Методология и методы исследования.

Характеристики

Список файлов диссертации

Инструменты аспектно-ориентированного программирования облачных веб-приложений в Microsoft Azure разработка и реализация в системе Aspect
Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6392
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее