Уже традиционно к концу лета компания Serena обновляет версию своей платформы автоматизации бизнес-процессов Serena Business Manager (SBM). Новая версия содержит целый ряд знаковых нововведений, среди которых долгожданная поддержка REST Json API, новый тип форм с нативной поддержкой HTML5, универсальный клиент для мобильных устройств на iOS и Andriod, новые графические отчеты и многое другое. Но обо всем по порядку.



Доска Kanban


Конечно, это во многом дань моде – реализовать доску управления потоком задач Kanban. Безусловно, новый экранный модуль будет эффектно смотреться на международной конференции пользователей Serena в Чикаго в Сентябре. Кто не знаком с таким инструментом, как канбан-доска, может пополнить свои знания по ссылке на wiki.

Раскидать объекты на одном экране по колонкам, соответствующим состояниям процесса, не очень сложная задача. Интереснее, какие новые функции добавлены в ядро платформы, чтобы поддержать, например, простой перенос мышкой задачи из одной колонки в другую. Для платформы такое действие значит «изменение состояния объекта» по соответствующему переходу, если переход вообще предусмотрен моделью workflow, и у пользователя есть права на такое действие. А если при этом необходимо заполнить обязательные поля?! Или, как работает заявленная функциональность подгрузки задач в это представление из внешних источников данных?! А как будет работать доска для объектов с разными процессами!? Получается сложно. Надо пробовать.



Улучшения в бэклогах


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



Что изменилось:

  • В бэклог можно выводить любые атрибуты объектов, а не только системные, причем, объединять данных из разных приложений – требований, ошибок, историй и т.д.;
  • При объединении данных из разных приложений можно комбинировать данные по одинаковым типам полей, например, по типу Single Selection, который обычно используется для разных классификаторов приоритета, сложности, влияния и т.д.;
  • Колонки в бэклоге теперь можно переименовывать;
  • Можно отслеживать историю изменений состава бэклога;
  • Добавлены новые фильтры – Приняты (Accepted) и Кандидаты (Candidates)


Изменение состояния по входящему email сообщению


Разработчикам SBM никак не дает покоя задача максимального упрощения действий руководителя для согласования/разрешения чего-нибудь в системе – О/Never, Да/Нет, Согласен/ Не согласен… И формы можно упростить до двух кнопок, и email уведомление отправить с двумя кнопками с токеном, чтобы не требовалась авторизация. Теперь добавилась специальная обработка входящих email сообщений, сформированных по шаблону Reply на адрес обработчика входящих писем. Всё, чтобы руководитель все-таки тоже работал… в одной системе эффективно вместе с командой.

SBM JSON API


SBM имеет настолько мощный API на web службах, что позволяет в принципе разработать на этом API свой собственный пользовательский интерфейс к платформе на подходящем языке программирования и технологиях. Бывает, что так необходимо сделать и разработать отдельное web приложение, взаимодействующее с платформой, соответствующее процессу, опубликованное на другом web сервере, например. Но из кода на Javascript вызывать web службы уж больно неудобно. Другое дело, если бы API сразу возвращал бы JSON объект. Конечно, есть библиотеки конвертации SOAP XML в JSON объекты в обе стороны, но это ведь лишние действия. И вот свершилось! Появилась первая версия API SBM, содержащая набор RESTful сервисов и позволяющая получать, изменять, создавать новые и удалять старые записи через REST вызовы (Get и Post) при этом работая с JSON объектами. Конечно, в первой версии API может работать только с пользовательскими таблицами, набор функций маловат, но важное начало положено.

Изменения в среде разработки SBM Composer


В этом релизе появился новый тип форм (Modern Forms) с поддержкой технологий HTML5 и .css, призванный радикально решить вопросы, связанные со стабильностью разметки форм и массового применения Javascript программ на формах. В новых формах появились функции управления разметкой страницы, функции управления разделами headers/footers/sidebars со скролированием и опцией показа только требуемых для ввода на этом действии(переходе) полей объекта.

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

В чем преимущества новых форм?


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

Во-вторых, появились дополнительные управляемые разделы – «шапка» (header), «подвал» (footers), и боковая панель (sidebar). Эти разделы позволяют сделать постоянно видимыми, т.е. нексролируемыми, некоторые элементы интерфейса, например, кнопки или заголовки.

В третьих, контейнеры будут автоматически скрываться, если у пользователя нет достаточных привилегий на контент контейнера или если контейнер пустой. Здесь под «контейнерами» надо понимать специальные секции SBM на формах – примечаний, вложений, подзадач, Линков и прочих. Причем, у контейнеров появляется автоматический скролбар, если содержание не помещается в фиксированные размеры, указанные в свойствах контейнера, и не включены опции автоматического изменения размера по контент. Эта опция ранее была реализована для виджетов и некоторых типов полей – журнальных (Journal) и текстовых (Memo).

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

В пятых, появился новый режим открытия форм, где показываются только обязательные (required) на данном шаге (переходе) атрибуты объекта. В этом режиме система будет даже любезно вести счетчик таких полей и подсказывать сколько еще осталось полей заполнить. Очень мило. Этот режим активно используется на доске Канбан.

Изменения виджетов


Relational Grid Widget используется для построения простого интерфейса выбора нескольких записей из определенной таблицы. Достаточно разместить виджет на форме, указать в свойствах из какой таблицы брать данные, какие фильтры поиска по каким полям показывать на форме и система автоматически создаст форму с поиском, а выбор пользователя сохранит в поле типа Multi-Relational. Быстро и просто.

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

Добавилась опция показа только выбранных пользователем записей на State формах. Добавилась опция показа дополнительных деталей и ссылок в «шапке» или «подвале» виджета.

REST Grid Widget используется для показа на форме SBM списка записей из внешних источников данных, получаемых через REST вызовы, и работы с ним. Добавилась опция автоматического выбора первой строки (Autoselect first row), опция показа записей по страницам (paging), фильтры работают в том числе и в режиме показа по страницам.

PDF Widget позволяет сформировать PDF документ с данными объекта с заданным шаблоном. Теперь PDF Widget поддерживает полноценный тектовый редактор.

Silverlight, Flash, and Google Gadget виджеты удалены. Следует использовать универсальный HTML/Javascript виджет.

Изменениях в отчетах


Новые типы графических отчетов — «пончик» (Doughnut Chart), «тепловая плитка» (Heatmap Chart) и «радар» (Radar Chart)





Новые встроенные отчеты


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

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

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

Гибкие интервалы времени в фильтрах отчетов теперь позволяют задать диапазон в терминах количества дней, недель месяцев, лет. Ранее были предложены только фиксированные константы, типа последние 5 дней, вчера и т.д. Кстати, добавлены новые константы – Плюс и Минус 90 дней, которыми можно пользоваться для квартальных отчетов, которые так нужны для ряда отчетов.

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

Изменения в утилите конфигурации


Среди всех изменений я бы выделил только одно – настройка кластера из серверов приложений SBM. Отдельные компоненты платформы (сервер уведомлений, TomCat сервер, база данных) можно было и раньше распределять по нескольким узлам. Теперь можно просто настроить и использовать балансировщики нагрузки в особо нагруженных или отказоустойчивых конфигурациях.

Мобильные приложения


SBM – это платформа развертывания web решений, разработанных в своей среде разработки Composer, автоматизирующих какой-либо бизнес или ИТ процесс. В принципе, для работы в приложениях SBM на смартфонах и планшетах никакого клиента никогда не требовалось – есть же браузер. А с новыми возможностями адаптирующихся к размеру экрана форм вообще непонятно зачем было разрабатывать отдельное приложение для iOS/Android. Поскольку платформа универсальная, то и клиент для мобильных платформ iOS / Android тоже должен быть универсальным, что усложняит навигацию в приложениях.

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


Подробнее о всех изменениях можно узнать на портале документации Serena.
Поделиться с друзьями
-->

Комментарии (24)


  1. Diaskhan
    26.08.2016 06:30

    Печально что BPEL, а не BPM.


    1. aionin
      26.08.2016 09:01

      Помогите мне развеять вашу грусть.
      На языке BPEL моделируется только логика взаимодействия решения SBM с внешними web службами других приложений и систем, работающих на той же платформе или совсем других.
      BPM — это название подхода управления деятельностью на основе процессов или регламентов. Подробнее на wiki
      BPMS — это название класса систем, где моделируется и исполняется приложение, автоматизирующее бизнес-процесс (Business Process Management System). Платформа SBM — относится к этому классу. Сам процесс моделируется в простой нотации workflow. Сразу скажу, что нотация моделирования BPMN не поддерживается. Наша платформа легче, проще, дешевле, чем аналоги с поддержкой BPMN. Моделировать процессы в упрошенной нотации быстрее. Дорабатывать формы UI, структуры хранения данных, отчеты, процедуры и скрипты можно в одной интегрированной среде разработки. Впрочем, нужно самому в этом убедиться…


      1. Diaskhan
        26.08.2016 09:06

        А не планируется ли Community версия, чтобы с ваять что нить, а потом если все пойдет по маслу купить допустим Enterprise Версию?

        Да и на чем построена система? Дапустим куба сразу пишет на чем она построена https://www.cuba-platform.ru/technologies


        1. aionin
          26.08.2016 09:24

          Для экспериментов есть триальная версия на 30 дней. Также есть облачный хостинг, но в США. Там тоже можно сделать временный аккаунт. Период тестирования можно продлевать. Но совсем бесплатной версии SBM нет.
          Community версия есть только у другого продукта — SDA — Deployment Automation, но это совсем другая история.

          Технологии?
          Web контейнер приложений написан на С++ и работает под Microsoft IIS,
          Компоненты: сервер нотификаций, SOAP API, JSON API, BPEL сервис, сервер контроля версий приложений — Tomcat.
          СУБД: Microsoft SQL или Oracle. Структуры хранения описаны и открыты.
          Своя среда разработки: SBM Composer
          Т.е. это конечно проприетарная платформа. Решения с этой платформы врядли можно будет куда-то перенести, хоть и можно выгрузить все в XML. Такой бизнес.
          С другой стороны система открыта через API, имеет все обязательные компоненты для долгой и безотказной работы тысяч пользователей, есть система управления версиями приложений с функциями развертывания на различных средах.


          1. Diaskhan
            26.08.2016 09:29

            Для более эффективного ПР, вам бы сделать обзор SBM composer, вот тогда программисты точно оценят.


            1. aionin
              26.08.2016 09:31

              Спасибо за идею!


          1. bormotov
            26.08.2016 12:35

            аа!!! ооо!

            Скажите, а как посмотреть на вот этот SDA, Communiti edition? на сайте (опять!) ничего такого не нашел. Просто прям беда у них в этом направлении.


            1. aionin
              26.08.2016 13:07

              Коммьюнити пользователей продукта пасется здесь — http://communities.serena.com/community/forums/categories/listings/sda-deployment-automation
              На сайте serena нужно заполнить форму и получить доступ дистрибутиву. После установки у вас будет лицензия на 5 узлов, но, увы, также ограниченная 30 днями.
              Дистрибутив могу выдать и без формы.


              1. bormotov
                26.08.2016 13:27

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

                Потому, что написать state на salt stack, это вполне обозримая работа.


                1. aionin
                  26.08.2016 13:40

                  отправил в личку


  1. bormotov
    26.08.2016 09:51

    печально, что за пару минут изучения сайта производителя, нет даже намека на цену.

    А «start free trial» сразу просит заполнить форму с кучей полей.


    1. aionin
      26.08.2016 12:10

      Видимо, у меня сегодня роль такая «прогонять печали». И вроде погода солнечная в Москве. Может, чувствуется конец лета?!
      С ценами все очень просто. Кто-то придумал в США, что цену на сайте показывать не очень правильно — лучше пусть потенциальный клиент поднимет трубку и позвонит ласковым продавцам. Тогда будет возможность поговорить, задать вопросы, и т.д. Для больших и сложных систем или решений это оправдано, на мой взгляд. Опять же лицензирование бывает запутанным. В итоге, Serena не показывает цены у себя и запрещает показывать цены на всех сайтах партнеров.


      1. bormotov
        26.08.2016 12:32

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

        Печаль, не потому, что погода в Москве, а потому, что навскидку продукт интересный, но нет. Из-за подходов прошлых веков, просто сразу отказать.


        1. aionin
          26.08.2016 12:57

          Вот для сглаживания культурных различий и нужны локальные партнеры, как говорится.
          Есть интерес, но нет желания заполнять формы — я могу дать ссылку на ftp или dropbox. Хочется посмотреть, но нет времени на установку — приезжаем и показываем. Недостаточно демонстрации — делаем прототип…
          Думайте


          1. bormotov
            26.08.2016 13:14

            да, локальные партнеры — это очень хорошая штука :)

            Но прежде чем вы дадите ссылку, я в пару слов расскажу о нашей задаче, и что уже попробовали. Вдруг, нам SDA никак не поможет.
            Есть у нас продукт, который установлен в куче разных мест, и мы его сопровождаем. Разработка ведется близко к тому, как сейчас принято — на выходе из CI получаются дистрибутивы готовые к установке (обновлению) у клиентов. И вот мы пришли к тому моменту, когда уже практически готовы сделать автоматический деплой.

            Самое простое — поставить всем агентов CI, которым будут выдавать job, который всё нужное сделает. Но как-то этот вариант не очень нравится, кажется сложно. Второе, использовать salt stack, к которому мы тоже присматриваемся, но и в этом случае есть некоторое недостатки. Еще в качестве разминки, посмотрели на nomad, который тоже, отлично сделает почти всё, с ним кажется всё будет проще чем с salt'ом, но тоже нет ощущения, что «вот, это оно, это то что нужно».

            очевидные требования:
            1. клиенты в первую очередь Windows, но есть в планах Linux (CentOS), сервер можно или WIndows или Linux
            2. нужна грамотная работа с артефактами. Не везде интернет хороший — уметь докачивать. Подписи, авторизация что-то такое вот.
            3. нужна привязка запуска событий к локальному времени. У нас клиенты от Владивостока до Калининграда, и скажем, можно обновлять в интервале от 0:30 до 1:30 по местному времени.

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


            1. aionin
              26.08.2016 13:31

              Нужны еще подробности.
              В чем заключается ваша технология установки обновления? MSI пакет, файлы меняем, скрипты пускает, базу данных обновляем? Чем сложнее технология, тем потенциально более полезно использовать мощные решения управления развертыванием. CI/CD есть и в GitLab, например.


              1. bormotov
                26.08.2016 13:43

                Сейчас это инсталятор .exe, собранный NSIS'ом, на msi так и не перешли. Скрипты внутри простые, вынести куда-то отдельно проблем нет. Для начала можно совсем без скриптов — скачал, остановил службу, заменил бинарник (один), запстил службу, убедился, что запустилась. Если нет — остановил, вернул прошлый бинарник, запустил.


                1. Dperfilov
                  26.08.2016 14:45

                  Позвольте, я вольюсь в разговор, попробую ответить на вопросы.

                  Архитектурно SDA построен на использовании агентов, которые устанавливаются на удаленные сервера. Подключаясь к агенту, центральный сервер получает возможность передавать файлы, запускать скрипты и т.д. Для «общения» используются протоколы JMS и HTTP.
                  Сами агенты доступны для Windows, Linux и еще ряда осей.

                  Касаемо работы с артефактами не очень понял насчет подписей и авторизации, о чём речь?
                  Есть говорить про медленный канал, то, честно, не скажу, есть ли какая-то технология докачки, разбиения по пакетам и т.д.
                  В одном из вариантов предлагается использовать промежуточный слой (службу) Agent Relay. Архитектура при этом будет выглядеть примерно так:

                  SDA Server -> Agent Relay -> Несколько Агентов

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

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

                  Сам процесс развертывания на словах выглядит не сложно, можно пробовать :)


                  1. bormotov
                    26.08.2016 15:11

                    Подписи — начиная от примитивных md5/sha на бинарник, завершая какими-нибудь другими сертификатами. Нужно ведь как-то убедиться, что полученный «от сервера» бинарник, это именно то, что сервер нам высылает?

                    Авторизация — например, что бы клиент salt начал работать с сервером, на сервере импортируется ключ клиента.


  1. dmitry_ch
    26.08.2016 10:32

    А это мода такая, или неуважение к читателям, когда вставляют в статью, которая будет выведена в колонке в 1000 точек картинку шириной в 1920 точек?

    Браузеры как будто бы не умеют нормально масштабировать в 1,92 раза, картинка получается корявой. Поскольку читаю пост в Хроме последней версии — думаю, не я один вижу «лесенки из точек».


    1. hakastein
      26.08.2016 11:45

      Кто вам сказал что она будет выведена в 1000 точек? А экраны меньшего размера? А экраны с высокой плотностью пикселей? Масштабирование картинок на стороне браузера практически неизбежное зло в эру адаптивных сайтов.

      P.S Сижу с хрома, лесенки не вижу.


  1. Bartolomyu
    26.08.2016 11:46

    Немного офтоп, но просто стало интересно, как заглавная картинка (косвенно?) связана с данной темой.
    Заранее спасибо за объяснение.


    1. aionin
      26.08.2016 11:55
      +1

      Это как раз просто. Название компании — Serena. Имя теннисистки — Serena Williams.
      На фотографии запечатлен эйс со скоростью 92 мили в час. Serena выпускает важный апдейт.
      Но один эйс еще не победа. И новая версия — это только шаг к победе.
      :)


      1. prolis
        26.08.2016 12:17

        А нога? Почему одна нога поднята? Serena неустойчива к внешним требованиям заказчиков?