Отчеты по лабораторным работам и ДЗ отправлять на почту aikanev@bmstu.ru
Образ виртуальной машины Linux Ubuntu 22.04 для выполнения заданий курса
-
Лекция 3. Методология Agile, состав команды. Диаграммы UML. Работа в git
-
Лекция 15. Резерв
В рамках практических работ по курсу необходимо каждому разработать заявочную систему на услуги по своей предметной области. Система состоит из веб-сервиса, фронтенд приложения, нативного приложения и второго асинхронного сервиса.
У каждого своя предметная область на весь курс: бронирование отелей, билетов в театр/кинотеатр, онлайн-магазин по вариантам, тему выбирать из списка ниже. По каждой теме есть ключевой процесс, в котором пользователь
оформляет заявки
, в которой может быть несколько услуг
. Также есть модератор
, который может редактировать список услуг
и одобрять заявки
. От предметной области зависят: названия ролей пользователей, названия сущностей услуг
и заявок
, список полей для них, возможные статусы и изменяемые в них поля. В нативном приложении
нужно реализовать интерфейс гостя
- только просмотр услуг
.
Основной вариант лабораторных по бэкенду - это Django и Go
. Но можно выполнять также на Java
, C#
и Node.js
, при выполнении условия лабораторных работ. Для фронтенда только React
+Redux
+axios
+React-Bootstrap
Каждая лабораторная - это sprint
, этап разработки по agile
, под каждую отдельная именованная по теме ветка в git
. Всего 4 репозитория: под каждый бекенд, фронтенд и нативное приложение. Каждая работа демонстрируется и защищается отдельно. При защите необходимо продемонстрировать работу приложения по своей теме, UML диаграмму из StarUML
, репозиторий github с кодом и ответить на вопросы. По первому модулю необходимо также сделать ТЗ, а по второму отчет по курсу - РПЗ.
- Цель работы: выбор варианта-темы на весь курс, знакомство с разработкой бэкенда и разработка дизайна для 2 страниц
- Порядок показа: показать две страницы приложения, объяснить заголовки во вкладке
Network
, объяснить шаблоны, контроллеры этих страниц и коллекцию данных - Контрольные вопросы: MVC, Django/Go, шаблонизация, HTTP, Web, HTML
- Задание: Базовая шаблонизация в Django (для Go просто HTML) для
услуг
, создание дизайна приложения
Создание базового интерфейса, состоящего из двух страниц. Первая для просмотра списка услуг
(отели, товары, рейсы и тд) в виде карточек с наименованием, ценой и картинкой. При клике по карточке происходит переход на вторую страницу с подробной информацией об услуге
(даты, описание и тд)
В приложении должны быть использованы стили, для каждого элемента списка подгружается свое изображение. Разработать стиль приложения, который будет применяться далее в последующих лабораторных по фронтенду. CSS
вынести в отдельный файл. Все данные для обеих страниц нужно брать прямо из коллекции, без использования БД.
Добавить поле input для фильтрации на сервере списка услуг
по одному из полей (наименование, цена), отображаемых на странице (по умолчанию отображать все). Поле поиска должно сохраняться после запроса. Всего в приложении должно быть 2 GET запроса и одна модель-коллекция. Без JavaScript
- Цель работы: разработка структуры базы данных и ее подключение к бэкенду
- Порядок показа: показать панель администратора/adminer, добавить запись, посмотреть данные через select в БД, показать шаблоны страниц. Объяснить модели, контроллеры для созданных таблиц
- Контрольные вопросы: ORM, SQL, модель и миграции
- ER диаграмма: сделать в StarUML; таблицы, связи, столбцы, типы столбцов и их длина, первичные, внешние ключи
- Задание: Создание базы данных
PostgreSQL
по теме работы, подключение к созданному шаблонизатору
Необходимо разработать структуру БД по выбранной теме и ее реализовать с учетом требований ниже. Использовать таблицу услуг
в страницах разработанного приложения. Наполнить таблицы БД данными через админку Django
или Adminer
. Получение услуг
, поиск и фильтрацию удаленных записей сделать через ORM
.
Для карточек таблицы услуг
добавить кнопку логического удаления услуги (через статус) с помощью выполнения SQL запроса без ORM.
Требования к БД:
Обязательно наличие 4 таблицы: услуг
(статус удален/действует, изображение), заявок
(статус, дата создания datetime, дата формирования datetime, дата завершения datetime, создатель
и модератор
), м-м заявки-услуги
(составной первичный ключ), пользователей
Обязательно наличие 5 или более статусов заявок
: черновик, удалён, сформирован, завершён, отклонён. Названия таблиц и их полей должны соответствовать предметной области.
- Методические указания PostgreSQL
- Методические указания Django
- Методические указания Golang
- Курс по основам БД
- Цель работы: создание веб-сервиса в бэкенде нашей системы для использования его в
SPA
- Порядок показа: Через
insomnia
/postman
выполнить GET списказаявок
(отфильтровать по дате формирования и статусу), выполнить GET спискауслуг
(с фильтром), удалить введеннуюзаявку
(если есть), добавить новуюуслугу
с картинкой, добавитьуслугу
в заявку, добавить вторую услугу, списокуслуг
с заявкой-черновиком, посмотретьзаявку
(из 2 услуг), подтвердить введеннуюзаявку
(показать ошибку), сформироватьзаявку
. Показать измененные данные через select, объяснить модели, сериализаторы. - Контрольные вопросы: веб-сервис, REST, RPC, HTTP, OSI ISO
- Диаграмма классов с детализацией бэкенда (домены методов по
url
с интерфейсами, перечислить все методы, модели, таблицы БД) + insomnia/postman - Задание: Создание веб-сервиса со всей итоговой бизнес логикой, но без авторизации, подключение его к БД и тестирование в
insomnia
/postman
Создание веб-сервиса для получения/редактирования данных из вашей БД. Требуется разработать все методы для реализации итоговой бизнес логики вашего приложения. Для изображений услуг
использовать Minio
(рекомендуется) или хранение файлов картинок в бинарном виде в БД.
Требования к веб-сервису
Методы и url
в API
должны соответствовать REST
. Для списка услуг
(как в 1 лабораторной) и заявок
(по статусу и диапазону даты формирования) нужно предусмотреть фильтрацию на бэкенде. Взаимодействие с БД через ORM
. Не делать POST
заявки
. Для логических действий в приложении (оплата, подтверждение, завершение) предусмотреть отдельные методы для обновления конкретных полей. Заявка создается пустой, указывается автоматически создатель
, дата создания и статус, остальные поля указываются через PUT
или смену статуса. При одобрении/отклонении заявки проставляется модератор
и дата завершения.
Статусы нельзя менять с любого на любой: создатель
удаляет и формирует черновик заявки, а модератор
отклоняет и завершает сформированную заявку. При получении заявки
возвращется список ее услуг с картинками. В списке услуг
возвращается id заявки-черновика этого пользователя для страницы конструктора
заявки. В данной лабораторной пользователь создатель
зафиксирован во всех методах - укажите его константой через функцию singleton
.
- Услуги - GET список, GET одна запись, POST добавление, PUT изменение, DELETE удаление, POST добавление в заявку
- Заявки - GET список (кроме удаленных и черновика), GET одна запись (поля
заявки
+ ееуслуги
), PUT изменение (если есть доп поля заявки), PUT сформировать создателем, PUT завершить/отклонить модератором, DELETE удаление - м-м - DELETE удаление из заявки, PUT изменение количества/значения в м-м (если есть доп поля м-м)
Рекомендуется реализация методов для изображений:
- добавление изображений отдельным методов по id услуги. Старое изображение заменяется/удаляется
- удаление изображения встроено в метод удаления услуги
- получение изображения для S3 напрямую по ссылке. При хранении картинки в БД - отдельный метод GET по id услуги.
- Методические указания DRF
- Методические указания Golang
- Пример подключения S3-хранилища
- Пример использования Minio в Python
- Цель работы: Разработка базового SPA на React
- Порядок показа: показать две страницы фронтенда в браузере из
localhost
с бэкендом, а вGitHub Pages
с mock на телефоне, применить фильтрацию услуг. Внести изменения в БД, показать их во фронтенде. Объяснить код компонентов для фильтрации, передаваемые props, хуки, вызовы fetch. - Контрольные вопросы: react, props, компонент, элемент, состояние, хуки, жизненный цикл компонента
- Deployment диаграмма все узлы и компоненты системы: фронтенда, web-сервера со статикой, веб-сервиса, базы данных и других хранилищ и тд. Узлы соединить протоколами, компон 8000 нты фронтенда и бэкенда поместить в узлах, указать API между ними.
- Задание: Разработать две страницы фронтенд приложения на
React
,TS
и подключить его к веб-сервису. Подготовить ТЗ на итоговую систему.
Разработать базовый интерфейс приложения на React
для гостя
, аналогичный двум страницам из лабораторной работы №1 для просмотра услуг
. При этом на странице списка услуг
должны быть все необходимые фильтры (по диапазону дат, названию, цене) с фильтрацией на бэкенде. Использовать компоненты React-Bootstrap
. Для карточек предусмотреть изображение по-умолчанию, если поле в услуге
пустое. Необходимо развернуть фронтенд на GitHub Pages
.
В приложении должны быть навигационная панель navbar
для списка базовых страниц, а также самописная навигационная цепочка breadcrumbs
, где отображается путь от базовой страницы к текущей. В этой лабораторной никакого Redux
, а Context
вообще в курсе использовать нельзя.
Содержимое карточек получать из веб-сервиса лабораторной №3. Ajax-запросы написать самостоятельно через fetch
. Ограничение с CORS
решить через проксирование React
. В методах fetch
предусмотреть получение данных из коллекции с mock
-объектами при отсутствии доступа к вашему бэкенду.
ТЗ на итоговую систему (сплошная нумерация):
- цель
- назначение - краткое описание для чего, кто работает в системе
- задачи
- методы веб-сервиса таблицей с группировкой по доменам: метод, url, описание, входные, выходные данные
- Функциональные требования - список окон и какие действия для каких групп пользователей доступны. Указать, какие методы бэкенда при этом вызываются. 8 страниц:
-
гость: регистрация, аутентификация, список услуг, одна услуга
-
создатель заявки: конструктор заявки, список заявок
-
модератор: список услуг таблицей, редактирование/создание услуги
- требования к аппаратному обеспечению для сервера и клиента
- требования к программному обеспечению с версиями для серверных компонентов и для клиента
- Цель работы: Завершение бэкенда для
SPA
- Порядок показа: выполнить авторизацию через
swagger
в режиме инкогнито, использовать содержимоекуки
/localStorage
+authorization
из браузера для заголовков остальных запросов черезswagger
иinsomnia
/postman
. Выполнить GET списка заявок: 403 для гостя, для модератора все заявки, для создателя только его. Выполнить PUT завершения заявки: для создателя 403 статус, для модератора успех и обновление полей. Показать содержимоеRedis
- Контрольные вопросы: куки, сессия, redis, jwt, авторизация, аутентификация
- Sequence диаграмма: весь набор
HTTP
запросов по бизнес-процессу без БД и нативного приложения: аутентификация, список услуг без черновика, добавление услуги в заявку, еще раз список услуг с черновиком, просмотр черновой заявки, формирование заявки, обращение к асинхронному сервису и обратно, список заявок с данными от асинхронного. Добавить домены в качествеLifeline
, при добавлении сообщений выбирать методы доменов из диаграммы классов, передавать ключевые входные и выходные данные черезarguments
в скобках уMessage
- Задание: Добавление авторизации и
swagger
в веб-сервис
Реализовать методы бэкенда для аутентификации
и регистрации
. Авторизация через хранение сессий и куки. Автозаполнение пользователя в таблице заявок
при создании новой. Добавить описание методов для swagger
.
Добавить проверку Permissions
для методов модератора
. Без авторизации в Swagger
должно быть доступно только чтение-получение данных через API, с авторизацией - методы пользователя
, а для модератора
доступны все методы.
- Настройка через WSL
- Методические указания Redis
- Методические указания DRF Сессии
- Методические указания Golang JWT
- Цель работы: Завершение интерфейса
пользователя
вReact
- Порядок показа: показать авторизацию, добавление и формирование
заявки
. Пояснить в коде использованиеredux
иaxios
. Показать авторизацию в браузере, использовать содержимоеlocalStorage
/cookie
чтобы показать заявки пользователя вinsomnia
/postman
. - Контрольные вопросы: схема redux, reducer, store, контекст, axios
- Диаграмма классов с детализацией бэкенда и фронтенда: добавить методы авторизации, фронтенд разделить на страницы, добавить у страниц зависимость от API.
- Activity диаграмма/BPMN для итогового бизнес-процесса для ДЗ: описание бизнес-процесса, разделение на дорожки по ролям двух пользователей и выделенного сервиса, действия соответствуют операциям пользователей в вашей системе.
- Задание: Добавить авторизацию и возможность оформления
заявок
во фронтенд черезRedux Toolkit
Добавить страницы для регистрации и авторизации. Добавить окно для просмотра списка заявок
пользователя в виде таблицы. Добавить в меню пункты для новых страниц. Для обращений к методам веб-сервиса использовать axios
. При выполнении запросов отображать на странице анимацию.
Добавление менеджера состояний Redux Toolkit
для хранения фильтров заявок и услуг, а также состояния интерфейса после авторизации. В приложении должно быть реализовано переключение между интерфейсом гостя и интерфейсом пользователя по кнопке Вход
/Выход
. После авторизации в меню должно отображаться Имя/Логин пользователя. При выходе должно сбрасываться содержимое конструктора новой заявки.
Добавление на странице услуг кнопки Добавить
для внесения данной услуги в новую заявку. Добавление страницы конструктора
заявки-черновика, где можно удалить уже добавленные в заявку услуги, поменять их количество или подтвердить
заявку. Эта же страница используется для просмотра заявок в других статусах, но без возможности редактирования. Переход на страницу конструктора
через специальную кнопку, которая меняет состояние, если заявка-черновик есть или ее нет.
- Методические указания Redux Toolkit + fetch
- Методические указания Redux Toolkit + кодогенерация и Axios
- Цель работы: Создание нативного приложения
- Порядок показа: Кроме
Tauri
показывать на телефоне, отредактировать услуги в БД и продемонстрировать изменение в нативном приложении - Контрольные вопросы: виды нативных приложений и отличие от web-приложений, react-native, pwa, tauri
- Задание: Создание приложения для
гостя
на iOS/Android/Tauri/Qt/React-native и подключением к веб-сервису
Создание простого нативного приложения для интерфейса гостя (без авторизации и редактирования), состоящий из 2 страниц с фильтрацией и картинками. Подключить приложение к разработанному API через IP адрес в локальной сети.
- Методические указания Tauri
- Методические указания iOS (Swift)
- Методические указания Android (Java)
- Методические указания React Native + Redux Toolkit
- Цель работы: Знакомство с межсервисным взаимодействием и асинхронностью
- Порядок показа: вызвать через
insomnia
http-метод асинхронного сервиса, показать что в основном приложении появился результат, потом вызвать метод основного сервиса напрямую, чтобы изменить результат - Контрольные вопросы: grpc, асинхронность, веб-сервис
- Задание: Создание асинхронного сервиса для отложенного действия (вычисление, моделирование, оплата и тд)
Требуется разработать второй простой асинхронный сервис на другом языке (кто делал на Django - Go и наоборот) с одним http-методом для выполнения отложенного действия в вашей системе (вычисление, моделирование, оплата и тд). Действие выполняется с задержкой 5-10 секунд, результат сервиса случайный, например успех/неуспех, достаточно в результате обновить одно поле в заявке
.
В исходном веб-сервисе также необходимо добавить http-метод для внесения результатов. Асинхронный сервис взаимодействует с основным через http
, без прямого обращения в БД. Добавить псевдо авторизацию в методе основного сервиса - передавать как константу какой-нибудь ключ, например на 8 байт, и через if просто проверять на совпадение это поле.
- Цель работы: Закрепление полученный знаний
- Порядок показа: создать заявку в интерфейсе
пользователя
. Авторизоваться подмодератором
, одобритьзаявку
и отредактировать списокуслуг
. - Отчет: отчет необходимо отправить на почту aikanev@bmstu.ru. Оценивается раскрытие предметной области в описании и приложении, корректность оформления отчета.
- Контрольные вопросы: любые вопросы по реализации интерфейса
модератора
- Диаграммы: диаграмма состояний для статусов
заявок
и диаграмма прецедентов. Актуализировать все диаграммы из лабораторных, все диаграммы должны соответствовать реализованной вами системе. Все диаграммы должны быть читаемые, шрифт на них должен не отличаться по размеру от шрифта текста отчета. - Задание: Реализовать интерфейс
модератора
и подготовить итоговый отчет
Необходимо добавить в приложение React интерфейс модератора
, доступный после его авторизации и имеющий следующие отличия:
- Новое окно редактирования
услуг
, список услуг отображается таблицей. Доступно добавление новых услуг (обязательные и необязательные поля), редактирование, удаление. - В окне списка
заявок
доступны кнопки для смены статуса заявок. Также есть поля фильтрации по диапазонудаты формирования
и статусу заявок (через бэкенд) и пользователю (на фронтенде). - Окно списка
заявок
переделать наshort polling
чтобы отображать актуальные статусы
Отчет-РПЗ по всем лабораторным и ДЗ:
- Введение (актуальность, цель, назначение, нефункциональные требования, задачи)
- Бизнес-процесс. Описание предметной области. Диаграмма прецедентов, диаграмма состояний и деятельности/BPMN (>300 слов)
- Архитектура. Диаграммы развертывания, ER с назначением таблиц и диаграмма классов с детализацией бэкенда и фронтенда (>300 слов)
- Алгоритмы. Диаграмма последовательности HTTP запросов (>300 слов)
- Описание интерфейса. Перечень окон, их назначение и выполняемые пользователями действия (>300 слов)
- Заключение. Перечень выполненных задач и достигнутые результаты. Ссылка на GitHub
- Список использованных источников
- Приложение. Техническое задание
- Индексы в БД, большое количество
услуг
(> 100000) и пагинация (+4 балла). Порядок показа: показать пагинацию с фильтрацией по индексу в React-приложении. Включить и отключить индекс - показать отличие во времени запроса.
- Адаптивность дизайна (+2 балла). Перейти в адаптивный режим браузера, поменять ширину. Объяснить настройки для размера карточек, количества колонок и тд.
- Кодогенерация из
swagger
(+2 балла). Показать применение сгенерированного кода фронтенда изswagger
.
- Автоматическое тестирование вашего сервиса через Python - автотесты методов API
- Полноценное нативное приложение - интерфейс модератора или клиента с авторизацией
- Заказ без авторизации через redis
- Черновик-заявки через redux и 5 запросов-событий которые меняют это состояние: одобрение, удаление заявки, добавление в заявку, авторизация и деавторизация
- Ролевая модель через несколько кастомных таблиц
- Список услуг кешировать в redis
- Сделать дашборд со статистикой заявок по месяцам и прирост новых услуг/заявок/клиентов
- Атрибуты услуги через вертикальную таблицу атрибутов: список атрибутов в отдельной таблице, а значения через вторую м-м
- Запрос прав модератора при регистрации и окно подтверждения запросов в отдельной странице у модераторов.
- Для 2 лабораторной. Подробнее про миграции Django. Примеры работы с моделями с получением заявки и ее услуг. Составной PK в м-м
- Для доп. задания. Работа с индексами и пагинацией (в бэкенде и фронтенде)
- Для 1 лабораторной. Описать верстка карточками, использование картинок, создание дизайна и использование стилей из
figma
Система заявок на вычисления: факториал, НОД и тд.Услуги
- виды вычислений,заявки
- запрос с входными данными и результатами.Аналитическое моделирование потоков в метроУслуги
- станции и др объекты для моделирования,заявки
- запрос с входными данными и результатами.Аналитическое моделирование загруженности сетевого оборудованияУслуги
- виды моделирования по оборудованию,заявки
- запрос с входными данными и результатами.Статистические расчеты.Услуги
- статистические величины (мат ожидание, дисперсия и тд),заявки
- данные для расчетов с результатомШифрование кодом с обнаружением ошибок.Услуги
- данные,заявки
- запросы на шифрование/расшифровку с результатом обнаружения ошибкиШифрование кодом для коррекции ошибок.Услуги
- данные,заявки
- запросы на шифрование/расшифровку с результатом коррекции ошибкиПрогноз погоды.Услуги
- виды данных (температура, давление, влажность),заявки
- запросы на предсказание погоды через авторегрессиюБулевы функции.Услуги
- булевы функции,заявки
- заявки на вычисленияПрименение фильтров к изображению.Услуги
- типы операций (изменение яркости, контраста и тд),заявки
- заявки для применения преобразований к изображению.- Расчет платежа по ипотеке.
Услуги
- виды расчета (страховка, ежемесячные платежи, аннуитет или равными долями),заявки
- заявки на расчет Расчет квартплаты.Услуги
- набор показателей,заявки
- расчет по каждой квартире
Система заявок для поваров в быстром питании на приготовление.Услуги
- виды блюд с указанием поваров,заявки
- заказ на приготовление блюд.Рецепты автоматического приготовления пищи.Услуги
- продукты,заявки
- рецептыЗаявки от коллцентра мелкого бизнеса: менеджер-создатель заявки, исполнитель+курьер.Услуги
- услуги данного бизнеса,заявки
- заявки от клиентов на услуги.Продажа очков.Услуги
- свойства линз,заявки
- заказы от покупателей на линзыКнижное издательство.Услуги
- работы издательства (печать, брошюрование и тд),заявки
- заказы на издание книгиРазмещение товаров на маркетплейсе.Услуги
- категории товаров,заявки
- заявки от продавцов на размещение товара- 2НДФЛ.
Услуги
- набор кодов для отчислений,заявки
- справки 2 НДФЛ за месяц - Бухгалтерский баланс компании.
Услуги
- добавочный капитал, заемные средства и тд,заявки
- отчетность компании по показателям
Карточная игра Эволюция.Услуги
- карты Эволюции,заявки
- карточные ходы соперников в игреАвтоматический подбор игроков для игры.Услуги
- карты, игровые локации,заявки
- игры, список участников автоматически собирается из поданных ими запросов
Оборудование для химических лабораторий.Услуги
- лабораторное оборудование,заявки
- заявки на приобретениеOne-pot синтезы.Услуги
- исходные вещества,заявки
- проведение синтеза при заданных условияхПроизводство косметики.Услуги
- вещества для производства,заявки
- виды косметики с указанием составаПроизводство лекарств из готовых веществ.Услуги
- действующие и др вещества,заявки
- составляющие лекарствПроизводство красок из красителей.Услуги
- готовые красители и др вещества,заявки
- виды красок (батик, гуаш) по цветам
Система заявок на производстве.Услуги
- используемые программы станков с ЧПУ,заявки
- заказ на изготовление деталиПродажа авиазапчастей для бизнес-джетов.Услуги
- авиазапчасти,заявки
- заявки на приобретение комплектующих. Связаться с Антоновым А.И.Поставки комплектующий для производства электроавтомобилей.Услуги
- комплектующие,заявки
- заявки от завода по сборке к заводам комплектующихПоставки деталей для сборки CubeSat.Услуги
- детали для CubeSat,заявки
- заявки на сборку CubeSatСклад комплектующих.Услуги
- список комлектующих для хранения с размером для места,заявки
- заявки на доставку и отгрузку комплектующихКораблестроительная программа.Услуги
- классы кораблей,заявки
- заказ кораблей от государстваФаблаб.Услуги
- виды проводимых работ на фаблабе,заявки
- заказы на печать микроэлектроникиРазработка месторождений.Услуги
- виды работ по разработке (бурение, геологоразведка),заявки
- этапы освоения месторожденийЗаказ на постройку самолета.Услуги
- комплектация самолета,заявки
- производство пассажирского самолетаТехприемка авиадвигателей.Услуги
- состав партии двигателей,заявки
- этапы приемкиСборка ракетоносителей Ангара разных типов.Услуги
- комплектующие, блоки, двигатели для разных типов ракет Ангара.заявки
- заявка на производство ракетоносителя
Визовый центр РФ - заявки на визы.Услуги
- виды виз,заявки
- заявки на получение нужной визы.Автоматический контроль паспортов на границе.Услуги
- паспорта, которые заведены в системе,заявки
- факты пересечения границы по паспортуБанковские счета.Услуги
- банковские договоры,заявки
- открытие новых счетов в рамках банковского договораЗаявки на изготовление документов при смене фамилии.Услуги
- виды документов для замены,заявки
- заявка на замену с указанием новой фамилии и причиныЭлектронная таможня.Услуги
- виды товаров, ценностей, валют для провоза,заявки
- заявки для декларирование провозимых товаров.Регистрация новых препаратов.Услуги
- список болезней для лечений препаратом,заявки
- заявки на регистрацию нового препаратаРегистрация новых видов животных.Услуги
- места обитания животных,заявки
- заявки на открытие нового вида с указанием родаУведомления электронных услуг.Услуги
- получатели уведомления,заявки
- отправка уведомленияСервис для самозанятых.Услуги
- виды предоставляемых услугзаявки
- заявка на регистрацию замозанятого с указанием ФИО, деятельности и др данныхСбор средств на реконструкцию исторических зданий.Услуги
- виды работ по реконструкциизаявки
- заявки на реконструкцию и сбор средствЭлектронное голосование.Услуги
- варианты названий для объектов города,заявки
- результаты голосованияЗаявка на проведение тендера.Услуги
- участники тендера,заявки
- статусы тендераДоговоры банка.Услуги
- набор услуг банка,заявки
- заявка на подключение к обслуживаниюЧаты.Услуги
- чаты,заявки
- отправка сообщений (м-м сообщений-заявок
для ответов вместо м-м куслугам
)Групповая отправка файла в мессенджере.Услуги
- получатели,заявки
- процесс отправки файлаРегистрация участников на спортивное соревнование.Услуги
- участники,заявки
- заявка для команды на участиеБанкомат.Услуги
- различные виды купюр,заявки
- операции внесения/снятия наличныхУдаленная поддержка.Услуги
- виды происшествий,заявки
- обращения от пользователейСчетчики воды.Услуги
- разные адреса,заявки
- фиксация показаний от счетчиков
Консалтинг по ИТ безопасности.Услуги
- виды консалтинга,заявки
- заявки на проведение консалтингаОбслуживание ИТ инфраструктуры.Услуги
- виды проводимых работ,заявки
- заявки по настройке сетевого оборудованию, виртуалки и тдМониторинг ИТ угроз.Услуги
- виды угроз,заявки
- факты возникновения угроз в подразделении компанииСайт КТС.Услуги
- виды разработки,заявки
- заявки от заказчиковАренда виртуальных машин.Услуги
- тарифы на аренду,заявки
- заявки на аренду кластера машинЗаявки на подключение провайдера.Услуги
- виды работ по подключению,заявки
- заявка от клиента на подключениеЗаявки на установку серверного ПО.Услуги
- программное обеспечение,заявки
- заявки от сотрудниковСоздание датацентра.Услуги
- комплектующие, аппаратное обеспечение,заявки
- процесс создания датацентраГолосовой помощник.Услуги
- доступные действия помощника,заявки
- интенты пользователя
Заявки контроля маршрута беспилотных летательных аппаратов.Услуги
- районы города,заявки
- заявки на пролет объекта в данной районе в определенное время.Контроль нарушений ПДД самокатами и др средств индивидуальной мобильности с двигателем.Услуги
- виды нарушений и штрафы для них,заявки
- факты нарушения из средств фиксацииПриобретение абонементов на общественный транспорт.Услуги
- виды абонементов на различный транспорт,заявки
- приобретение абонементов на картуПроезд по транспортной карте 90 минут.Услуги
- маршруты транспорта,заявки
- проезд по транспортной карте в 90 минут с указанием маршрута транспортаЗаявки на стоянку судна в порту.Услуги
- конкретные корабли,заявки
- заявки на нахождение корабля в данному порту.Севморпуть, заявки на проводку ледоколами.Услуги
- транспортные корабли ледового класса,заявки
- заявки на проводку кораблей ледоколом с указанием начальной и конечной точки проводки.Логистика контейнеров.Услуги
- список контейнеров с указанием груза,заявки
- заявка на перевозку со списком контейнеров и транспортным средствомПлатная дорога.Услуги
- участки платной дороги,заявки
- оплата и проездАвиарейсы.Услуги
- авиакомпании,заявки
- авиарейсы с указанием отправки, назначенияСтраховка на автотранспорт.Услуги
- водители в страховке,заявки
- заявка на оформление страховкиРегистрация авиабагажа.Услуги
- единицы багажа с кодами,заявки
- доставка багажа с делением по рейсам
Заявки на доставку грузов на Марс на Starship.Услуги
- товары, доставляемы на Марс на Starship,заявки
- заявки на конкретный объем товаровУчет перелетов Starship между земными космодромами.Услуги
- конкретные космические корабли,заявки
- заявки на перелет кораблей между площадкамиОтчеты по добыче ресурсов (вода, углекислый газ, гелий и тд) на Луне.Услуги
- добываемые ресурсы,заявки
- месячные отчеты об объеме добычи в конкретном месте ЛуныЗаявки на переходы космических аппаратов на различные орбиты.Услуги
- доступные орбиты,заявки
- заявки на переход спутников на орбиту.Автоматические межпланетные станции (АМС).Услуги
- космические объекты,заявки
- космические полеты АМС к этим объектам.Станции на поверхности Марса.Услуги
- географические объекты на поверхности Марса,заявки
- автоматические марсианские станции, успех/потеря/работаетЭволюция ближайших к Солнцу звезд.Услуги
- ближайшие звезды,заявки
- события в эволюции этих звезд, при завершениизаявки
меняется таблицауслуг
.Запуск спутников с космодрома Восточный.Услуги
- имеющиеся заявки на доставку КА на орбиту,заявки
- полет ракеты-носителя с указанной полезной нагрузкойАстрономия для астрологов.Услуги
- планеты,заявки
- присутствие в созвездии указанных планет в данное времяАнализ реликтового излучения.Услуги
- анализируемые спектры,заявки
- космические аппараты для анализа реликтового излученияПолеты к Gateaway.Услуги
- модули станции Gateaway и космические корабли,заявки
- миссии с указанием состава и целиПолеты Orion.Услуги
- астронавты,заявки
- полет с указанием назначения и командыMars Sample Return Mission.Услуги
- гильзы-пробирки с грунтом от Perseverance,заявки
- миссии Mars Sample Return Mission с указанием гильзГрузовые корабли к МКС.Услуги
- грузы для доставки на МКС,заявки
- полеты грузовых кораблей к МКС
Технадзор строительных объектов МГТУ.Услуги
- строящиеся здания в кампусе МГТУ,заявки
- проверки технадзора данных строекМероприятия музея МГТУ.Услуги
- виды проводимых в музее мероприятий,заявки
- заявки для групп на данные мероприятияБронирование аудиторий МГТУ.Услуги
- аудитории МГТУ,заявки
- заявки на бронирование аудиторий под проводимое мероприятиеПарковка МГТУ.Услуги
- парковки МГТУ,заявки
- заявки на пропуск/абонементы автомобилей на парковкиЗапись на спортивные курсы МГТУ.Услуги
- еженедельные группы по курсам,заявки
- запись на группыСайт конференции.Услуги
- авторы статей,заявки
- заявка на публикацию статьиПроведение митапов по ИИ.СУслуги
- спикеры,заявки
- митапыСоставление расписания преподавателей.Услуги
- преподаватели,заявки
- занятия (день недели+время+ауд). Не должно быть двух занятий в одно время у преподавателяСоставление расписания групп.Услуги
- учебные группы,заявки
- занятия (день недели+время+ауд). Не должно быть двух занятий в одно время у группыЗаявки на специалистов ГУИМЦ (сурдопереводчиков, сурдоакустики и тд).Услуги
- специалисты центра ГУИМЦ,заявки
- заявка на специалистов на конкретное время и место.Заявки на техническое оборудование (проекторы, экраны и тд).Услуги
- виды оборудования,заявки
- заявка на предоставление оборудования в аудиторию на время.Заявки на пропуски для посетителей.Услуги
- корпусы МГТУ,заявки
- заявка со списком посетителей, временем посещенияПропуски на выходные и праздничные дни.Услуги
- список сотрудников,заявки
- заявка на работу в выходной, праздничный или ночью с указанием причины.Составление занятий.Услуги
- задания для выполнения,заявки
- занятия со списком для выполнения студентамиЗаявки на совместный доступ к документы.Услуги
- документы,заявки
- заявки на предоставление доступа на редактирование к документам.Приказы ректора.Услуги
- подразделения МГТУ для ознакомления с приказом,заявки
- приказы ректораПроверка кода студентов.Услуги
- языки программирования,заявки
- заявка от студента на проверку кода преподавателемФормирование групп на прохождение медосмотра.Услуги
- доступное время для записи на медосмотр,заявки
- заявки от студентов для включения в группу на медосмотрМероприятия профкома МГТУ.Услуги
- билеты в музеи, театры, конкурсы и тд,заявки
- подача заявок на бесплатное распределение билетовЗаявки на повышение квалификации.Услуги
- курсы,заявки
- прохождения курса/программы дисциплинВыставки МГТУ.Услуги
- направления/тематика выставки,заявки
- выставка с указанием даты, времени и помещенияОбратная связь по курсу.Услуги
- группы студентов,заявки
- запрос от преподавателя на проведение опроса по выборанным группамПриказы об отчислении.Услуги
- студенты,заявки
- приказы на отчисление студентовПриемная комиссия.Услуги
- специальности для поступления,заявки
- продача документов для поступленияСоставление маршрута.Услуги
- доступные переходы между корпусами в капмусе,заявки
- заявка на объединение участков в единый маршрут - или ошибка
Трудоустройство женщин в отпуске по уходу за ребенком.Услуги
- вакансии для женщин с детьми,заявки
- подача заявок на вакансии от женщинСистема трудоустройства для инвалидов.Услуги
- вакансии для инвалидов,заявки
- подача заявок на вакансию от инвалидовСистема социальной помощи инвалидам - доставка еды, сопровождение на мероприятие и тд.Услуги
- оказываемые услуги,заявки
- заявки на них от инвалидовЗаказы на молочную кухню (для детей).Услуги
- виды продуктов,заявки
- заявки от родителейСправочник по медицине катастроф и первой помощи.Услуги
- виды первой помощи,заявки
- виды поражений при чрезвычайных ситуацияхСервис для работодателей.Услуги
- города, в которых будет открыта вакансия,заявки
- заявки на создание вакансий
История ВОВ - участники ВОВ и их привязка к архивным документам (личные карточки, наградные, ЖБД итд).Услуги
- архивные документы,заявки
- привязка участника с наградой/событием к документуВысочайшие вершины Земли и их покорители.Услуги
- знаменитые покорители,заявки
- экспедиции по покорению вершин.Система археологов - находки и их привязка к раскопкам.Услуги
- места археологических раскопок,заявки
- факты находок предметов с группировкой по экспедицииЭпоха географических открытий.Услуги
- первооткрыватели,заявки
- их открытияЖивотные рекордсмены.Услуги
- виды рекордов (самые большие, самые быстрые и тд),заявки
- жившие виды животныхМорские битвы на Тихом океане.Услуги
- конкретные корабли,заявки
- составы соединений с адмиралом и указанием победа/поражениеПоходы викингов.Услуги
- города,заявки
- походы викинговДревнерусские княжества.Услуги
- княжества,заявки
- правители княжеств по периодамОсвоение Дальнего Востока и Сибири.Услуги
- населенные пункты и географические объекты,заявки
- экспедиции и походы в XVI-XVIII векахПалеонтология.Услуги
- геологические периоды,заявки
- ископаемые животные (отряды-рода)История живописи.Услуги
- картины художников,заявки
- заявки на экспертизу для отнесение данных картин какому-то художникуАтомные электростанции СССР и СНГ.Услуги
- реакторы для энергоблоков,заявки
- история электростанцийРегистрация погодных явлений на метеостанции.Услуги
- погодное явление,заявки
- значения показателей - запись за деньРегистрация температуры на метеостанциях Москвы.Услуги
- метеостанции Москвы,заявки
- регистрация за день
- Опишите шаблон MVC, структуру и назначение компонентов.
- Опишите схему, как реализован шаблон MVC в фреймворке Django.
- Что такое Django? Его назначение и возможности.
- Что такое шаблонизация Django? Приведите примеры.
- Опишите протокол HTTP. Схему работы и основные понятия.
- Опишите стек протоколов интернета TCP/IP.
- Перечислите основные составляющие web и опишите их.
- Что такое HTML, CSS? Приведите примеры.
- Что такое URI? Опишите элементы URI для HTTP.
- Виды баз данных. Приведите примеры и отличия.
- Объясните назначение ORM, ее составляющие. Укажите преимущества и недостатки ORM.
- Что такое модель и миграция?
- Укажите группы SQL запросов, их примеры и назначение.
- Что такое веб-сервис? Отличие от веб-сервера.
- Что такое Web API? Назначение и применение.
- Микросервисная архитектура. Отличия от монолитной архитектуры.
- Перечислите требования REST, опишите их.
- Что такое RPC? Варианты RPC и их отличия.
- Что такое Swagger? Назначение и использование.
- Что такое AJAX? Схема работы и назначение.
- Назначение JSON и XML. Примеры и отличия.
- Что такое git? Опишите схему работы с ветками GitHub.
- Методология разработки Agile. Состав IT команды.
- Перечислите основные диаграммы UML и их назначение.
- Что такое Web реального времени? Что такое WebSocket?
- Укажите отличия XmlHttpRequest и fetch. Приведите примеры.
- Перечислите отличия Axios от fetch. Приведите примеры.
- Что такое React? Что такое компонент, его состояния и свойства.
- Структура React проекта. Назначение Babel и WebPack.
- Жизненный цикл React компонента.
- Назначение хуков useState и useEffect.
- Назначение хуков useContext и useReducer.
- Опишите схему работы менеджера состояний Redux.
- Опишите работу Redux на диаграмме последовательности.
- Какие параметры передаются при создании Store? Их назначение.
- Что такое Cors? Укажите варианты решения.
- Что такое Redis? Его назначение и варианты применения.
- Опишите схему авторизации с помощью JWT.
- Опишите схему авторизации с помощью сессий.
- Что такое авторизация и аутентификация? Укажите варианты авторизации и их отличия.
- Что такое SSO? Схема работы.
- Протокол OAuth. Схема работы.
- Отличия мобильных и веб-приложения. Языки и технологии для разработки мобильных приложений.
- Что такое pwa? Отличия от других вариантов приложений.
- Плюсы и минусы разработки на React Native.
- Назначение фреймворков Electron и Tauri. Их отличия.
- Опишите этапы подхода DevOps. Назначение GitHub Pages.