Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

52
Расчетная работа по дисциплине «Моделирование и анализ программного обеспечения» Тема: «Проектирование и разработка программного продукта» ПОС-10в/Кондратюк Т.А.

Upload: lita-ford

Post on 15-Jun-2015

371 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Расчетная работапо дисциплине «Моделирование и

анализ программного обеспечения»Тема: «Проектирование и разработка

программного продукта»

ПОС-10в/Кондратюк Т.А.

Page 2: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

• Класс ПО: WEB-служба.• Ник: Цифровой калейдоскоп растрового

коллажа.• Тема: Программный робот автоматической

генерации плаката современного фигуративного искусства.

• Назначение: Ключевые слова облака тегов используются для автоматической генерации

• растрового 2D изображения фигуративного цифрового коллажа.

Page 3: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Концептуальная модель

Page 4: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Описание

• Участниками процесса создания коллажа является пользователь и программный робот

• Исходные данные в виде фразы или набора слов задаются пользователем

• Выходные данные в видео готового коллажа формируются программным роботом

Page 5: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 6: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Описание

• Роль пользователя заключается в составлении фразы или набора слов для формирования коллажа

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

Page 7: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 8: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Описание

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

Page 9: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 10: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Описание

• Выходными данными является готовая картина имеющая такие характеристики как ширина и высота, а также имеющая составные части: спрайты

• Спрайт имеет свойства: размер и граница. Размер спрайта будет составлять 20% от исходного размера спрайта. Граница спрайта будет иметь определенную толщину и будет размыта с прозрачностью по убыванию коэффициента альфа-канала до нуля.

• Спрайты могут быть как простыми и геометрически сложными объектами

• Спрайты могут располагаться как случайным, так и неслучайным образом

Page 11: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Протокол в формате rtf• Цифровой калейдоскоп растрового коллажа

• Участники

– Пользователь

• действия

• составление фразы или набора слов

– программный робот

• действия

• Анализ составленных пользователем фразы или набора слов

• Автоматическая генерация плаката по фразе пользователя

• Исходные данные

– Названия каких-либо предметов,явлений

Page 12: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Протокол в формате rtf• Выходные данные

– готовый плакат• Характеристики• ширина• высота• состоит• спрайт• характер расположения

– случайный– неслучайный

• свойства– размер– граница

» характеристики» ширина» размытость

• виды– простые объекты– большие и геометрически сложные объектыы

Page 13: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Схема знаний

Page 14: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 15: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 16: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Контекстная диаграмма

На данном слайде отображен процесс построения коллажа из картинок. Входными данными является набор слов или фраза (ограничение 12 слов), заданная пользователем. Выходными данными является URL-ссылка на коллаж, иллюстрирующий слова. В процессе построения коллажа принимает участие программный робот.

Page 17: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 18: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На данном слайде показана декомпозиция блока А0 «Построение коллажа». При декомпозиции данного блока были выделены такие подпроцессы: «Поиск картинок в интернете», «Формирование коллажа», «Отображение коллажа».

Page 19: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 20: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На данном слайде отображена декомпозициия блока A2 «Поиск картинок в Интернете». Данный блок содержит подпроцессы «Отправка запроса в поисковую систему» и «Сохранение запрашиваемых картинок в БД программы». Программный робот будет отправлять запрос в поисковую систему, и запрос должен содержать только 1 слово из набора слов пользователя. Входными данными для подпроцесса А12 будут являться картинки из Интернета.

Page 21: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 22: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На данном слайде отображена декомпозиции я блока A3 «Формирование коллажа». Данный блок содержит подпроцессы «Обнаружение контуров», «Вырезание объекта», «Масштабирование», «Расположение случайным образом или в виде «пирамиды»». Спрайты вырезаются с ограничением 20 Px с отступом по границе контура. Также есть ограничение на размытие по границе объекта – 20 рх.

Page 23: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

DFD диаграммы

Page 24: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 25: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Данная DFD диаграмма показывает, какие входные и выходные потоки связаны с процессом «Построение коллажа». Входные данные - это набор слов, задаваемый сущностью «Пользователь», выходные данные – URL-ссылка на готовый плакат.

Page 26: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 27: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На данном слайде отображена декомпозиция процесса «Построение коллажа». Вследствие декомпозиции выделилось 2 подпроцесса: «Найти картинки в Интернете» и «Формирование коллажа». Сущностью на данной диаграмме выступает пользователь.

Page 28: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)
Page 29: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На данном слайде отображена декомпозиция процесса «Формирование коллажа». Вследствие данной декомпозиции выделились такие подпроцессы: «Обнаружить контур картинки», «Вырезать спрайт», «Размыть по границе спрайта» и тд. В конечном итоге пользователь получает URL-ссылку на построенный коллаж.

Page 30: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

UML диаграммы

Page 31: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

пользователь

программный робот

просмотреть коллаж

найти картинки в Интернете найти контуры изображения

сформировать коллаж

«включить»«включить»

сформировать URL-ссылку

«включить»

Вырезать спрайт по контуру

«включить»

Масштабировать на 20%

«включить»

Размыть по границам спрайта«включить» Разместить на полотне«включить»

Разместить случайным образом

«расширить»

Разместить в виде пирамиды

«расширить»

зритель

разработчик

ввести набор слов

Page 32: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

• На данной диаграмме отображены 2 актора: зритель и программный робот. Зритель является обобщением Пользователя и Разработчика.

• Действие «Сформировать коллаж» включает в себя: «Найти картинки в Интернете», «Разместить на полотне», «Вырезать спрайт по контуру», «Найти контуры изображения» и тд.

• Действие «Разместить на полотне» имеет расширения: «Разместить случайным образом» и «Разместить в виде пирамиды».

Page 33: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

ПользовательПрограммный робот

ввести набор слов

Кол-во слов равно 12?

найти картинки в Интернете

сохранение картинок в БД программы

вырезание спрайта по контуру

формирование URL-ссылки на готовый коллаж

обнаружение контуров изображения

Размытие спрайтов по контуру

Масштабирование на 20%

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

Просмотр коллажа

Page 34: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

ПользовательПрограммный робот

ввести набор слов

Кол-во слов равно 12?

найти картинки в Интернете

сохранение картинок в БД программы

обнаружение контуров изображения

Page 35: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

вырезание спрайта по контуру

формирование URL-ссылки на готовый коллаж

Размытие спрайтов по контуру

Масштабирование на 20%

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

Просмотр коллажа

Page 36: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На данной диаграмме отображена последовательность действий для создания коллажа из спрайтов. Действия разделены между двумя акторами – пользователем и программным роботом. Действия пользователя : ввести набор слов, просмотреть готовый коллаж. Действия программного робота: найти картинки в Интернете, сохранить картинки, вырезать спрайт по контуру и тд.

Page 37: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

p : Пользователь t : словоprog : Программный робот k : Картинка s : спрайтp : полотно

"create"

"call"

найти картинку в Интернете

обнаружение контура

координаты контура

"create"

вырезание по контуру

вырезанная картинка

размыть по границе

масштабировать

готовый спрайт

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

готовый коллаж

Page 38: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

p : Пользователь t : словоprog : Программный робот k : Картинка s : спрайтp : полотно

"create"

"call"

найти картинку в Интернете

обнаружение контура

координаты контура

вырезание по контуру

вырезанная картинка

Page 39: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

"create"

размыть по границе

масштабировать

готовый спрайт

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

готовый коллаж

Page 40: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На данной диаграмме отоборажены взаимодействия объектов и акторов упорядоченные по времени. Акторами выступают «Пользователь» и «Программный робот». Объектами являются «Фраза», «Спрайт», «Коллаж».

Page 41: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Программный робот.php

«компонент»

Веб-сервер

«компонент»

Пользователь

«компонент»

Поисковая систем Google

«компонент»

ISearch

Url-ссылки на картинки

«компонент»

Веб-служба

«компонент»

IUser

База данных картинок.db

«компонент»

style.css

«компонент»

main.html

«компонент»

Запрос.js

«компонент»

URL-сcылка на готовый коллаж

«компонент»

Page 42: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

• На данной диаграмме показаны все существующие компоненты системы.

• Пользователь взаимодуйствует с Веб-Службой через интерфейс IUser. Веб-служба посылает запрос на Веб-Сервер, который в свою очередь отсылает запрос в поисковую систему Google (с помощью Запрос.js).Поисковая система выдает URL ссылки на картинки, которые впоследствии использует веб-служба для построения коллажа

Page 43: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Картинка

Атрибуты

+ высота+ имя файла+ цепной код контура изображения+ ширина

Операции

+ вырезание по контуру()+ обнаружение контура()

Коллаж

Атрибуты

+ высота+ ширина

Операции

+ вывести на экран()

Спрайт

Атрибуты

+ высота+ коэффициент масштабирования+ коэффициент размытия+ ширина

Операции

+ масштабирование()+ размытие()

Спрайт*

Коллаж1

Спрайт

1

Картинка

1

Программный робот

Атрибуты

Операции

+ вывести на экран()+ поиск картинок в Интернете()+ расположение в виде пирамиды()+ расположение случ. образом()+ формирование URL-ссылки на готовый коллаж()Программный робот

1

Спрайт *

Page 44: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На данной диаграмме отображены классы системы, их атрибуты и методы, а также связи между ними. В нашей системе 4 класса: Картинка, Спрайт, Коллаж, Робот. Между классом Спрайт и Коллаж есть отношение агрегации, а это значит, что класс Коллаж включает в себя объекты класса Спрайт. Между классом Картинка и Спрайт есть отношение композиции, а это значит класс Спрайт не сможет существовать отдельно от класса Картинка

Page 45: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

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

Page 46: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Общая схема интерфейса

Page 47: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На данной схеме отображены следующие формы: «Ввод фразы», «Коллаж», «Вид размещения», «Оформленный коллаж», «Формирование ссылки», «Поиск». Стартовой формой является форма «Ввод фразы».

Page 48: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Формы «Ввод фразы», «Поиск», «Коллаж»

Page 49: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На форме «Ввод фразы», после подтверждения выбора картинок, осуществляется поиск картинок в Интернете. После того, как поиск завершился, форма «Коллаж» становится активной. При нажатии на кнопку «Отмена» открывается форма «Ввод фразы», кнопка «Продолжить» переносит пользователя на форму «Вид размещения»

Page 50: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Формы «Оформленный коллаж», «Вид размещения», «Формирование ссылки»

Page 51: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

На форме «Вид размещения», пользователь выбирает вид размещения слайдов: в виде пирамиды, или случайным образом. При нажатии на кнопку «Создание коллажа» открывается форма «Оформленный коллаж». На форме «Оформленный коллаж» пользователь может просмотреть коллаж, и масштабировать его. При нажатии на кнопку «Получить ссылку», открывается форма «Формирование ссылки». При нажатии на кнопку «Ввод новой фразы» открывается начальная форма для ввода фразы. На форме «Формирование ссылки» пользователю предоставляется ссылка на коллаж, которую можно скопировать в буфер, нажав на кнопку «Скопировать ссылку».

Page 52: Расчетная работа по дисциплине МАПО (Кондратюк Т.А.)

Спасибо за внимание!