Difference between revisions of "IM Support Service/Specification"
(→Требования к интерфейсу клиента) |
(→Требования к интернационализации) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 40: | Line 40: | ||
Прочие требования: | Прочие требования: | ||
# Должна присутствовать возможность расширить функции программы или изменить основную логику работы с помощью плагинов. | # Должна присутствовать возможность расширить функции программы или изменить основную логику работы с помощью плагинов. | ||
− | # Должен присутствовать программный интерфейс (RPC) с | + | # Должен присутствовать программный интерфейс (RPC) для взаимодействия с сторонним ПО |
+ | # Должна присутствовать возможность перевести все элементы интерфейсов на другой язык. | ||
=== Требования к модулю логики === | === Требования к модулю логики === | ||
Line 69: | Line 70: | ||
=== Требования к интерфейсу просмотра статистики === | === Требования к интерфейсу просмотра статистики === | ||
=== Требования к программному интерфейсу === | === Требования к программному интерфейсу === | ||
+ | Должен быть программный интерфейс с помощью которого сторонее ПО сможет: | ||
+ | # взять данные статистики | ||
+ | # взять лог чата | ||
+ | # получить текущее состояние всего сервиса или отдельного узла (сколько операторов всего/доступно/занято, сколько клиентов обрабатывается, сколько клиентов в очереди) для нужд мониторинга. | ||
+ | # изменить настройки всего сервиса или отдельного узла поддержки | ||
+ | |||
+ | === Требования к интернационализации === | ||
+ | Должна присутствовать возможность перевести следующие элементы на другой язык: | ||
+ | * информация, текстовые элементы, элементы управления интерфейса | ||
+ | * команды IM-интерфейса | ||
+ | |||
+ | Должен присутствовать механизм корректного согласования числительного с существительным. ''Например: 1 man => 3 men, 1 box => 5 boxes, 1 балл => 2 балла => 5 баллов'' | ||
== Требования к документации == | == Требования к документации == |
Latest revision as of 09:41, 1 November 2007
Скелет — значительно переделанный ГОСТ 19.201-78. Можно свободно добавлять свои требования, но удаление или исправление лучше согласовать в специальном обсуждении на форуме JRuDevels. Перед добавлением желательно почитать эти советы по написанию ТЗ.
Contents
- 1 Введение
- 2 Термины
- 3 Назначение разработки
- 4 Требования к программе
- 4.1 Требования к модулю логики
- 4.2 Требования к модулю хранения информации
- 4.3 Требования к модулю статистики
- 4.4 Требования к интерфейсу клиента
- 4.5 Требования к интерфейсу оператора
- 4.6 Требования к интерфейсу управления
- 4.7 Требования к интерфейсу просмотра статистики
- 4.8 Требования к программному интерфейсу
- 4.9 Требования к интернационализации
- 5 Требования к документации
Введение[edit]
Это техническое задание для Сервиса поддержки через IM.
Термины[edit]
- Сеть
- Некоторая сеть мгновенного обмена сообщениями, в которую (напрямую или через транспорт) может входить сервис.
- Сервер
- XMPP-сервер.
- Клиент
- Пользователь сервиса поддержки, который пришел со своим вопросом.
- Оператор
- Пользователь сервиса поддержки, который отвечает на вопросы клиентов.
- Узел поддержки
- Группа операторов, которые смогут ответить на вопросы определенной тематики. Узел поддержки имеет по одному контактному адресу (идентификатору) в каждой из поддерживаемых IM-сетях.
- Сервис поддержки
- Разрабатываемый компонент к серверу, который сможет обслуживать произвольное число узлов поддержки.
- Клиентское ПО
- ПО, которое используют абоненты и операторы для общения друг с другом. Это может быть XMPP-клиент или клиент любой другой IM-сети.
Назначение разработки[edit]
Сервис предназначен для организации технической поддержки через IM подобно тому как это делает call-центр в телефонии. Основные функции:
- один контактный адрес для клиентов
- автоматическое распределение клиентов по оператором с учетом занятости и присутствия
- ведение статистики
- сохранение разговоров
Области применения:
- Предприятия, внедряющие корпоративный IM на основе XMPP, могут подключить к своему серверу этот компонент, создать там нужное количество узлов поддержки (например, по принципу один узел - одна тема) и организовать полноценную IM поддержку для своих клиентов.
- Группы людей, сопровождающие какой-нибудь проект (свободное ПО, мероприятие, форум, игровой сервер и т.п.), могут создать свой узел на публичном сервисе поддержки и разместить его контактный адрес на сайте проекта.
Требования к программе[edit]
Программа должна включать в себя следующие основные модули:
- Модуль логики, который отвечает за основной процесс взаимодействия клиента и оператора.
- Модуль хранения информации (в базе данных, простых файлах и т.п.)
- Модуль статистики
Должна быть возможность заменить любой из этих модулей на свой без затрагивания остальных. Например, заменить хранение в MySQL на хранение в PostgreSQL или в простых файлах.
В программе должны быть реализованы следующие пользовательские интерфейсы:
- Интерфейс клиента
- Интерфейс оператора
- Интерфейс управления сервисом и узлами
- Интерфейс просмотра статистики
Прочие требования:
- Должна присутствовать возможность расширить функции программы или изменить основную логику работы с помощью плагинов.
- Должен присутствовать программный интерфейс (RPC) для взаимодействия с сторонним ПО
- Должна присутствовать возможность перевести все элементы интерфейсов на другой язык.
Требования к модулю логики[edit]
Требования к модулю хранения информации[edit]
Требования к модулю статистики[edit]
Требования к интерфейсу клиента[edit]
Интерфейс должен быть простым и выдвигать как можно меньше требований к ПО на стороне клиента.
Должны быть реализованы следующие типы интерфейса клиента:
- IM-интерфейс
- Web-интерфейс
Должна быть возможность реализовать свои.
Требования к настраиваемости[edit]
Параметры интерфейса, который клиент может изменить:
- Язык интерфейса
Параметры должны запоминаться между сессиями с привязкой к уникальному идентификатору клиента, если последний можно определить.
Требования к IM-интерфейсу клиента[edit]
Требования к Web-интерфейсу клиента[edit]
Требования к интерфейсу оператора[edit]
Требования к интерфейсу управления[edit]
Требования к интерфейсу просмотра статистики[edit]
Требования к программному интерфейсу[edit]
Должен быть программный интерфейс с помощью которого сторонее ПО сможет:
- взять данные статистики
- взять лог чата
- получить текущее состояние всего сервиса или отдельного узла (сколько операторов всего/доступно/занято, сколько клиентов обрабатывается, сколько клиентов в очереди) для нужд мониторинга.
- изменить настройки всего сервиса или отдельного узла поддержки
Требования к интернационализации[edit]
Должна присутствовать возможность перевести следующие элементы на другой язык:
- информация, текстовые элементы, элементы управления интерфейса
- команды IM-интерфейса
Должен присутствовать механизм корректного согласования числительного с существительным. Например: 1 man => 3 men, 1 box => 5 boxes, 1 балл => 2 балла => 5 баллов