Алгоритмическое и программное обеспечение подсистемы «Аналитик» многофункционального веб-портала



страница1/3
Дата04.01.2017
Размер0.6 Mb.
Просмотров447
Скачиваний0
  1   2   3

Министерство Образования Российской Федерации


Государственное образовательное учреждение высшего профессионального образования

«Национальный Исследовательский

Томский политехнический университет»


Институт Кибернетики

Направление Прикладная математика и информатика

Кафедра Прикладная математика

АЛГОРИТМИЧЕСКОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПОДСИСТЕМЫ «АНАЛИТИК» МНОГОФУНКЦИОНАЛЬНОГО

ВЕБ-ПОРТАЛА

ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА

на присвоение степени Бакалавр по направлению

010400 ПРИКЛАДНАЯ МАТЕМАТИКА И ИНФОРМАТИКА

Студент гр. 8Б00 ________ ________ С.В. Романчуков



(подпись) (дата) (Ф.И.О.)

Руководитель ________ ________ О.Г.Берестнева

д.т.н., профессор (подпись) (дата) (Ф.И.О.)

Допустить к защите:

Заведующий кафедрой ________ ________ ______________

д.т.н., профессор (подпись) (дата) (Ф.И.О.)

ТОМСК – 2014г.

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Государственное образовательное учреждение высшего профессионального образования

«Н А Ц И О Н А Л Ь Н Ы Й И С С Л Е Д О В А Т Е Л Ь С К И Й

Т О М С К И Й П О Л И Т Е Х Н И Ч Е С К И Й У Н И В Е Р С И Т Е Т»

Кафедра Прикладная математика


УТВЕРЖДАЮ:

Зав. кафедрой________________


“______”____________________

ЗАДАНИЕ

на выполнение выпускной квалификационной работы

Cтуденту гр. 8Б00 Романчукову Сергею Викторовичу


  1. Тема работы

Алгоритмическое и программное обеспечение подсистемы «Аналитик» многофункционального веб-портала_________________________________

утверждена приказом ректора (распоряжением директора ИК) от __________ № _______________________________________________________________



  1. Срок сдачи студентом готовой работы ______________________________

  2. Исходные данные к работе: экспериментальные данные (социально-психологические показатели), полученные в ТПУ в рамках применения мультифункционального тестового ресурса «MultiTest»_________________

  3. Содержание расчетно-пояснительной записки (перечень подлежащих разработке вопросов)

Введение

1) Постановка задачи

2) Структура подсистемы «Аналитик»

3) Выбор и характеристика методов анализа экспериментальных данных

4) Программная реализация подсистемы

5. Перечень графического материала (с точным указанием обязательных чертежей)



Презентация работы:______________________________________________

Введение (1 слайд)_______________________________________________

Задачи (1 слайд)_________________________________________________

Объект исследования (3 слайда)____________________________________

Веб-портал «MultiTest»(1 слайд)____________________________________

Роли пользователей (1 слайд)______________________________________

Структура подсистемы «Аналитик»(1 слайд)____________________________

Уровни анализа данных (1 слайд)___________________________________

Основные задачи Data mining (1 слайд)_______________________________

Методы Data mining (1 слайд)______________________________________

Кластерный анализ (1 слайд)________________________________________

Требования к программному обеспечению(1 слайд) ______________________

Программные средства Data mining (2 слайда)__________________________

Заключение (1 слайд)______________________________________________

6. Консультанты:

Моисеенко А.Н., аспирант

7. Дата выдачи задания на выполнение

выпускной квалификационной работы______________________________



Руководитель



Берестнева О.Г._________________

д.т.н., профессор кафедры ПМ_____


(ф.и.о, должность)

_______________________________

(подпись, дата)

Задание принял к исполнению


____________________________

(подпись, дата)



РЕФЕРАТ
Выпускная квалификационная работа бакалавра выполнена на 60 листах машинописного текста, содержит 3 рисунка, 4 таблицы, 13 источников, 5 приложений.

Ключевые слова: модель, алгоритм, кластерный анализ, факторный анализ, data mining, веб-портал.

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

Целью работы является разработка подсистемы «Аналитик» для портала «MultiTest. Пояснительная записка состоит из четырёх разделов.

В первом разделе представлена постановка задачи.

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

Третий раздел посвящён обзору методов обработки имеющихся данных

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



СОДЕРЖАНИЕ

ВВЕДЕНИЕ….….…. 6

ОПРЕДЕЛЕНИЯ, ОБОЗНАЧЕНИЯ, СОКРАЩЕНИЯ, НОРМАТИВНЫЕ ССЫЛКИ….….…. 8

1 ПОСТАНОВКА ЗАДАЧИ 10

1.1 Характеристика экспериментальных данных 11

2 СТРУКТУРА ПОДСИСТЕМЫ «АНАЛИТИК»……. . 12

2.1 Технические требования к подсистеме 12

2.2 Модели поведения пользователей 13

2.2.1 Сценарии поведения администратора 15

2.2.2 Сценарии поведения пользователя «Аналитик» 22

2.2.3 Сценарии поведения пользователя «Гость» 27

3 МЕТОДЫ ОБРАБОТКИ ЭКСПЕРИМЕНТАЛЬНЫХ ДАННЫХ……. . 29

3.1 Выбор методов обработки данных 31

3.2 Методы Data Mining 32

3.2.1 Методы кластерного анализа 35

4 ПРОГРАММНЫЕ СРЕДСТВА……. . 39

4.1 Оценка программных средств Data Mining 40

4.2 Вспомогательные программные средства 42

ЗАКЛЮЧЕНИЕ 44

СПИСОК ПУБЛИКАЦИЙ СТУДЕНТА 45

СПИСОК ИСТОЧНИКОВ 46

ПРИЛОЖЕНИЯ 48

Приложение А.1 49

Приложение А.2 49

Приложение А.3 50

Приложение Б 51

Приложение В 56

ВВЕДЕНИЕ

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

В Томском политехническом университете, как и большинстве других вузов, имеется подразделение, занимающееся вопросами профессиональной ориентации абитуриентов и поддержки принятия решений в выборе профессии. Научно-учебной лабораторией информационных технологий в социальных и медицинских исследованиях разработан и поддерживается мультифункциональный тестовый портал «MultiTest», реализован ряд тестовых методик в данной области, часть из которых доступна непосредственно с веб-сайта центра довузовской подготовки ТПУ.

В процессе функционирования данных приложений был накоплен обширный материал, нуждающийся в дальнейшей обработке. В соответствующих базах данных хранятся как сырые данные о процессе и результатах тестирования, так и результаты тестов. Имеющийся функционал позволяет оперативно вносить корректировки в тестирующие приложения, эмулировать проведение тестирования с целью отладки внесённых изменений, извлекать из базы данных информацию о любом конкретном тестирующемся, но, к сожалению, пока не предоставляет простого в обращении набора инструментов для обработки больших объёмов накопленных результатов. Заявляет о себе необходимость создания подсистемы, дающей аналитикам и психологам возможность работы с информацией без использования навыков программирования (которые психолог или математик иметь не обязан) и, помимо этого, расширяющий возможности обратной связи и взаимодействия психолога собственно с коллективом программистов, разработавших и сопровождающих данный ресурс.



Целью работы является разработка аналитического модуля для многофункционального веб-портала «MultiTest», на основе которого в настоящий момент реализована подсистема для организации психологического on-line тестирования для различных групп пользователей, в том числе абитуриентов ТПУ.

Для достижения поставленной цели необходимо решить ряд задач:

- определить желаемую функциональность модуля и границы полномочий пользователей с различными правами доступа;

- изучить методы многомерного статистического анализа;

- выбрать методы глубинного анализа данных (Data mining);

- выбрать методы для компьютерной реализации;

- разработать, программно реализовать и включить в состав портала «MultiTest» аналитический модуль;

- провести тестирование модуля и оценить возможности обработки имеющихся данных;

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

ОПРЕДЕЛЕНИЯ, СОКРАЩЕНИЯ, ОБОЗНАЧЕНИЯ, НОРМАТИВНЫЕ ССЫЛКИ

В данной работе применены следующие термины и аббревиатуры с соответствующими определениями:



data mining - собирательное название, используемое для обозначения совокупности методов обнаружения в данных ранее неизвестных, нетривиальных, практически полезных и доступных интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности;

HTTP-сервер -  сервер, принимающий HTTP-запросы от клиентов, обычно веб-браузеров, и выдающий им HTTP-ответы, как правило, вместе с HTML-страницей, изображением, файлом, медиа-потоком или другими данными;

дендрограмма - графическое изображение в двухмерной проекции степени сходства объектов;

кластер - объединение нескольких однородных элементов, которое может рассматриваться как самостоятельная единица;

СУБД - Систе́ма управле́ния ба́зами да́нных, совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных;

ПО – программное обеспечение;

Apache – свободный кросплатформенный HTTP-сервер;

FreeBSD – свободная Unix-подобная операционная система;

SPSS - Statistical Package for the Social Sciences (англ. «статистический пакет для социальных наук») — компьютерная программа для статистической обработки данных, один из лидеров рынка в области коммерческих статистических продуктов, предназначенных для проведения прикладных исследований в социальных науках;

Statistica -  программный пакет для статистического анализа, разработанный компанией StatSoft, реализующий функции анализа данных, управления данных, добычи данных, визуализации данных с привлечением статистических методов;

MySQL -  свободная реляционная система управления базами данных; 

Java - объектно-ориентированный язык программирования для написания клиентских приложений и серверного программного обеспечения;

Python -  высокоуровневый язык программирования общего назначения, ориентированный на повышение производительности разработчика и читаемости кода;

XML - eXtensible Markup Language (англ. «расширяемый язык разметки»), язык с простым формальным синтаксисом, удобный для создания и обработки документов программами и одновременно удобный для чтения и создания документов человеком, с подчёркиванием нацеленности на использование в Интернете.

Аббревиатуры, связанные с лицензированием свободного ПО:



OSS - open-source software, программное обеспечение с открытым исходным кодом. Исходный код таких программ доступен для просмотра, изучения и изменения, что позволяет пользователю принять участие в доработке самойоткрытой программы, использовать код для создания новых программ и исправления в них ошибок;

GNU GPL -  GNU General Public License, лицензия на свободное программное обеспечение, созданная в рамках проекта GNU в 1988 г.
1 ПОСТАНОВКА ЗАДАЧИ

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

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

Необходимо на базе уже существующего в НИ ТПУ программного комплекса и в целях расширение функционала веб-портала «MultiTest», посвященного проведению социально-психологических исследований, в том числе профориентационного тестирования потенциальных абитуриентов, разработать аналитический модуль для реализации методов как статистической обработки, так и глубинного анализа полученной информации.

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

1.1 Характеристика экспериментальных данных

В качестве исходной информации имеем сведения о результатах тестирования, включающих в себя:

- анкетные данные (в случае, если тестирование не было анонимным);

- информация о соединении (IP-адрес, регион, использовавшийся браузер и т.д.);

- ответы на тестовые вопросы;

- результаты тестирования (предложенные профессии и степень соответствия им тестируемого);

- время прохождения тестирования.

Кроме того в таблицах базы присутствует информация о структуре самих тестов и ряд дополнительных сведений. Хранение всей перечисленной информации осуществляется с использованием СУБД MySQL, при этом для записи разнородных данных применяется язык разметки XML. Фрагмент одной из таблиц с записями о тестировании представлен на рисунке 1.


Рис. 1. Фрагмент таблицы questionnaires

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

2. СТРУКТУРА ПОДСИСТЕМЫ «АНАЛИТИК»

2.1 Технические требования к подсистеме

Аналитическая подсистема разрабатывается как расширение уже существующего веб-портала «MultiTest», что накладывает на разработчика определённые ограничения.

Для хранения информации портала применяется СУБД MySQL. Гибкость данной СУБД обеспечивается поддержкой большого количества типов таблиц и поддерживаемых форматов данных. В базе данных портала уже накоплен значительный объём информации о многолетних результатах исследований. Исходя из этого разрабатываемый модуль должен взаимодействовать с СУБД MySQL, осуществляя выгрузку данных из неё для обработки и сохраняя в базу данных её результаты.

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

Разрабатываемый модуль должен быть размещён на одном сервере с уже существующими компонентами портала, представляющем собой HTTP-сервер apache на платформе FreeBSD и реализовываться с использованием php, html и AJAX, аналогично уже размещённым компонентам системы, поддерживать единые с ними стандарты.

Разрабатываемый модуль должен быть доступен через сеть Internet, требуется провести его тестирование на наиболее распространённых браузерах (Internet Explorer v7 и выше, Mozilla v3 и выше Opera v9 и выше и т.д.).

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

2.2 Модели поведения пользователя

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

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

Кратко всех посетителей аналитического модуля можно отнести к одной из трёх больших групп:



  1. Администраторы;

  2. Аналитики;

  3. Незарегистрированные пользователи и «гости»;

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

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

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

В целях более детальной разработки заявленных выше схем взаимодействия пользователей с разрабатываемым модулем составим сценарии взаимодействия пользователей и системы в виде вариантов использования (use cases).  Варианты использования это - описание последовательности действий, которые может осуществлять система в ответ на внешние воздействия пользователей или других программных систем. Варианты использования отражают функциональность системы с точки зрения получения значимого результата для пользователя, поэтому они точнее позволяют ранжировать функции по значимости получаемого результата[3]. Структура варианта использования (ВИ) состоит из его краткого описания, списка действующих лиц, предварительных условий, порождающих данный вариант использования системы, основного и альтернативных потоков событий (последовательность событий, вызванных действующими лицами или системой) и условий, достигаемых по завершении указанного потока событий[4].


2.1 Сценарии поведения администратора

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

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

ВИ 01: Зарегистрировать нового пользователя

ID: 1

Краткое описание:

Администратор осуществляет проверку и регистрацию новых пользователей-аналитиков



Основное действующее лицо:

Администратор



Второстепенные действующие лица:

Незарегистрированный пользователь




Поделитесь с Вашими друзьями:
  1   2   3


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал