ПРОЕКТИРОВАНИЕ СИСТЕМЫ ИНТЕРНЕТ-МОНИТОРИНГА ИНТЕРЕСОВ ПОЛЬЗОВАТЕЛЕЙ СОЦИАЛЬНОЙ СЕТИ FRAGRANTICA - Студенческий научный форум

VII Международная студенческая научная конференция Студенческий научный форум - 2015

ПРОЕКТИРОВАНИЕ СИСТЕМЫ ИНТЕРНЕТ-МОНИТОРИНГА ИНТЕРЕСОВ ПОЛЬЗОВАТЕЛЕЙ СОЦИАЛЬНОЙ СЕТИ FRAGRANTICA

Мошкова Е.О. 1, Ширинова А.А. 1, Охапкина Е.П. 1
1ФГБОУ ВПО «Российский государственный гуманитарный университет»
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
В статье кратко изложено проектирование системы интернет-мониторинга интересов пользователей социальной сети, выполненное в рамках выпускной квалификационной работы на тему «Разработка системы интернет-мониторинга интересов пользователей социальной сети» (РГГУ, ФИСБ, 4 курс).

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

Для примера был взят сайт fragrantica.ru, в котором есть большое количество данных о самих ароматах.

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

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

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

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

После проведения анализа предметной области выполнен переход к проектированию рекомендательной системы для пользователей социальной сети Fragrantica. В качестве средства моделирования выбрано объектно-ориентированное CASE-средство Rational Rose.

CASE-средство Rational Rose предназначено для автоматизации этапов анализа и проектирования ПО, а также, для генерации кодов на различных языках и выпуска проектной документации [1].

Для объектно-ориентированного моделирования в Rational Rose используется унифицированный язык моделирования (UML), являющийся языком графического описания для создания абстрактной модели системы, называемой UML-моделью [2].

Начальным этапом создания модели является разработка диаграммы вариантов использования (Use Case). Диаграмма Use Case позволяет создать список операций, которые выполняет система. Каждая такая диаграмма – это описание сценария поведения, которому следуют действующие лица (Actors) [3]. Диаграмма вариантов использования для рекомендательной системы представлена на рис.1.

Рис. 1 Диаграмма вариантов использования (UseCase)

Состав диаграммы:

  1. Четыре актера с именами: Пользователь, Агент сборщик, Агент анализатор, Профиль.

  2. Пять вариантов использования: Получение рекомендаций, Проверка регистрационных данных, Отказ в доступе, Сбор информации, Анализ собранной информации.

  3. Стрелочками обозначены направленные ассоциации.

Далее была создана диаграмма классов. Этот тип диаграмм позволяет создавать логическое представление системы, на основе которого создается исходный код описанных классов [3].

Фрагмент диаграммы классов модели ресурса после добавления атрибутов и операций для класса Анализ информации представлен на рис.2

Рис. 2 Фрагмент диаграммы классов (Class)

Чтобы закончить спецификацию класса Анализ информации, добавлены еще 5 атрибутов и 4 операции со следующими свойствами:

  1. ID пользователя, значение логина и значение пароля. В секцию документации атрибутов введен поясняющий текст: «Механизм обработки считывает значение этого атрибута из профиля пользователя».

  2. Ввод логина и ввод пароля. В секцию документации атрибутов введен поясняющий текст: «Значение этого атрибута вводится пользователем с клавиатуры».

  3. Создание нового сеанса(). В секцию ее документации введен поясняющий текст: «Вызывается после авторизации пользователя».

  4. Проверка введенных данных(). В секцию ее документации введен поясняющий текст: «Вызывается после введения всех данных пользователем».

  5. Подбор рекомендаций(). В секцию ее документации введен поясняющий текст: «Вызывается после завершения всех проверок введённых данных».

  6. Завершение сеанса(). В секцию ее документации введен поясняющий текст: «Вызывается после завершения всех действий банкомата по обслуживанию клиента».

На следующем этапе создана диаграмма кооперации. Этот тип диаграмм позволяет описать взаимодействия объектов, абстрагируясь от последовательности передачи сообщений. На этом типе диаграмм в компактном виде отражаются все принимаемые и передаваемые сообщения конкретного объекта, и типы этих сообщений [3].

Диаграмма кооперации для модели рекомендательной системы представлена на рис. 3

Рис. 3Диаграмма кооперации (Collaboration)

Для завершения построения диаграммы кооперации, добавлены оставшиеся объекты, связи и сообщения:

  1. Объекты классов с именами: Пользователь, Механизм обработки и выдачи, Навигационная панель, Контроллер профиля, Контроллер ресурса, Анализ информации, Формы приложения.

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

  3. Сообщение: Создание нового сеанса(), направленное от объекта класса - актера Пользователь к объекту класса Механизм обработки и выдачи.

  4. Сообщение: Чтение входных данных(), направленное от объекта класса – актера Контроллер профиля к объекту класса Механизм обработки и выдачи.

  5. Сообщение: Доступ к профилю пользователя(), направленное от объекта класса - актера Контроллер профиля к объекту класса Контроллер ресурса.

  6. Сообщение: Работа с приложением(), направленное от объекта класса Навигационная панель к объекту класса – актера Контроллер профиля.

  7. Сообщение: Вывод меню(), направленное от объекта класса - актера Контроллер профиля к объекту класса Формы приложения.

  8. Сообщение: Ввод предпочтений(), направленное от объекта класса – актера Пользователь к объекту класса Навигационная панель.

  9. Сообщение: Подбор рекомендаций(), направленное от объекта класса-актера Контроллер профиля к объекту класса Анализ информации.

  10. Сообщение: Вывод рекомендаций(), направленное от объекта класса - актера Контроллер профиля к объекту класса Формы приложения.

  11. Сообщение: Изменение профиля(), направленное от объекта класса-актера Контроллер профиля к объекту класса Контроллер ресурса.

  12. Сообщение: Завершение операции(), направленное от объекта класса-актера Контроллер профиля к объекту класса Анализ информации.

Следующим этапом проектирования является создание диаграммы последовательности. Данный тип диаграмм позволяет отразить последовательность передачи сообщений между объектами [3].

Диаграмма последовательности для рекомендательной системы представлена на рис.4. Объекты и сообщения были оставлены без изменения.

Рис. 4 Диаграмма последовательности (Sequence)

Затем создается диаграмма состояний. Диаграмма состояний (Statechart) предназначена для отображения состояний объектов системы, имеющих сложную модель поведения [3]. Диаграмма состояний модели рекомендательной системы представлена на рис. 5

Рис. 5. Диаграмма состояний (Statechart)

Для завершения построения диаграммы состояний, были добавлены оставшиеся состояния и переходы:

  1. Состояния с именами: Ожидание ввода логина и пароля, Проверка введенных данных, Ожидание выбора предпочтений, анализ информации, подбор рекомендаций, вывод рекомендаций, Завершение обслуживания.

  2. Переход: логин/пароль введен, направленный от состояния Ожидание ввода логина и пароля к состоянию Проверка введенных данных.

  3. Переходсосторожевым условием: [Введенные данные верны], направленный от состояния Проверка введенных данных к состоянию Ожидание выбора предпочтений.

  4. Переходсо сторожевымусловием: [Введенные данные не верны], направленный от состояния Проверка введенных данных к состоянию Завершение обслуживания.

  5. Переход: Предпочтения введены, направленный от состояния Ожидание выбора предпочтений к состоянию Анализ информации.

  6. Переход: Данные получены, направленный от состояния Анализ информации к состоянию Подбор рекомендаций.

  7. Переход: Рекомендации выведены на экран, направленный от состояния Подбор рекомендаций к состоянию Вывод рекомендаций.

  8. Переход: Сеанс завершен, направленный от состояния Вывод рекомендаций к состоянию Завершение обслуживания.

  9. Переход: Операция завершена, направленный от состояния Завершение обслуживания к состоянию Ожидание ввода логина и пароля.

  10. Переход, направленный от состояния Ожидание ввода логина и пароля к финальному состоянию.

На следующем этапе создана диаграмма компонентов. Этот тип диаграмм предназначен для распределения классов и объектов по компонентам при физическом проектировании системы [3].

Диаграмма компонентов модели рекомендательной системы представлена на рис.6

Рис. 6 Диаграмма компонентов (Component)

Для завершения построения диаграммы компонентов, были добавлены оставшиеся компоненты и зависимости:

  1. Компонент с именем: Механизмы приложения, для которого задан стереотип Task Specification.

  2. Компоненты с именами: Механизм обработки и выдачи, Механизм анализа информации, Навигационная панель, Формы приложения, для которых задан стереотип Task Body.

  3. Зависимость от компонента с именем MainRecomend.exe к компоненту с именем Механизмы приложения.

  4. Зависимость от компонента с именем MainRecomend.exe к компоненту с именем MainSite.

  5. Зависимость от компонента с именем Механизм обработки и выдачи к компоненту с именем Механизмы приложения.

  6. Зависимость от компонента с именем Механизм анализа информации к компоненту с именем Механизмы приложения.

  7. Зависимость от компонента с именем Навигационная панель к компоненту с именем Механизмы приложения.

  8. Зависимость от компонента с именем Формы приложения к компоненту с именем Механизмы приложения.

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

Список источников литературы:

  1. Новоженов Ю.В. Объектно-ориентированные технологии разработки сложных программных систем. М., 1996.

  2. UML – Википедия. URL: https://ru.wikipedia.org/wiki/UML (дата обращения 27.01.2015)

  3. UML диаграммы в Rational Rose. URL: http://www.interface.ru/fset.asp?Url=/rational/diag_uml.htm (дата обращения 01.02.2015)

Просмотров работы: 980