Download - Докладчик: Бульёнов А. В., аспирант
![Page 1: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/1.jpg)
Докладчик: Бульёнов А. В., аспирантНаучный руководитель: Шалыто А. А., д. т. н., профессор, зав. кафедрой КТ
Методыавтоматного программированияв разработке web-приложений
Методыавтоматного программированияв разработке web-приложений
Санкт-Петербургский государственный университетинформационных технологий, механики и оптикиКафедра Компьютерные Технологии
![Page 2: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/2.jpg)
Цели работы
Выявить основные проблемы разработки web-приложенийсложная иерархия;сложное визуальное представление;большая зависимость от контекста;отсутствие стандарта проектирования и
оформления Описать возможности и методы автоматного
подхода в решении проблем web-приложений
Сделать выводы о перспективах использования этого подхода
2
![Page 3: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/3.jpg)
Выбор подхода
В качестве подхода к разработке web-приложений был выбран автоматный подход. Он обеспечивает:
удобное визуальное оформление на этапе разработки;
эффективную работу со сложными иерархическими структурами;
сохранение истории; сохранение контекста выполнения;
3
![Page 4: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/4.jpg)
Этапы разработки ПО
Разработка любого приложения (в том числе и web-приложения) состоит из следующих этапов:
постановка задачи; анализ исходных данных; выбор архитектуры и шаблонов
программирования и т. д.; реализация на выбранном языке
программирования; тестирование и усовершенствование.
4
![Page 5: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/5.jpg)
Автоматный подход и web
Все подходы к разработке web-приложений можно условно разделить на несколько групп по месту понятия «состояние» в подходе:
состояние как web-страница; состояние как кластер; состояние как логическая единица меню; состояние как действие блока страницы.
5
![Page 6: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/6.jpg)
Состояние как страница
6
![Page 7: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/7.jpg)
Состояние как кластер
7
![Page 8: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/8.jpg)
Состояние как элемент PHCPHC (Passive HTML Control) – набор ссылок,
отвечающий за работу какого-либо логического элемента сайта. Для хранении информации и передачи параметров используется механизм сессий.
Каждый связанный набор ссылок (PHC) моделируется отдельным конечным автоматом. Каждое состояние - отдельный кластер страниц. В зависимости от входных параметров результат будет отличаться
Совокупность состояния, параметров сессии и HTTP-параметров, передаваемые в состояние дают в результате конкретную страницу
8
![Page 9: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/9.jpg)
Состояние как элемент PHC
9
![Page 10: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/10.jpg)
Состояние как действие блока страницы
Каждый блок страницы (вне зависимости от того, является он PHC или нет) моделируется автоматом с набором состояний. При выполнении какого-либо действия выполняется смена состояния конкретного блока. Блок – фрагмент сайта.
Такой блок может соответствовать шапке, подвалу, меню сайта, области отображения контента и т. д.
10
![Page 11: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/11.jpg)
Состояние как действие блока страницы
11
Шапка
Контент
![Page 12: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/12.jpg)
Тестирование с использованием автоматного подходаОсновное достоинство тестирования web-
приложений с использованием автоматного подхода заключается в том, что автоматное представление является «родным» для web-приложений.
Основой для автоматного тестирования является либо проверка правил, указанных для состояния-страницы, либо проверка автомата сайта на соответствие эталонному автомату.
12
![Page 13: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/13.jpg)
Заключение Автоматный подход предполагает
использование «родных» для web-приложений понятий, что существенно уменьшает порог вхождения
Приведенный подход способен решить ряд существующих проблем и предоставляет общую методику для разработки и тестирования web-приложения
В дальнейшем планируется существенно расширить функционал PHC и метода «состояние как блок»
13
![Page 14: Докладчик: Бульёнов А. В., аспирант](https://reader036.vdocuments.net/reader036/viewer/2022062309/5681422f550346895dae4498/html5/thumbnails/14.jpg)
Конец
14