Расчётная работа

47
Министерство образования и науки Украины Донецкий национальный технический университет Расчётная работа по дисциплине: «Моделирование и анализ ПО» Разработал: ст.гр.ПОС-10а Дегтярь А.В.

Upload: hellcoder

Post on 15-Jun-2015

961 views

Category:

Education


0 download

TRANSCRIPT

Page 1: Расчётная работа

Министерство образования и науки УкраиныДонецкий национальный технический университет

Расчётная работапо дисциплине: «Моделирование и анализ ПО»

Разработал:

ст.гр.ПОС-10а Дегтярь А.В.

Page 2: Расчётная работа

Класс ПО: Мобильное приложение.Ник: Шар желаний и предостережений из онтологий пользователя.Тема: Чатбот мотивации на основе персональных фактов пользователя.Назначение: Структурирование хронологических фактов жизни пользователя. Цель: Составить концептуальную модель заданной функциональности компьютерной системы.

Page 3: Расчётная работа

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

Page 4: Расчётная работа

Минимальный набор данных вводимых пользователем: фото, пол, категория, связанная с онтологиями и эмоциями. Пользователь может связывать определенную фразу с определенной эмоцией и онтологией или не делать этого.

Page 5: Расчётная работа
Page 6: Расчётная работа

ФактыВажнейшими входными данными

программы являются события, происходящие в жизни пользователя, а так же ассоциация их с полученными эмоциями. Факты включают в себя настроение пользователя, произошедшее событие и произошедший случай. Пользователь отображает на данном этапе что он сделал, посетил, получил, съел, с кем пообщался. Также отображает какой случай произошел в его жизни.

Page 7: Расчётная работа

В программе присутствует справочник, который содержит онтологии и эмоции пользователя. По умолчанию справочники перечисляют самые распространенные онтологии и эмоции. Шесть хороших эмоций, две нейтральные и шесть негативных.

Page 8: Расчётная работа

Выходные данные программы формируется на ранее внесенных пользователем фактах случайным образом, но с учетом частоты ранее выданных ответов и подтверждение факта её повторного употребления в доверительный период времени. Программа подскажет, что поесть, что сделать, куда пойти, чем заняться, с кем пообщаться.

Page 9: Расчётная работа

ПРОТОКОЛ

1 Приложение 1.1 Выходные данные 1.2 Справочник 1.3 Входные данные 1.3.1 Факты 1.3.2 Данные пользователя1 Данные пользователя 1.1 Фото 1.2 Пол 1.2.1 Мужской 1.2.2 Женский 1.3 Онтологии 1.4 Эмоции1 Факты 1.1 Выпил 1.1.1 Воды 1.1.2 Сока 1.1.3 Пива 1.1.4 Вина 1.1.5 Колы 1.1.6 Компот 1.1.7 Чай 1.1.8 Кофе 1.2 Поел 1.2.1 Мясо 1.2.2 Картошка 1.2.3 Макароны

1.2.4 Суп 1.2.5 Суши 1.2.6 Пельмени 1.3 Пообщался 1.3.1 Друзья 1.3.2 Родственники 1.3.3 Коллеги 1.3.4 Муж / жена 1.4 Посмотрел 1.4.1 Фильм 1.4.2 Сериал 1.4.3 Передачу 1.4.4 Новости 1.5 Сходил 1.5.1 На работу 1.5.2 В кафе 1.5.3 В кино 1.5.4 В университет1.6 Настроение 1.6.1 Счастливое 1.6.2 Плохое 1.6.3 Депресивное 1.6.4 Нейтральное 1.6.5 Игривое 1.7 Временной показатель 1.7.1 Только что 1.7.2 Сегодня

1.7.3 Вчера 1.7.4 Час назад 1.7.5 На этой неделе

Page 10: Расчётная работа

ПРОТОКОЛ( продолжение)

1 Справочник 1.1 Эмоции 1.1.1 Влюблён 1.1.2 Доволен собой 1.1.3 Горд 1.1.4 Безмятежен 1.1.5 Удовлетворён 1.1.6 Эйфория 1.1.7 Трудно 1.1.8 Устал 1.1.9 Ностальгия 1.1.10 Одиноко 1.1.11 Раздосадован 1.1.12 Грустно 1.1.13 Печально 1.1.14 Липкий панический страх 1.2 Онтологии 1.2.1 Праздник 1.2.2 Еда 1.2.3 Отдых 1.2.4 Работа 1.2.5 Труд 1.2.6 Служба 1.2.7 Поездка в транспорте 1.2.8 Хобби 1.2.9 Болезнь

1.2.10 Туплю ленюсь 1.2.11 Гимнастика 1.2.12 Спортивная игра

1 Выходные данные 1.1 Желания 1.1.1 Еда 1.1.2 Напитки 1.1.3 Общение 1.1.4 Посещение мест 1.1.5 Занятия 1.1.6 Просмотр фильмов 1.1.7 Прослушивание музыки 1.2 Предостережения 1.2.1 Избегать употребления продуктов 1.2.2 Избегать общения с определёнными людьми 1.2.3 Избегать употребление напитков 1.2.4 Избегать посещения мест

Page 11: Расчётная работа
Page 12: Расчётная работа

Определить желание

• На слайде отображен главный процесс проектированной системы – определение желания пользователя. Входными данными для данного процесса является произошедшие события. Выходными данными является сформулированное рекомендации и предостережения для пользователя. Исполнительный механизм – приложение Шар желаний. К управлению относим – справочник со стандартными эмоциями и онтологиями внутри, а также пользовательские данные.

Page 13: Расчётная работа
Page 14: Расчётная работа

Декомпозиция главного

процесса

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

Page 15: Расчётная работа
Page 16: Расчётная работа

Декомпозиция создания события

• На слайде изображена декомпозиция процесса создания нового события. При вводе нового события пользователь должен выбрать соответствующие настроение, временную метку, категорию из предлагаемых автоматически системой и ввести текст события. После чего система создаст новое событие с введенными данными.

Page 17: Расчётная работа
Page 18: Расчётная работа

Декомпозиция анализа событий

• На слайде показана декомпозиция процесса анализа всех сохраненных ранее событий. После ввода нового события пользователем – оно сохраняется б базу данных и система анализирует только что добавленное вместе с раннее сохраненными. На выходе получаем результаты анализа статистики событий.

Page 19: Расчётная работа
Page 20: Расчётная работа

Декомпозиция процесса определения

желаний

• На слайде показана декомпозиция процесса определения желания для пользователя. Получив статистику событий система определяет форму желания, после чего формулируется конкретное действие. На выходе получаем готовые сформулированные рекомендации и предостережения, основанное на статистике событий пользователя.

Page 21: Расчётная работа
Page 22: Расчётная работа

Система генерации желаний

• На слайде изображена контекстная DFD диаграмма по теме генерации желаний для пользователя. В систему генерации желаний из внешних сущностей передаться база произошедших событий. В результате работы системы в базу желаний передаться новое сформулированное желание.

Page 23: Расчётная работа
Page 24: Расчётная работа

Декомпозиция генерации

желаний

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

Page 25: Расчётная работа
Page 26: Расчётная работа

Декомпозиция выбора

онтологий

• На диаграмме отображена декомпозиция выбора онтологий событий. Составляющие выбор онтологий и сами составляющие. Пользователь может как выбрать стандартный список онтологий, так и отредактировать их по своему желанию. В результате получаем категорию, которая добавляется в новое событие для последующей генерации желаний.

Page 27: Расчётная работа

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

Создать событие Выбрать нстроение

Выбрать случай

Выбрать дело

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

База событий

Сохранненые данные

<<include>>

Выход из системы

Ввести параметры

<<include>>

Загрузить словарьВыбор эмоции

Выбор онтологии

Сохранить желание

<<extend>>

Сохранить событие

<<extend>>

<<include>>

<<include>>

База словаря

Page 28: Расчётная работа

Диаграмма вариантов

использования

• На слайде отображена диаграмма вариантов использования. При запуске приложения пользователь имеет доступ к следующим вариантам использования: создать событие, определить желание, загрузить словарь, выйти из программы. Элемент диаграммы создать событие включает в себя ввод параметров, выбор дела, выбор настроения, выбор случая расширяется следующими элементами Use Case: Сохранение, Вывод на печать. Элементы Use Case Определить желание и загрузка словаря включают в себя выбор онтологий и эмоций, анализ событий . Элемент Выход из системы показывает завершение использования программы.

Page 29: Расчётная работа
Page 30: Расчётная работа

Диаграмма компонентов

• На слайде изображена диаграмма компонентов проектируемой системы. В систему поступает файл события. Система содержит модули загрузки, сохранения, создания желаний. В системе присутствуют базы данных событий, желаний, эмоций, онтологий. На выходе получаем сформулированное желание, которое сохраняется в базе данных.

Page 31: Расчётная работа

Клиент

+Никнейм

+Добавить событие в БД()+Добавить эмоции,онтологии в БД()+Определить желание()+Добавить данные()+Описание и рекомендации к желаниям()

Событие

+Имя файла

+Создать()+Редактировать()+Выбрать()

Эмоции,онтологии

+Имя

+Создать()+Сохранить()+Удалить()+Прикрепить()

Данные

+Имя записи

+Время()+Действие()+Прикрепление к событию()+Фраза()

Желание

+Имя

+Сформулировать()+Проанализировать()+Удалить()

Окно

+Показать()+Скрыть()

Page 32: Расчётная работа

Диаграмма классов• На слайде изображена диаграмма классов uml.

Проектируемая система содержит следующие классы: события, данные, желание, клиент, окно, эмоции. Класс клиент имеет атрибут Никнейм, в классе реализованы следующие методы: Добавить событие в БД, Добавить данные, Определить желание, Добавить эмоции в БД. Класс события имеет атрибут Имя файла, реализует следующие методы: Создать, Редактировать, Выбрать. Класс данные содержит атрибут Имя записи, и методы время, действие, фраза. Класс Эмоции содержит атрибуты Имя реализует методы: создать, сохранить. Удалить, прикрепить. Класс желание содержит атрибут имя и методы: сформулировать, проанализировать, удалить.

Page 33: Расчётная работа
Page 34: Расчётная работа

Диаграмма последовательности

• На слайде показана диаграмма последовательности. Она отображает последовательность взаимодействия пользователя и классов программы между собой. При запуске программы создается класс клиент, с помощью которого пользователь может выбрать дальнейшие действия. При выборе действия создать событие создается класс событие, при выборе данных– класс данных, при выборе эмоций – класс эмоций, при выборе желаний – класс желаний. При сохранении желаний – класс клиент.

Page 35: Расчётная работа
Page 36: Расчётная работа

Диаграмма деятельности• На слайде показана диаграмма деятельности. На ней

отображена последовательность с которой пользователь может работать с системой. Сначала пользователь может выбрать следующие варианты работы: создание события, определение желания, а также выход из программы. При выборе определения желания, проходит проверка на наличие файлов в БД, если файлы есть то производиться анализ событий, если файлы отсутствуют то программа завершает работу. При создание события необходимо выбрать дело, при выборе производиться проверка на нахождение нужного, если нужного нет, то необходимо добавить новое дело. Если нужное было найдено, то необходимо выбрать настроение, при выборе которого производиться такая же проверка. При нахождении нужного, следует выбрать эмоцию, после чего событие сохраняется.

Page 37: Расчётная работа
Page 38: Расчётная работа

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

программы

• На слайде отображена общая схема описания программы по определению желаний случайным образом. Схема описания охватывает весь функционал описанный ранее. Интерфейс программы предусматривает возможности редактирования информации о пользователе а так же событий из жизни пользователя. Вывод рекомендаций по запросу пользователя.

Page 39: Расчётная работа

Главное меню• На рисунке отображен вид

главного меню программы. Меню содержит следующие пункты: ввести событие, задать вопрос, личные данные, справка, выход. Пункт ввести событие отвечает за создание нового события. Задать вопрос отвечает за анализ всех предыдущих событий и формирование случайного желания.

Page 40: Расчётная работа

Личные данные• Для использование

возможностей программы пользователь должен ввести личные данные. Данные включают имя, пол, возраст, фото.

Page 41: Расчётная работа

Ввод событий• При выборе в главном меню

пункта Добавить события пользователь попадает в диалог добавления нового события. Диалог включает фото(необязательно), временную метку из списка, категорию из базы онтологий, вызванные эмоции, а так же текст – описание события.

Page 42: Расчётная работа

Ввод событий• Ввод текстовой информации

осуществляется при помощи экранной клавиатуры.

Page 43: Расчётная работа

Определение желаний• После заполнения личной

информации и базы фактов пользователь может задать вопрос по одной из тем содержащихся в списке онтологий.

Page 44: Расчётная работа

Рекомендации программы• В ответ на поставленный

вопрос программа выдаёт рекомендации и предостережения пользователю основываясь на введённых ранее фактах.

Page 45: Расчётная работа

Справка• Справка содержит

информацию о приложении и данные о разработчике.

Page 46: Расчётная работа

Выводы

• В результате выполнения расчетной работы был проведён процесс моделирования программного обеспечения «Магический шар». Было проведено концептуальное проектирование системы, разработана структурно-функциональная модель и схема информационных потоков, построены uml диаграммы и спроектирован интерфейс разработываеммной системы.

Page 47: Расчётная работа

Благодарю за внимание