18

Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки
Page 2: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки
Page 3: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

3

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

Цели и задачи учебной дисциплины Цель учебной дисциплины – получение студентами базовых знаний в

построении систем сервис-ориентированной архитектуры (СОА); освоение

методов и компьютерных технологий, применяемых для разработки систем

этого класса.

Задачи учебной дисциплины:

– лекции должны знакомить студентов с парадигмой сервис-

ориентированной архитектуры, принципами, подходами и технологиями

разработки сервисов и систем СОА, контейнеризацией и микросервисной

архитектурой;

– лабораторные работы должны быть связаны с освоением способов

проектирования и разработки систем СОА; с овладением технологиями

разработки веб-сервисов; контейнеризацией монолитных .NET приложений;

внедрением зависимостей в приложениях ASP.NETCore;

– самостоятельная работа должна развивать навыки самостоятельного

освоения методов выбора и применения способов и технологий

проектирования и разработки сервисов и систем СОА, навыки коллективной

разработки, развертывания и тестирования систем СОА.

Место учебной дисциплины в системе подготовки специалиста с

высшим образованием.

Учебная дисциплина относится к циклу дисциплин специализации 1-31

03 07-01 06 Программное обеспечение встроенных систем, компонента

учреждения высшего образования.

Программа составлена с учетом межпредметных связей с учебными

дисциплинами. Основой для изучения учебной дисциплины являются

учебные дисциплины I ступени высшего образования «Программирование»,

«Операционные системы. Дисциплина «Сервис-ориентированные

программные системы» способствует успешному прохождению практики и

написанию дипломных работ.

Требования к компетенциям

Освоение учебной дисциплины «Сервис-ориентированные

программные системы» должно обеспечить формирование следующих

академических, социально-личностных и профессиональных компетенций:

Академические компетенции

АК-1. Уметь применять базовые научно-теоретические знания для

решения теоретических и практических задач.

АК-2. Владеть системным и сравнительным анализом.

АК-3. Владеть исследовательскими навыками.

АК-4. Уметь работать самостоятельно.

АК-5. Быть способным вырабатывать новые идеи (обладать

креативностью).

Page 4: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

4

АК-7. Иметь навыки, связанные с использованием технических

устройств, управлением информацией и работой с компьютером.

АК-9. Уметь учиться, повышать свою квалификацию в течение всей

жизни.

социально-личностные компетенции

СЛК-1. Обладать качествами гражданственности.

СЛК-2. Быть способным к социальному взаимодействию.

СЛК-3. Обладать способностью к межличностным коммуникациям.

СЛК-5. Быть способным к критике и самокритике.

СЛК-6. Уметь работать в команде.

профессиональные компетенции

ПК-1. Проектировать, разрабатывать и тестировать программное

обеспечение различных видов.

ПК-2. Разрабатывать техническую документацию на программное

обеспечение.

ПК-5. Проектировать, разрабатывать, внедрять и тестировать насыщенные

Интернет приложения.

научно-исследовательская деятельность

ПК-7. Применять профессиональные знания и навыки для проведения

научных исследований в области прикладной информатики.

ПК-9. Работать с научно-технической информацией с использованием

современных информационных технологий.

ПК-10. Формулировать выводы и рекомендации по применению результатов

научно-исследовательской работы.

эксплуатационная деятельность

ПК-12. На основе технической документации выполнять внедрение и

сопровождение программного обеспечения, в том числе разработанного

сторонними организациями.

экспертно-консультационная деятельность

ПК-18. Оказывать консультации по вопросам работы программного

обеспечения, в том числе разработанного сторонними организациями.

ПК-21. Анализировать результаты работы установленного программного

обеспечения и вырабатывать предложения по улучшению качества его

работы.

ПК-23. Проводить обучение специалистов, занимающихся эксплуатацией

программного обеспечения.

ПК-33. Осуществлять поиск, систематизацию и анализ информации по

перспективам развития отрасли, инновационным технологиям, проектам и

решениям.

ПК-34. Определять цели инноваций и способы их достижения.

В результате освоения учебной дисциплины студент должен:

знать:

– базовые теоретические понятия СОА;

Page 5: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

5

– стек протоколов веб-сервисов первого и второго поколения;

– ограничения архитектурного стиля REST, технологию разработки и

применения сервисов ASP.NET CoreWeb API;

– теоретические основы, способы и технологии контейнеризации .Net

приложений с использованием микросервисов;

уметь:

– ставить и решать задачи, связанные с проектированием, разработкой и

развертыванием систем СОА, оценивать целесообразность применения

парадигмы СОА при проектировании распределенной системы;

владеть:

– технологией разработки .asmx веб-сервисов, их описанием и

использованием;

– унифицированной моделью программирования распределенных

приложений на платформе Microsoft Windows – Communication Foundation

(WCF);

– технологией ASP.NET CoreWeb API сборки REST-приложений на базе

.NETFramework;

– технологией разработки приложений сервис-ориентированной архитектуры

с использованием возможностей, предоставляемых программной

платформой;

– технологией контейнеризации монолитных приложений на основе Docker.

Структура учебной дисциплины

Дисциплина изучается в пятом семестре. Всего на изучение учебной

дисциплины «Сервис-ориентированные программные системы» отведено:

– для очной формы получения высшего образования – 150 часов, в том

числе 68 аудиторных часа, из них: лекции – 34 часа, лабораторные занятия –

30 часов, управляемая самостоятельная работа – 4 часа.

Трудоемкость учебной дисциплины составляет 3,5 зачетные единицы.

Форма текущей аттестации – экзамен.

Page 6: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

6

СОДЕРЖАНИЕ УЧЕБНОГО МАТЕРИАЛА

Раздел 1. Введение в сервис-ориентированную архитектуру

Тема 1.1.Парадигма СОА.

История теории и практики развития распределенных систем.

Концепция сервис-ориентированной архитектуры (архитектурного стиля).

Факторы целесообразности и нецелесообразности использования сервис-

ориентированной архитектуры (СОА).

Тема 1.2. Принципы проектирования и построения сервис-

ориентированных систем.

Преобразование бизнес-логики в логику приложений в соответствии с

парадигмой СОА. Принципы и подходы к проектированию программных

систем СОА. Интероперабельность. Слабое связывание. Сервисы, веб-

сервисы. Автономность сервисов. Повторное использование. Формальный

контракт использования сервисов. Состояние и ресурсы сервиса.

Раздел 2. Веб-сервисы первого и второго поколений

Тема 2.1. Протоколы распределенного взаимодействия при построении

СОА-приложений.

Протокол SOAP. Общие сведения, предназначение. Структура SOAP-

сообщения. Заголовок SOAP и его стандартные атрибуты. Обработка

ошибок в SOAP-сообщениях. SOAP-сообщения с вложениями (двоичными

файлами). Использование в различных платформах (ASP.NET, Java).

Протокол (язык) Java Script Object Notation (JSON). Общие сведения,

предназначение. Универсальные структуры данных языков

программирования (коллекция пар ключ/значение, массивы и др.) и их

реализация в JSON. Строки, числа в JSON. Сравнение протоколов SOAP и

JSON.

Тема 2.2. Описание и распознавание веб-сервисов. .asmx веб-сервисы.

Язык описания веб-сервисов WSDL. Основные элементы WSDL 2.0

файла. Регистры сервисов. Разработка .asmx веб-сервисов с использованием

Visual Studio. Тестирование .asmx сервисов. Прокси-классы. Применение

.asmx веб-сервисов.

Тема 2.3. Стандарты второго поколения веб-сервисов.

Стандарты WS-*, их назначение. Стек протоколов безопасности

сервисов. Стандарт WS.Security. Использование заголовков SOAP для

аутентификации пользователей. Стандарт WS-Addressing. Расширенная

адресация конечных точек. Асинхронные вызовы. Концепция Web Service

Resource Framework (WSRF). Состояние веб-сервиса и веб-ресурсы.

Page 7: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

7

Раздел 3. Веб-службы Windows Communication Foundation (WCF) и Web

API

Тема 3.1. Основы технологии WCF. Реализация WCF-службы.

Адрес (оконечная точка), привязка и контракт. Контракт о службе.

Контракт о данных. Контракт о сообщениях. Стандартные привязки.

Определение контракта. Определение оконечной точки. Размещение

службы в процессе с возможностью прослушивания входящих запросов.

Тема 3.2. REST сервисы.

Ограничения архитектурного стиля REST. Создание REST сервисов в

WCF.

Тема 3.3. Веб-службы Web API.

ASP.NET Web API как платформа для сборки REST-приложений на

базе .NET Framework (.NET Core). Разработка ASP.NET CoreWeb API служб.

Контроллеры и обработка запросов. Тестирование контроллеров. Валидация

в Web API. Использование служб Web API с ASP.NET MVC и с Web Forms.

Раздел 4. Сервисы в децентрализованной распределенной среде (на

примере моделирования виртуальных роботов)

Тема 4.1. Microsoft Robotics Developer Studio 4.

Язык визуального программирования VPL. Среда симуляции VSE.

Виртуальные модели роботов. Программирование работы реальных и

виртуальных роботов. Управление движением робота. Обработка сенсорной

информации.

Тема 4.2.Сервисы для управления виртуальными роботами.

Библиотека для работы с асинхронными и параллельными потоками

данных Concurrency and Coordination Runtime. Среда Decentralized Software

Services для создания распределенных приложений на основе сервисов.

Разработка DSS-проектов.

Раздел 5. Контейнеризация .Net приложений с использованием

микросервисов

Тема 5.1. Контейнеры и контейнеризация. Микросервисы.

Понятие о контейнерах. Контейнеры и виртуальные машины,

сравнение и отличие. Микросервисы. Преимущества и недостатки

микросервисной архитектуры. Контейнеризация монолитных приложений.

Page 8: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

8

Тема 5.2.Внедрение зависимостей (Dependency Injection) и сервисы в

ASP.NETCore.

Коллекция встроенных сервисов IServiceCollection, методы ее

расширения. Информация о сервисах коллекции. Создание и использование

собственных сервисов. Способы передачи зависимостей, их жизненный цикл.

Тема 5.3. Контейнеризация Docker.

Понятие о проекте с открытым исходным кодом Docker. Терминология

Docker. Проектирование архитектуры приложений на основе контейнеров и

микросервисов. Архитектура микросервисов. Владение данными в

микросервисах. Определение границ модели предметной области для

микросервисов.

Тема 5.4.Процесс разработки приложений на основе Docker.

Выбор средств разработки. Рабочий процесс разработки приложений

Docker на основе контейнера.

Применение в микросервисе упрощенных шаблонов CQRS и DDD.

Раздел 6. Групповой проект: разработка распределенной системы

Детальная постановка задачи разработки распределенной системы на

основе сервисов. Распределение работ. Разработка сервисов. Развертывание

системы. Хостинг. Возможности применения облачных систем для хостинга

приложений. Тестирование распределенной системы.

Page 9: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

9

УЧЕБНО-МЕТОДИЧЕСКАЯ КАРТА УЧЕБНОЙ ДИСЦИПЛИНЫ

Ном

ер р

азд

ела,

тем

ы

Название раздела, темы

Количество аудиторных

часов

Коли

чес

тво ч

асов

УС

Р

Форма контроля знаний

Лек

ци

и

Прак

тичес

ки

е

зан

яти

я

Сем

ин

арск

ие

зан

яти

я

Лаб

орат

орн

ые

зан

яти

я

Ин

ое

1 2 3 4 5 6 7 8 9

1. Введение в сервис-ориентированную архитектуру 4

1.1. Парадигма СОА 2 Устный опрос

1.2. Принципы проектирования и построения сервис-

ориентированных систем 2

Собеседование

2. Веб-сервисы первого и второго поколений 6 4

2.1. Протоколы распределенного взаимодействия при

построении СОА-приложений 2

Собеседование

2.2 Описание и распознавание веб-сервисов. .asmx веб-

сервисы

2 4 Отчеты по лабораторным работам с

их устной защитой

2.3. Стандарты второго поколения веб-сервисов 2 Устный опрос

3. Веб-службы WindowsCommunicationFoundation

(WCF) и Web API 6 6

3.1. Основы технологии WCF. Реализация WCF-службы 2 2 Отчеты по лабораторным работам с

их устной защитой

3.2. REST сервисы. 2 2 Отчеты по лабораторным работам с

их устной защитой

3.3. Веб-службы Web API. 2 2 Отчеты по лабораторным работам с

их устной защитой

Page 10: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

10

4. Сервисы в децентрализованной распределенной

среде (на примере моделирования виртуальных

роботов)

8 6 Отчеты по лабораторным работам с

их устной защитой

4.1 MicrosoftRoboticsDeveloperStudio 4 4 2 Отчеты по лабораторным работам с

их устной защитой

4.2 Сервисы для управления виртуальными роботами 4 4 Отчеты по лабораторным работам с

их устной защитой

5 Контейнеризация .Net приложений с

использованием микросервисов

10 10

5.1 Контейнеры и контейнеризация. Микросервисы 2 Устный опрос

5.2 Внедрение зависимостей (DependencyInjection) и

сервисы в ASP.NET Core

4 4 Отчеты по лабораторным работам с

их устной защитой

5.3 Контейнеризация Docker 2 2 Отчеты по лабораторным работам с

их устной защитой

5.4 Процесс разработки приложений на основе Docker 2 4 Отчеты по лабораторным работам с

их устной защитой

6 Групповой проект: разработка распределенной

системы

4 4 Защита группового проекта,

рефераты

ИТОГО 34 30 4

Page 11: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

11

ИНФОРМАЦИОННО-МЕТОДИЧЕСКАЯ ЧАСТЬ

Перечень основной литературы

1. Kocher, Parminder Singh. Microservices and Containers / Parminder Singh

Kocher. – Addison-Wesley Professional, 2018. – 304с.

2. Dependency Injection.[Электрон. ресурс]. –

https://metanit.com/sharp/aspnet5/6.1.php

3. Ньюмен, С. Создание микросервисов / С. Ньюмен, – СПб.: Питер,

2016. – 304 с.

4. Steve Smith, Scott Addie. Внедрение зависимостей (Dependency

Injection). [Электрон. ресурс]. – https://dotnet.today/ru/aspnet5-

vnext/fundamentals/dependency-injection.html

5. Микрослужбы .NET: Архитектура контейнерных приложений .NET.

[Электрон. ресурс]. – https://docs.microsoft.com/ru-

ru/dotnet/architecture/microservices/

6. Cesar de la Torre. Containerized Docker Application Lifecycle with

Microsoft Platform and tools. [Электрон. ресурс]. –

https://aka.ms/dockerlifecycleebook

7. https://docs.microsoft.com/en-us/previous-versions/microsoft-

robotics/bb483065(v=msdn.10)

8. Автоматизация в доме с помощью Microsoft Robotics Developer Studio

2008. [Электрон. ресурс]. –

https://blogs.msdn.microsoft.com/rucoding4fun/2008/05/23/microsoft-rob/

9. Гай, В. Е. Microsoft Robotics Developer Studio. Программирование

алгоритмов управления роботами / В.Е Гай. – М.: ЭКОМ Паблишерз, 2012. –

184 с.

10. MSDN: Creating DSS Service Projects [Электронный ресурс] – Режим

доступа: http://msdn.microsoft.com/en-us/library/bb483009.aspx.

11. MSDN: DSS User Guide [Электронный ресурс] – Режим доступа:

http://msdn.microsoft.com/en-us/library/bb896708.aspx.

Перечень дополнительной литературы

1. Микросервисы по-микрософтовски. Пакуем приложения

ASP.NETCore с помощью Dosker. [Электрон. ресурс]. –

https://xakep.ru/2018/08/20/aspnet-docker-nginx/

2. Корректный ASP.NET Core. [Электрон. ресурс]. –

https://habr.com/ru/post/437002/

3. Dependency Inversion Principle. Пример. [Электрон. ресурс]. –

http://prog.msk.ru/2019/02/07/system-programming-di-patters/

4. ASP.NET Core – внедрение зависимостей (Dependency Injection).

[Электрон. ресурс]. – http://flash2048.com/post/asp-net-core-dependency-

injection

Page 12: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

12

5. .NET Core: как работают микросервисы в контейнерах. [Электрон.

ресурс]. – https://dou.ua/lenta/articles/microservices-net-core/

6. Радченко, Г.И. Распределенные вычислительные системы / Г.И.

Радченко. – Челябинск: Фотохудожник, 2012. – 184 с.

7. Лёве, Д. Создание служб WCF. / Д. Лёве.– СПб.: Питер, 2008. - 592 с.

8. SOAP 1.2specification (W3C) [Электрон. ресурс].-

http://www.w3.org/TR/soap12-part1/

9. Web Services Description Language (WSDL) Version 2.0 Part 1: Core

Language [Электрон. ресурс]. – www.w3.org/TR/wsdl

10. Web Services Description Language (WSDL) Version 2.0 Part 0: Primer

[Электрон. ресурс]. – http://www.w3.org/TR/wsdl20-primer/

11. WS-Security specification (OASIS) [Электрон. ресурс]. –

http://www.oasis-open.org/specs/index.php#wssv1.0

12. Bertino, Elisa. Security for Web Services and Service-Oriented

Architectures. / Elisa Bertino, Lorenzo D. Martino, Federica Paci, Anna C.

Squicciarini. – Berlin, Heidelberg: Springer-Verlag, 2010. – 222 с.

13. Сибраро, Пабло. WCF 4: Windows Communication Foundation и .NET

4 для профессионалов / Пабло Сибраро, Курт Клайс, Фабио Коccолино,

ЙоханГрабнер. – М. :ООО “И.Д. Вильямс”, 2011. – 464 с.

14. REST: From Research to Practice /E. Wilde, C. Pautasso (ред.) //

Springer Science+Business Media, LLC, 2011.

15. Allamaraju, Subbu. RESTful Web Services Cookbook / Subbu

Allamaraju. – СПб.: O’Reilly, 2010. – 296 с.

16. Руководство по ASP.NET Web API 2[Электрон. ресурс]. –

https://metanit.com/sharp/aspnet_webapi/

17. Johns, Kyle. Professional Microsoft robotics developer studio / Kyle

Johns, Trevor Taylor, Wrox, 2008 – 826 с.

Page 13: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

13

Перечень рекомендуемых средств диагностики и методика

формирования итоговой оценки

Для диагностики компетенций используются следующие формы:

1. Устная форма: опрос, собеседования.

2. Письменная форма: рефераты.

3. Устно-письменная форма: отчеты по лабораторным работам с их

устной защитой; отчет по результатам группового проекта с устной защитой.

Формой текущей аттестации по дисциплине «Сервис-ориентированные

программные системы» учебным планом предусмотрен экзамен.

При формировании итоговой оценки используется рейтинговая оценка

знаний студента, дающая возможность проследить и оценить динамику

процесса достижения целей обучения. Рейтинговая оценка предусматривает

использование весовых коэффициентов для текущего контроля знаний и

текущей аттестации студентов по дисциплине.

Примерные весовые коэффициенты, определяющие вклад текущего

контроля знаний и текущей аттестации в рейтинговую оценку:

Формирование оценки за текущую успеваемость:

ответы на лабораторных занятиях – 60 %;

защита отчета по результатам группового проекта – 25 %;

подготовка реферата – 20 %.

Рейтинговая оценка по дисциплине рассчитывается на основе оценки

текущей успеваемости и экзаменационной оценки с учетом их весовых

коэффициентов. Вес оценка по текущей успеваемости составляет 40 %,

экзаменационная оценка – 60 %.

Примерный перечень заданий для управляемой самостоятельной

работы студентов

Раздел 6. Групповой проект: разработка распределенной системы. (4 ч.)

1. Разработка распределенной системы, основанной на парадигме СОА, с

использованием технологии ASP.NETCore, веб-сервисов первого и второго

поколения, службASP.NET CoreWeb API. Хостинг. Тестирование

распределенной системы

(Форма контроля – защита группового проекта, рефераты).

2. Разработка проекта «Умного дома», основанного на использовании

Decentralized Software Services (DSS), сервисов и эмуляторов датчиков

(Форма контроля – защита группового проекта, рефераты).

Примерная тематика лабораторных занятий

Занятие № 1.Разработка .asmx веб-сервиса. Тестирование сервиса

Page 14: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

14

Занятие № 2.Разработка клиента (веб-серверной программы) для .asmx

веб-сервиса. Тестирование программы

Занятие № 3.Реализация WCF-службы с использованием Visual Studio.

Занятие № 4.Реализация WCF-службы как REST сервиса за счет

использования стандартных привязок. Разработка веб- и мобильного

клиентов сервиса.

Занятие № 5.Разработка веб-службы Web API.

Занятие № 6.Разработка программы в среде Microsoft Robotics

Developer Studio 4 на языке VPL для управления виртуальным мобильным

роботом, визуализация в среде VSE.

Занятие № 7. Разработка сервиса для управления виртуальным

мобильным роботом на основе DSS-проекта.

Занятие № 8. Отладка и тестирование сервиса для управления

виртуальным мобильным роботом на основе DSS-проекта.

Занятие № 9.Использование коллекции встроенных сервисов IService

Collection для внедрения зависимостей в ASP.NETCore приложении.

Занятие № 10.Разработка и использование собственного сервиса для

внедрения зависимостей в ASP.NETCore приложении.

Занятие № 11. Изучение примеров по контейнеризации Docker.

Занятие № 12.Разработка приложения Docker на основе контейнера.

Занятие № 13.Разработка приложения Docker на основе контейнера.

Тестирование и анализ результатов.

Занятие № 14. Групповой проект. Детальная постановка и анализ

задачи разработки распределенной системы на основе сервисов.

Распределение работ.

Занятие № 15.Групповой проект. Разработка сервисов.

Описание инновационных подходов и методов к преподаванию

учебной дисциплины (эвристический, проективный,

практико-ориентированный)

При организации образовательного процесса используется практико-

ориентированный подход, который предполагает:

- освоение содержание образования через решения практических задач;

- приобретение навыков эффективного выполнения разных видов

профессиональной деятельности;

- ориентацию на генерирование идей, реализацию групповых

студенческих проектов;

- использованию процедур, способов оценивания, фиксирующих

сформированность профессиональных компетенций.

Также при организации образовательного процесса используется метод

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

учебно-познавательной деятельности обучающихся, предполагающую

Page 15: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

15

функционирование разных типов малых групп, работающих как над общими,

так и специфическими учебными заданиями.

Методические рекомендации по организации

самостоятельной работы обучающихся

Для организации самостоятельной работы студентов по учебной

дисциплине следует использовать современные информационные ресурсы:

разместить на образовательном портале комплекс учебных и учебно-

методических материалов (учебно-программные материалы, учебное издание

для теоретического изучения дисциплины, методические указания к

лабораторным занятиям, материалы текущего контроля и текущей аттестации,

позволяющие определить соответствие учебной деятельности обучающихся

требованиям образовательных стандартов высшего образования и учебно-

программной документации, в т.ч. вопросы для подготовки к зачету, задания,

тесты, вопросы для самоконтроля, тематика рефератов и др., список

рекомендуемой литературы, информационных ресурсов и др.).

Темы реферативных работ

1. Особенности разработки распределенной системы, основанной на

парадигме СОА, с использованием технологии ASP.NETCore, веб-сервисов

первого и второго поколения, служб ASP.NET CoreWeb API.

2. Этапы и особенности разработки проекта «Умного дома»,

основанного на использовании Decentralized Software Services (DSS),

сервисов и эмуляторов датчиков

Примерный перечень вопросов к экзамену

1. История теории и практики развития распределенных систем.

2. Концепция сервис-ориентированной архитектуры (архитектурного

стиля). Факторы целесообразности и нецелесообразности использования

сервис-ориентированной архитектуры (СОА).

3. Преобразование бизнес-логики в логику приложений в соответствии

с парадигмой СОА.

4. Принципы и подходы к проектированию программных систем СОА.

Интероперабельность. Слабое связывание..

5. Сервисы, веб-сервисы. Автономность сервисов. Повторное

использование. Формальный контракт использования сервисов. Состояние и

ресурсы сервиса.

6. Протокол SOAP.

7. Протокол (язык) JavaScriptObjectNotation (JSON).

8. Описание и распознавание веб-сервисов. .asmx веб-сервисы.

9. Стандарты второго поколения веб-сервисов.

Page 16: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

16

10. Основы технологии WCF. Адрес (оконечная точка), привязка и

контракт.

11. Архитектурный стиль REST.

12. Веб-службы Web API как платформа для сборки REST-приложений

на базе .NET Framework (.NET Core).

13. Использование служб WebAPI с ASP.NET MVC и с WebForms.

14. Назначение и основы работы с Microsoft Robotics Developer Studio

15. Основы языка визуального программирования VPL.

16. Язык визуального программирования VPL. Виртуальные модели

роботов. Управление движением робота

17. Язык визуального программирования VPL. Виртуальные модели

роботов. Обработка сенсорной информации

18. Библиотека для работы с асинхронными и параллельными потоками

данныхConcurrency and Coordination Runtime.

19. Среда Decentralized Software Services для создания распределенных

приложений на основе сервисов.

20. Особенности разработка DSS-проектов.

21. Понятие контейнерах и контейнеризации монолитных приложений.

22. Микросервисы. Преимущества и недостатки микросервисной

архитектуры.

23. Внедрение зависимостей в приложениях ASP.NETCore.

24. Понятие о проекте с открытым исходным кодом Docker.

Терминология Docker.

25. Проектирование архитектуры приложений на основе контейнеров и

микросервисов с использованием Docker.

26.Контейнеризация Docker. Владение данными в микросервисах.

Определение границ модели предметной области для микросервисов.

27. Рабочий процесс разработки приложений Docker на основе

контейнера.

28. Применение в микросервисе упрощенного шаблона DDD.

29. Применение в микросервисе упрощенного шаблона CQRS.

Page 17: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

17

ПРОТОКОЛ СОГЛАСОВАНИЯ УЧЕБНОЙ ПРОГРАММЫ УВО

Название

учебной

дисциплины,

с которой

требуется

согласование

Название

Кафедры

Предложения

об изменениях

в содержании

учебной

программы

учреждения

высшего

образования

по учебной

дисциплине

Решение,

принятое

кафедрой,

разработавшей

учебную

программу (с

указанием

даты и номера

протокола)

Информационная

безопасность

мобильных

приложений

Технологий

программирования

Нет Оставить

содержание

учебной

дисциплины

без изменения,

протокол № 12

от 16.05.2019 г.

Высокоуровневые

технологии

программирования

для компьютерных

систем.(RFID-

технологии)

Технологий

программирования

Нет Оставить

содержание

учебной

дисциплины

без изменения,

протокол № 12

от 16.05.2019 г

Page 18: Белорусский государственный университетelib.bsu.by/bitstream/123456789/234037/1...ASP.NET Web API как платформа для сборки

18

ДОПОЛНЕНИЯ И ИЗМЕНЕНИЯ К УЧЕБНОЙ ПРОГРАММЕ ПО

ИЗУЧАЕМОЙ УЧЕБНОЙ ДИСЦИПЛИНЕ

на _____/_____ учебный год

п/п

Дополнения и изменения Основание

Учебная программа пересмотрена и одобрена на заседании кафедры

технологий программирования (протокол № ____ от ________ 201_ г.)

Заведующий кафедрой

технологий программирования ___________________ _______________

УТВЕРЖДАЮ

Декан ФПМИ

_____________________ _______________ __________________