Лабораторное решение "Подписка на события"

16 10

Социализация давно стала трендом в информационных технологиях. Я не оговорился. «Давно» в компьютерном понимании – это 2-3 года. Кроме трендов есть и просто «модные веяния» - растиражированные журналистами мнения видных представителей отрасли. Я все же отнесу социализацию к тренду – это термин выдержал проверку временем, не «сдулся» после года активных обсуждений. Более того, некоторые идеи, предлагаемые социализацией, уже начали оказывать влияние на корпоративные информационные системы.

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

Правда и то, что для того, чтобы понять, жизнеспособен ли сценарий или нет, его необходимо реализовать и опробовать. Британские ученые Отдел перспективных исследований (ОПИ) DIRECTUM тоже ищет свой подход, ставит эксперименты и ищет интересные сценарии. Сегодня я хочу предложить вашему вниманию один сценарий, который позволяют пользователю использовать свои навыки работы с информацией, полученные в социальных сетях, в ECM-системе. На мой взгляд, это решение ярко демонстрирует что же это такое – лабораторное решение (ЛР) ОПИ. Это быстрая реализация идеи, работающий прототип решения. В коммерческом решении этот функционал  может быть включен в более крупный модуль или действие, решению придан необходимый для продукта такого класса лоск. Но лабораторное решение – это то, что было раньше, это быстрее и нагляднее.

Итак, приступаем!

Не раз и не два все мы сталкивались с тем, что нам срочно нужно было узнать, открыл исполнитель задание уже или нет, посмотрел рецензент присланный на согласование документ или надо искать способ деликатно ему или ей об этом напомнить. У меня, например, часто возникает желание быстренько узнать, правился ли документ со времени моей работы с ним или нет. Конечно, можно открыть задачу и посмотреть статус, пробежаться взглядом по истории документа. Но такой мониторинг, осуществляемый в «ручном режиме» - весьма затратная и рутинная задача, особенно если число объектов мониторинга сильно больше одного.

Эту задачу и призвано решить лабораторное решение «Подписка на события системы». Принцип взят из социальных сетей и сервисов почтовой рассылки. Мы можем подписаться на определенные события интересуемого объекта. Все, что нужно, это:

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

Как это работает. Допустим, вы только что отправили документ «Письмо входящее № 07/002 от 30.06.2011 из Авиатопливо-Союзплюс,  Запрос реквизитов организации» на согласование и хотите быть оповещены, когда согласующий посмотрит документ, изменит реквизиты карточки или текст документа, наконец, подпишет документ. Доступ к управлению подписками реализован в виде интерактивной обложки папки:

Нажимаем ссылку «Создать подписку на события документа» и видим окно поиска, где выбираем документ из области «Последние открытые документы» (мы же только что обращались к этому документу, правда?). Или же ищем документ по реквизитам или тексту.

Далее запускается мастер подписки:

Выбираем события, о наступлении которых мы хотим быть оповещены. Далее выбираем способ уведомления.

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

А сам документ, как мы и просили, отметится зеленым статусом:

Другой вариант получение доступа к интересующим нас событиям, в том числе визуализация событий, полученных по подписке – это организация ленты новостей. «Как в Facebook или Вконтакте?» - спросите вы. Нет, лучше. Точнее, будет лучше наверняка. В данной публикации я только продемонстрирую скриншот из другого лабораторного решения – «Лента новостей», а подробнее о нем мы говорим чуть позднее.

Вы видите, что интерфейс ленты аскетичен и прост – ему позавидовала бы даже Windows 8.  На самом деле, здесь был опробован способ донести до пользователя череды событий, на которые подписан пользователь.

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

 

Отредактировал Сергей Бушмелев, 01.02.2013 в 17:58
Отредактировал Сергей Бушмелев, 04.02.2013 в 11:08
Дмитрий Тарасов

Очень интересные решения! А в живую где-то "пощупать" уже можно?

Сергей Бушмелев
А в живую где-то "пощупать" уже можно?

Дмитрий, вынужден вас огорчить: по соображениям безопасности мы не можем выложить разработку для этого решения :(
 

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

Эксперимент на мой взгляд удался. Идея очень интересная. Хочу видеть данный функционал в стандартной поставке системы smiley
Сергей Бушмелев

Дмитрий, спасибо! Мы со своей стороны тоже постараемся не разочаровать вас :)

Андрей Подкин

Сергей, я правильно понимаю, что это решение работает через периодические SQL-запросы к БД?

Сергей Бушмелев

Андрею:

В данной реализации лабораторного решения сценарий периодически мониторит объекты из списка

Ришат Мухаметшин

На Партнёрском форуме, который будет проходить в Екатеринбурге 13–15 февраля, мы продемонстрируем это лабораторное решение. Желающие смогут посмотреть, как это работает, потрогать, задать вопросы.

Андрей Подкин
В данной реализации лабораторного решения сценарий периодически мониторит объекты из списка
А это происходит на клиенте или есть сервер приложений?
Я к чему клоню: в свое время думал написать подобное клиентское решение на коленке, но меня остановило то, что оно не масштабируется. Уже на 1000 пользователей нагрузка на SQL-сервер станет совершенно неподъемной. Другое дело, если работает специальный сервер приложений, который сможет грамотно контролировать нагрузку на SQL-сервер.
Сергей Бушмелев
А это происходит на клиенте или есть сервер приложений?
На клиенте. 
Антон Посаженков
На клиенте. 

Очень интересная задумка. Но всё же интересно периодические запросы выполняются разве не на сервере? Если на клиенте, то объясните, пожалуйста, в какой момент приходит уведомление пользователю, что документ был изменен? 

Авторизуйтесь, чтобы написать комментарий