3.3Интерфейс сервиса
Для реализации пользовательского интерфейса должна применяться технология web 2.0 – c подгрузкой из базы и другими приятными фенечками Ajax.
В случае если форма Системы должна выводить большое количество данных (например, длинный список, длинная таблица, дерево с множеством элементов), необходимо, чтобы данные подгружались частями по мере необходимости.
В Системе должен быть предусмотрен обработчик исключительных ситуаций, обеспечивающий при возникновении ошибок в Системе, выводить пользователю информативные сообщения об ошибке на русском языке. Но при этом все системные сообщения сохранять только в лог, без выдачи пользователю адресов модулей и классификаций ошибок. В случае невозможности выполнять основные свои функции приложение должно сообщать о «дальнейшей работе по улучшению сервиса».
3.4Производительность
К Системе предъявляются следующие требования по производительности:
отклик пользовательского интерфейса Системы к запросу пользователя на отображение формы не должен превышать 5 секунд;
3.5Отказоустойчивость и надежность
Система должна обеспечивать следующие показатели надежности:
бесперебойное функционирование 7 дней в неделю (круглосуточно без праздничных дней);
время обнаружения неисправности не должно превышать 2 часов. Система должна позволять обнаруживать неисправность удаленно путем анализа журнала состояния Системы, об ошибках пользователей к данным путём отсылки сообщения об этом на email;
Система должна выдерживать нагрузку для 2 млн. зарегистрированных пользователей (требование к БД).
время восстановления не более 4 часов;
количество отказов в год – не более 12.
3.6Безопасность
Компоненты безопасности Системы должны осуществлять аутентификацию и авторизацию пользователей.
Аутентификация пользователя должна производиться средствами ресурса vkontakte.ru. Данные об учетных записях зарегистрированных пользователей должны храниться в базе данных разрабатываемой Системы.
Авторизация пользователя должна осуществляться по ролевому принципу. Система должна позволять назначать одному пользователю только одну роль. В Системе должны быть предусмотрены следующие виды ролей:
Обычный участник;
VIP-участник.
3.7Участники
При регистрации участника данные о пользователе берутся из его анкеты на ресурсе vk.com (Одноклассники), указанные в пункте 3.1 про регистрацию пользователей.
В Системе доступны следующие участники:
Обычный участник. Стандартный участник проекта пока отличающийся от VIP-участника только тем, что должен платить баллы за некоторые действия:
Просмотр закладки Новости:
Блок со всеми изменениями - количеством полученных вопросов, полученных плюсов/минусов – количество и от кого, количество вопросов, на которые ответили (с ссылкой на соответствующую ленту);
Полученные вопросы;
Самые популярные на сегодня люди;
Самые популярные категории с вопросами в них;
Если в каком-то блоке отсутствуют данные, то они скрыты.
Просмотр профиля (свой в соответствующей закладке или другого):
Обычный просмотр от последних к первым;
Просмотр по самым популярным;
Просмотр по категориям с ранжированием от самых популярных к менее;
Задание вопроса в чужом профиле;
Установка своего вопроса в анонимный;
Примерный внешний вид:
Слева фотография пользователя;
Справа различные данные о нём, поле о себе;
Под полем о себе его любимые вопросы;
Если вопрос понравился можно ответить на него;
Если это личный профиль, то за баллы добавить ещё один;
Ниже идут кнопка настройки (если профиль личный) и различного разжирования списка вопросов-ответов.
Вопросы и ответы выполнены в виде диалоговых пузырей (в google: speech bubbles css);
Справа от вопроса небольшая аватарка, имя и время-дата – уголок пузыря в сторону аватарки;
Снизу слева хэш-теги, справа вопроса количество баллов (общая сумма плюсов и минусов), которые этот вопрос получил (- 3 -1 64 +1 +3) слева от минусов несколько юзерпиков, кто их поставил, у плюсов тоже самое;
Ответ выполнен в форме пузыря с уголком, который глядит наверх – на вопрос. В нём располагается внизу слева дата, справа количество баллов с той же системой;
На каждого человека, кроме анонимного можно кликнуть, под анонимом есть кнопка с иконкой вопроса и надписью «задать», это можно сделать за баллы. Такой вопрос отображается в ленте и можно увидеть ответ на него, но зайти к человеку в профиль нельзя;
При нажатии на кнопку настроек поле с профилем отъезжает вниз и пользователь может выбрать за баллы антианонимность, тему профиля (при выборе другого профиль изменяется автоматически, а справа появляется кнопка принять); поля О себе, никнейм становятся текстовыми, как и любимые вопросы, к которым ниже появляется кнопка добавить;
На правом краю находится лента друзей и топов, которые меняют друг друга каждые 20 секунд, поменять можно кликом мышки на соответствующую надпись;
Задавать вопрос можно в соответствующем поле между вопросами в профиле и разделом «О пользователе»;
При каждой платной опции при недостаточных баллах появляется соответствующее окошко, а при оплате, об этом окошко появляется внизу окна документа, чтобы не мешать, с надписью об оплате и кнопкой отмены, через 5 секунд исчезает.
Просмотр лент:
Ниже меню появляется отдельные закладки с различными разделами;
Первый раздел – это заданные пользователю вопросы, нажимая на кнопку ответить под диалоговым пузырём появляется соответствующий пузырь ответа, который является текстовым полем;
Второй раздел – это заданные пользователем вопросы, на которые был получен ответ;
Третий радел – это заданные друзьям вопросы;
Четвёртый раздел – платный, это вопросы, которые задали сами друзья, в пузыре справа аватарка с кликабельным именем-ником для перехода в профиль;
Пятый раздел – категории, в нём можно посмотреть заданные людям вопросы по категориям и рейтингам.
Задание вопроса:
Заполняется текстовое поле вопроса с ограничением в 300 символов;
Кнопка «Отослать» неактивна, пока не будет введён хотя бы один хэш-тег, с ограничением в три хэш-тега.