Разработка интернет форума

 

Содержание

ВВЕДЕНИЕ 4

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

2. Цель работы 9

2.1 Требования к системе 11

2.1.2 Выходные данные 14

3. Сравнение с аналогами 15

4. Выбор программно – технических средств реализации 30

5. Алгоритм работы web–сервиса 34

5.1 Структура базы данных 36

5.2 Описания алгоритмов для решения  основных задач 39

5.2.1 Регистрация 39

5.2.2 Верификация 42

5.2.3 Аутентификация 42

5.2.4 Добавление категории 42

5.2.5 Добавление обзора 43

5.2.6 Добавление исправления 43

5.2.7 Голосование 43

5.2.8 Поиск 44

5.3 Описание алгоритма обработки  запросов пользователя 46

5.4 Модель работы web–сервиса 47

6. Примеры работы Web–сервиса 50

ЗАКЛЮЧЕНИЕ 56

Приложение А 58

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

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

Приложение Г 72

 

ВВЕДЕНИЕ

Интернет-технологии все  больше и больше начинают доминировать в любой сфере деятельности современного общества: от интеллектуальной до торговой и производственной. На сегодняшний день интернет-ресурсы — это самый эффективный способ получения и размещения любой информации. Но неопытный пользователь, попадая в глобальную паутину, в первую очередь сталкивается с проблемой избытка этой информации. Большинство пользователей, которые только начали использовать сеть Интернет, так и останавливаются на работе в почтовых сервисах, социальных сетях, иногда при наличии точного адреса нужного ресурса без каких-либо трудностей могут получить необходимую информацию, не задавая себе вопрос, каким же образом можно сделать работу в Интернете более эффективной? Решением этой проблемы являются поисковые системы.

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

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

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

Таким образом, Актуальность данной работы заключается в  том, что при создании веб – сервиса «Обзоров», любой пользователь может найти необходимую информацию  по интересующему его вопросу гораздо быстрее, но это даже не самое главное его преимущество. Объединив информацию по различным тематикам и обеспечив простоту поиска, мы даем возможность каждому посетителю оставлять  свой комментарий и получать бонусы за хороший и достоверный ответ, тем самым упрощается задача в долгом суммировании материала  и отыскивании нужной информации на просторах Интернета. Любой веб – сервис является услугой, будь то веб-почта или хранение документов, но, как и любая другая технология, он имеет довольно четко очерченную среду применения.

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

Существует множество  тематических агрегаторов обзоров, такие как:

- Ответы@mail.ru, направленный на организацию системы вопрос-ответ в различных сферах;

- Afisha.ru, направленный на обзоры событий, которые происходят в городе, определённых мест и другое;

- Mobile-review.com, направленный на обзоры мобильных телефонов и техники;

- Imdb.com, направленный на обзоры фильмов в мире.

Данный проект объединяет лучшие качества этих сервисов, а также  предоставляет возможности создания обзоров в любых отраслях и  темах. Что позволит большему количеству аудитории использовать разрабатываемый web-сервис.

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

 

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

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

Информация будет представлять собой «Обзоры». Все пользователи будут разделены по правам и в зависимости от прав, пользователю будут доступны те, или иные возможности.

Вся информация на web–сервис поступает от пользователей.

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

Для решения проблемы недостоверности  и неадекватности информации будет  доступна возможность свободного голосования. Цена голоса рассчитывается по личному рейтингу проголосовавшего пользователя. По результатам голосования в любой момент времени обзору или категории будет начисляться личный рейтинг. В зависимости от рейтинга к ним будут применяться фильтры.  Чем выше рейтинг (Адекватнее и достовернее информация),  тем выше в  списке отображения будет обзор и больше шансов на утверждение категории. Если информация достигает определённого низкого уровня рейтинга, то она удаляется из системы. Каждый пользователь тоже имеет личный рейтинг – он начисляется путем суммирования всех положительных оценок предоставленной им информации. Чем ниже рейтинг пользователя – тем меньше у него возможностей и наоборот.

Основные и необходимые функции:

– Регистрация, аутентификация и верификация пользователей;

– Разделение по правам пользователей;

– Отображение информации;

– Поиск информации;

– Добавление информации;

Формат  хранения:

– Каждый обзор находится в категории, тема обзора должна соответствовать теме категории;

– Категории разделены по тематике;

– Каждая категория имеет подкатегории, которые являются конкретным направлением темы родительской категории;

Группы пользователей:

– Неавторизованный пользователь;

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

– Репортер (определенного уровня);

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

– Главный администратор;

Возможности добавления информации:

– Создание обзора;

– Создание категории;

– Создание исправления для обзора или категории;

– Создание запросов на создание обзора или категории;


Возможности управления информацией:

– Свободное голосование (только зарегистрированные пользователи);

– Действия главного администратора;


Дополнительно:

– Возможности поиска информации;

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

 

    1.  Описание предметной области

Сервер, на котором запущен  web–сервис должен быть настроен таким образом, что пользователь может подключаться к нему из сети Интернет используя веб–браузер.

На сервере должны быть установлены и настроены следующие  компоненты:

– Сервер приложений, предоставляющий возможность подключения на определенный порт и запуск на нем web–сервиса;

– Базу данных, настроенную для работы с web–сервисом;

– Запущенный web–сервис на сервере приложений;

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

Внутренняя логика web–сервиса предназначена для решения следующих задач на сервере:

– Обработка запросов пользователя и предоставление нужной информации;

– Регистрация пользователей в системе;

– Аутентификация пользователей в системе;

– Оповещение пользователей по почте;

– Расчет рейтинга пользователей и предоставление прав в соответствие этому рейтингу;

– Управление базой данных;

– Управление сессиями;

– Возможность управления высшим группам пользователей;

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

  1. Цель работы

Цель данной выпускной квалификационной работы: разработка web–сервиса, содержимое которого содержит  «Обзоры» большого количества различных тематик и представлял бы гибкость в расширении, и решал бы проблемы избыточности, сложности поиска и достоверности информации.

Исходя  из цели, в выпускной квалификационной работе поставлены и решены следующие задачи:

– Выбор программного обеспечения для разработки web–сервиса;

– Разработка архитектуры базы данных;

– Разработка внутренней логики сервиса;

– Разработка сервиса на выбранном программном обеспечении, соответствующего внутренней логике;

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

Объектом управления является Сервер. Состоит из 3–х частей (см. рис. 1):

– Сервер приложений;

– Web–сервис (Web–приложение);

– База данных;

Рис. 1 «Общая схема работы сервера»

Сервер приложений представляет собой программное обеспечение, которое предоставляет услуги поддержки web–сервисов и связывает конечных пользователей с корпоративными базами данных. Действуя как посредник между браузерами и серверами баз данных, это программное обеспечение избавляет компании от необходимости устанавливать на локальные персональные компьютеры конечных пользователей приложения, требующие значительных затрат на обслуживание. Данную роль сервера приложений выполняет GlassFish  —сервер приложений с открытым исходным кодом, реализующий спецификации Java EE, изначально разработанный Sun Microsystems. В настоящее время спонсируется корпорацией Oracle.

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

Для обеспечения хранения информации, на сервере также установлена база данных с которой web–сервис обменивается данными. Роль базы данных выполняет MongoDB.

Целью данной выпускной квалификационной работы является разработка web–сервиса, содержимое которого содержит  «Обзоры» большое количество различных тематик и представлял бы гибкость в расширении, решал проблемы избыточности, сложности поиска и достоверности информации.

 

2.1 Требования к системе

Web–сервис, это клиент–серверное приложение, в котором клиентом выступает браузер, а сервером — web–сервер. Логика web–сервиса распределена между сервером и клиентом, хранение данных осуществляется, преимущественно, на сервере, обмен информацией происходит по сети. Одним из преимуществ такого подхода является тот факт, что клиенты не зависят от конкретной операционной системы пользователя, поэтому веб–приложения являются межплатформенными сервисами.

Web–сервис проекта должен удовлетворять следующим требованиям:

– Разворачиваться непосредственно на сервере;

– Предоставлять интуитивно понятный интерфейс, отображаемый в браузере клиента;

– Иметь внутреннюю логику, обеспечивающую быстрое выполнение пользовательских запросов;

– Обмениваться данными с базой данных;

– Обеспечивать приемлемый уровень безопасности, предотвращая утечку пользовательских данных;

Web–сервис должен выполнять следующие функции:

– Отображение необходимых web–страниц;

– Предоставлять возможность регистрации пользователю;

– Предоставлять возможность аутентификации пользователю;

– Предоставлять пользователю возможности выполнять действия, которые разрешены его группе прав;

– Отображать Категории и Обзоры на страницах;

– Предоставлять возможность создания исправления на уже созданные обзоры и категории;

– Предоставлять возможность создания запросов на обзор того, или иного объекта;

Архитектура веб–приложения, должна удовлетворять следующим критериям:

– Обрабатывать запросы пользователя, генерируя выходные данные в виде web–страниц;

– При обработке пользовательских запросов использовать внутреннее API для генерации страницы и обработки данных;

– Осуществлять обмен информацией с базой данных;

– Осуществлять работу с сессиями;

– Для каждой задачи должны быть разработаны соответствующие модули и соблюдаться большая часть принципов проектирования;

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

Программная архитектура сервиса состоит из четырех частей

(см. рис. 2):

– Текущая страница;

– Обработчик страницы;

– Модуль работы с базой данных;

– Модуль работы с сессиями;

Рис. 2 «Схема архитектуры  сервиса»

Page, или веб–страница содержит в себе HTML с подключенными CSS и исходный код JSP. HTML и CSS в данном проекте предназначен для отображения странице с определенной версткой и содержит константную информацию страницы. JSP код используется для вызова методов модулей и заполнения нужных полей страницы информацией.

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

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

Модуль SessionAdapter содержит API для обмена информацией с текущей сессией. В нем реализованы все необходимые методы, которые просты по сигнатуре и удобны в использовании. Сессия представляет собой механизм, позволяющий хранить некоторые данные, индивидуальные для каждого пользователя (например, его имя и рейтинг), между запусками сценария.

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

Определим требования к входным выходным.

 

2.1.1 Входные данные

Входными  данными для web–сервиса является адрес web–страницы, возможно с данными вида POST запроса.

Требование  к входным данным:

– Сервер приложений должен проверять корректность пути и существования web–страницы по заданному адресу

– Далее происходит генерация страницы посредством результата выполнения jsp файла.

2.1.2 Выходные данные

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

Требования  к выходным данным:

Сгенерированная web–страница должна быть корректно отображена на web–браузере клиента.

 

    1. Сравнение с аналогами

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

Сервисы используемые в примерах:

  1. Ответы@mail.ru
  2. Imdb.com
  3. Mobile–review.com

 

3.1 Сервис «Ответы@mail.ru»

Ответы@Mail.Ru — сервис Mail.Ru, представляющий собой систему вопросов и ответов (см. рис. 3). Заработал 21 августа 2006 года и был назван «социальным поисковиком». За первый месяц работы пользователи дали 1600000 ответов на 200000 вопросов. На данный момент — самый популярный сервис такого рода в Рунете. На конец июня 2008 года в проекте было зарегистрировано 10,3 млн участников. По данным на март 2013 года, ежедневно проект посещают около 5,2 млн человек. Принцип работы нового проекта не похож на стандартные поисковые механизмы — здесь не компьютеры, а люди дают ответы на вопросы, заданные другими людьми. Источники ответов могут быть самыми разными. Не последнее место среди них занимает Википедия. Это своеобразный социальный поиск, где можно не только получить ответы на вопросы от живых людей, но и попробовать себя в роли эксперта, отвечая на вопросы пользователей.

Рис. 3 «Web–сервис Ответы@mail.ru»

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

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

Пользователи  могут задать свои вопросы и получить ответы в 29 тематических категориях проекта:

  1. Авто, мото — на данный момент подразделяется на подкатегории: «Автострахование», «Выбор автомобиля и мотоцикла», «ГИБДД,обучение, права ПДД,вождение», «Оформление авто–мото сделок», «Сервис, Обслуживание, Тюнинг», «Прочие Авто–темы».
  2. Бизнес, финансы — на данный момент подразделяется на подкатегории: «Банки и Кредиты», « Бухгалтерия, Аудит, Налоги», «Макроэкономика», «Недвижимость, Ипотека», «Производственные предприятия», «Собственный бизнес», «Страхование», «Остальные сферы бизнеса».
  3. Города и страны — одна из немногих категорий, в которой можно получить квалифицированный ответ на вопрос. Возможно это связано с тем, что на проекте присутствуют пользователи практически из всех стран. Пользователей Ответов нет только в Западной Сахаре, Северной Корее и Гренландии. На данный момент подразделяется на подкатегории: «Вокруг света», «Карты, Транспорт, GPS», «Климат, Погода, Часовые пояса», «Коды, Индексы, Адреса», «ПМЖ, Недвижимость», «Прочее о городах и странах».
  4. Гороскопы, магия, гадания — на данный момент подразделяется на подкатегории: «Гадания», «Гороскопы», «Магия», «Сны», «Прочие предсказания».
  5. Досуг,Развлечения — на данный момент подразделяется на подкатегории: «Игры без компьютера», «Клубы, Дискотеки», «Концерты, Выставки, Спектакли», «Охота и Рыбалка», «Рестораны, Кафе,Бары», «Советы,Идеи,Хобби», «Прочие развлечения».
  6. Еда, кулинария — на данный момент подразделяется на подкатегории: «Вторые блюда», «Готовим в …», «Готовим детям», «Десерты, Сладости», «Выпечка,Закуски и Салаты», «Консервирование», «На скорую руку», «Напитки», «Первые блюда», «Пикник», «Покупка и выбор продуктов», «Соусы»,Приправы",Торжество, «Праздник», «Прочее кулинарное».
  7. Животные, растения — на данный момент подразделяется на подкатегории: «Дикая природа», «Домашние животные», «Комнатные растения», «Сад–Огород», «Прочая живность».
  8. Знакомства, любовь, отношения — самая многочисленная категория в Ответах. На данный момент подразделяется на подкатегории: «Дружба», «Знакомства», «Любовь», «Отношения», «Расставания», «Прочие взаимоотношения».
  9. Искусство и культура — на данный момент подразделяется на подкатегории: «Архитектура, Скульптура», «Живопись, Графика», «Кино, Театр», «Литература», «Музыка», «Прочие искусства». Полезен тем, что без особых усилий позволяет получить ответ на опознание песни/книги/фильма, в том числе по ограниченной, фрагментарной информации.
  10. Компьютеры, Интернет — несмотря на большое количество вопросов в этой категории, квалифицированных специалистов в этой области на проекте немного. На данный момент подразделяется на подкатегории: «Дизайн, Верстка», «Железо», «Интернет», «Компьютерные и Видео игры», «Программирование», «Программное обеспечение», «Прочее компьютерное».
  11. Красота и здоровье.
  12. Наука, техника, языки — на данный момент подразделяется на подкатегории: «Гуманитарные науки», «Естественные науки», «Лингвистика», «Техника». Раздел последние несколько лет очень плохо модерируется, в результате большая часть задаваемых здесь вопросов — домашние задания учащихся. Следует отметить, что контингент отвечающих в данной категории весьма широк — вплоть до людей с учёными степенями и носителей большого количества языков, что теоретически позволяет получить очень квалифицированный ответ на любой тематический вопрос. В разделе постоянно возникает парадоксальная ситуация — когда люди с учёными степенями бесплатно объясняют школьникам, как решать тривиальные домашние задания.
  13. Образование — на данный момент подразделяется на подкатегории: «Домашние задания», «Вузы и колледжи», «Детские сады», «Школы», «Дополнительное образование», «Образование за рубежом», «Прочее образование». В этой категории можно получить множество полезных ответов по поводу образования, начиная от детского сада и заканчивая аспирантурой.
  14. Общество, политика, СМИ — категория отличается тем, что здесь довольно часто разгораются споры по самым разным темам. На данный момент подразделяется на подкатегории: «Общество», «Политика», «Средства массовой информации», «Прочие социальные темы». Иногда в категории используется премодерация вопросов.
  15. Путешествия, туризм,
  16. Работа, карьера
  17. Семья, дом, дети
  18. Спорт — тоже популярная категория среди пользователей, однако людей, которые хорошо разбираются в спортивной культуре мало.
  19. Стиль, мода, звезды — на данный момент подразделяется на подкатегории: «Мода», «Светская жизнь и шоубизнес», «Стиль, имидж», «Прочие тенденции стиля жизни».
  20. Темы для взрослых — также достаточно популярная категория, оспаривающая первенство с разделом Знакомства, любовь, отношения. Формально для лиц старше 18 лет.
  21. Товары и услуги — здесь можно получить помощь в выборе покупки, техники. На данный момент подразделяется на подкатегории: «Идеи для подарков», «Мобильные устройства», «Офисная техника», «Техника для дома», «Прочие промтовары», «Сервис, уход и ремонт», «Прочие услуги».
  22. Философия, непознанное — эта категория также знаменита прежде всего своими спорами. На данный момент подразделяется на подкатегории: «Мистика, эзотерика», «Психология», «Религия, вера», «Философия», «Прочее непознанное».
  23. Фотография, видеосъемка — на данный момент подразделяется на подкатегории: «Выбор, покупка аппаратуры», «Обработка видеозаписей», «Обработка и печать фото», «Уход за аппаратурой», «Техника, темы, жанры съемки», «Прочее фото–видео».
  24. Юридическая консультация — в этом разделе также есть специалисты, способные дать квалифицированный ответ. На данный момент подразделяется на подкатегории: «Аграрное право», «Административное право», «Военная служба», «Гражданское право», «Жилищное право», «Конституционное право», «Паспортный режим, регистрация», «Право социального обеспечения», «Семейное право», «Трудовое право», «Уголовное право», «Финансовое право», «Экологическое право», «Прочие юридические вопросы».
  25. Юмор — третья по популярности и одна из самых многочисленных категорий в «Ответах».
  26. О проектах Mail.ru — на данный момент подразделяется на подкатегории: «Ответы@Mail.Ru», «Агент@Mail.Ru», «Блоги@Mail.Ru», «Фото&Видео@Mail.Ru», «Мой Мир@Mail.Ru», «Почта@Mail.Ru», «Деньги@Mail.ru», «ICQ», «Прочие проекты».
  27. Другое — в настоящий момент в этом разделе обычно дается не так много ответов. Так что шанс получить ответ здесь невелик.
  28. Добро Пожаловать — категория для новичков на проекте. Ответы на эти вопросы увеличивают баллы в 2 раза. Отвечать на вопросы новичков могут ответчики с категорией знаток и выше.
  29. Золотой фонд — сюда отбираются лучшие (по мнению редакторов) вопросы. Но некоторые пользователи считают размещенные здесь вопросы «скучными», полностью переписанными из интернета. С 2010 года практически не функционирует, в золотой фонд за это время были перенесены только несколько вопросов.Каждая из этих категорий имеет подкатегории удовлетворяющие тематике основной. И вопросы задаваемые пользователями, должны быть созданы в той подкатегории, которая больше удовлетворяет теме вопроса. Таким образом, отвечающие пользователи могут выбрать необходимую тематику и отвечать на вопросы пользователей этой темы.

 

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

Рассмотрим  положительные и отрицательные  стороны этого проекта.

Положительные:

– Сервис доведен до отличного состояния и функционирует без проблем;

– Большое количество пользователей, сервис популярен;

– Администрация следит за ситуацией на этом сервисе, налажено обслуживание, спам своевременно удаляется, неадекватные пользователи блокируются;

Отрицательные:

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

– Недостаточность расширения категорий, невозможно добавлять другие категории, что может со временем создать ряд проблем с тематиками и вопросами;

– Возможная неадекватность, как вопросов, так и ответов;

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

 

Пример  с созданием неадекватного вопроса  в категории «Комьютеры, интернет – Программирование» (см. Рис. 4)

Рис. 4 «Пример  неадекватного вопроса»

 

Пример  с адекватным вопросом и адекватным, возможно достоверным ответом в  категории «Компьютеры, интернет – Программирование»

(см. Рис. 5)

Рис. 5 «Пример  адекватного вопроса и ответа»

 

Пример  с адекватным вопросом и неадекватным ответом в категории «Компьютеры, интернет – Программирование» (см. Рис. 6)

Рис. 6 «Пример  адекватного вопроса и неадекватного  ответа»

 

    1.  Сервис «imdb.com»

Imdb – Internet Movie Database, крупнейшая в мире база данных и веб–сайт о кинематографе. В базе собрана информация (по состоянию на конец января 2013 года) о более чем 2 млн. 436 тыс. кинофильмов, телесериалов и отдельных их серий, а также о 5 млн. персоналий, связанных с кино, — актёров, режиссёров, сценаристов и др. (см. Рис. 7)

Рис. 7 «Web–сервис imdb.com»

C 1998 года базой данных IMDb владеет компания «Amazon.com». Почти вся информация IMDb находится в свободном доступе, сайт IMDb.com функционирует на основе свободного программного обеспечения (Apache, Perl и другие).

Популярной возможностью IMDb являются онлайн–голосования. Любой зарегистрированный посетитель сайта может голосовать за фильмы, выставляя им рейтинг: от 1 («ужасный фильм») до 10 («шедевр») баллов. Таким образом, на IMDb выявлены 250 лучших фильмов всех времен, по мнению посетителей, а также 100 худших фильмов. При составлении рейтинга 250 лучших фильмов, учитываются голоса не всех голосовавших. Принимаются меры с целью избежать «накрутки» счётчика голосов. В частности, учитываются голоса только постоянно голосующих участников. Имеются отдельные рейтинги фильмов по жанрам, по десятилетиям и пр.

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

Рассмотрим  положительные и отрицательные  стороны этого проекта.

Положительные:

– Много информации по теме фильмов;

– Подробные и качественные описания;

– Возможность оценки фильмов;

– Возможность оставления комментариев;

Отрицательные стороны:

– Сложный интерфейс;

– Для получения более подробной информации о фильме, необходима регистрация;

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

– Практически отсутствует взаимодействие пользователя с сервисом;

 

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

 

Пример  обзора фильма «Побег из Шоушенка» (см. Рис. 8)

Рис. 8 «Побег из Шоушенка»

 

Пример  списка «Top 250 movies as voted by our users» (топ 250 фильмов по оценкам пользователей) (см. Рис. 9)

Рис. 9 (топ 250 фильмов по оценкам пользователей)

 

3.3 Сервис «mobile–review.com»

Сайт www.mobile–review.com посвящен мобильным устройствам и технологиям, основанный 2 сентября 2002 года. Основной материал сосредоточен на мобильных терминалах, технологиях связи, также затрагиваются вопросы, связанные с карманными компьютерами и DECT–телефонами, mp3 плеерами, цифровой фотографией. (см. рис. 10)

Рис. 10 «Web–сервис mobile–review.com»

 

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

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

Рассмотрим  положительные и отрицательные  стороны этого проекта.

Положительные:

– Качественная поддержка сайта;

– Актуальная и достоверная информация;

– Удобный интерфейс;

Отрицательные:

– Отсутствие возможности комментирования;

– Отсутствие возможности оставления отзывов;

– Отсутствие возможности голосования;

– Практически отсутствует взаимодействие пользователя с сервисом;

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

Пример  обзора телефона «Huawei Ascend P6». (см. рис. 11)

Рис. 11 «Обзор телефона Huawei Ascend P6»

Проанализировав возможные альтернативы проекта, были выявлены недостатки:

  1. Отсутствие гибкости сервисов для расширения.
  2. Узко направленность.
  3. Возможность недостоверной предоставляемой информации.
  4. Сложность интерфейсов.
  5. Слабое взаимодействие пользователя с севисом.

3.4 Анализ альтернатив и выводы на основе результатов анализа

Проанализировав общие достоинства и недостатки рассматриваемых альтернатив, были выявлены следующие качества, которыми должен обладать web–сервис:

– Удобный и понятный интерфейс;

– Удобное представление информации ресурса;

– Сильная связь пользователя с web–сервисом;

– Стимулирование пользователя на работу с web–сервисом;

– Гибкая архитектура web–сервиса, предрасположенная к быстрому расширению функционала;

– Быстрая работа web–сервиса;

– Адекватность и достоверность предоставляемой информации;

– Широкая область охватываемых направлений;

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

 

  1. Выбор программно – технических средств реализации

Для реализации проекта был выбран язык Java, среда программирования NetBeans и система управления базами данных MongoDB.

Обоснованием  выбора языка программирования Java стало:

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

Разработка интернет форума