Мы верим в веб

Официальный канал Docsvision
Docsvision
Published in
5 min readJan 12, 2021

В 2020 г. компания «ДоксВижн» представила обновления для платформы Docsvision и web-клиента. Главные особенности в том, что новая версия платформы поддерживает работу с СУБД PostreSQL и по-прежнему с MS SQL, а web-клиент стал существенно более функциональным и позволяет строить различные веб-приложения.

Какие были сделаны изменения и как разрабатываются компоненты решения в «ДоксВижн», рассказал Сергей Пуцин, руководитель департамента развития продукта Docsvision.

1. Будущее за web-, мобильными или десктоп-приложениями? Почему?

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

2. Не сравнивая старый и новый web-клиент Docsvision, расскажи, что он умеет в настоящем времени?

Web-клиент в каких-то аспектах уже превосходит по функциональности Windows-приложение. Например, в его новой версии пользователь в режиме одного окна работает с заданиями и просматривает документ, то есть мы исключили необходимость дополнительных кликов при работе с документами и связанными с ними задачами. Возможность отображения в одном интерфейсе информации из нескольких, в т.ч. внешних по отношению к системе объектов — это ещё один шаг в развитии web-клиента как платформы для разработки веб-приложений. Именно таковым он и является, это не просто статичный интерфейс для работы пользователей. Он поддерживает возможность расширять, добавлять и изменять представление данных в вебе, строить любые произвольные web-интерфейсы, которые могут сильно отличаться от традиционных для СЭД\ECM. Например, со стартовой страницы с дашбордами и отчётами можно настроить переходы к спискам заданий, документам, а можно на другие страницы, содержащие любые данные, может быть, тоже являющиеся дашбордами, т.е. можно создавать и многостраничные портальные решения. Дополнительно реализовывать интерфейсы для разных групп пользователей на основе его уникальной роли или бизнес-логики. Web-клиент умеет почти всё.

3. Что web-клиент ещё не умеет, но вы учите его этому?

Вначале был и до сих пор есть Windows-клиент, в котором доступна вся функциональность для пользователей и для администраторов системы. Примерно в 2013 г. мы выпустили первый релиз web-клиента, который позиционировали как решение для организации доступа к системе без установки отдельного программного обеспечения с минимальным набором функций. Следуя трендам, а именно тренду на мобильность, мы стали развивать web-клиент и расширять его возможности. Сейчас он умеет почти всё, кроме поддержки функций для администрирования. Но мы планируем и к этой функциональности предоставить доступ через веб-интерфейс и уже работаем над этим.

4. Есть функциональность, которая никогда не будет доступна в web-клиенте? Почему?

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

5. Расскажи, как строилась работа над web-клиентом? Что было главным стимулом для обновления: технологии или запросы клиентов?

Мы стараемся технологически освежать web-клиент с каждым релизом. Например, использовать новые фреймворки или обновлять уже используемые. Эта работа не видна клиентам и партнёрам, но мы её делаем всегда, чтобы иметь запас для развития.

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

6. Scrum или waterfall — как вы разрабатываете продукт?

Точно уже не waterfall. Это очень медленно и результат непредсказуемый. Глядя на весь современный мир и другие ИТ-компании, мы давно перешли на гибкие методы управления разработкой. Наши процессы базируются на scrum, но как часто делается, методология адаптирована под наши реалии. Если в общих чертах: у нас есть так называемый глобальный бэклог, куда стекаются потоки требований к разным модулям и компонентам, которые затем расходятся по релизам и спринтам. Перед стартом работы над новой версией продукта мы собираемся и проводим grooming, чтобы определить, какие требования возьмём в работу — формируется бэклог новой версии одного из продуктов. В этом процессе «причёсывания» задач обычно участвуют ключевые лица команд, и в результате получается список требований, оценённых, понятных команде и готовых к разработке.

7. Опиши рабочий день/неделю/спринт команды

У нас 2-недельные спринты. Перед началом каждого спринта команда собирается и обсуждает, что возьмёт в работу. Поскольку мы перестали писать детальные технические задания и чаще ограничиваемся верхнеуровневыми спецификациями и пользовательскими историями, то разработчики работают в связке с аналитиками и тестировщиками. Ежедневно вместо классических стендапов участники команды отвечают на традиционные вопросы: что сделал вчера, что планируешь сделать сегодня и какие есть проблемы. Ответы на эти вопросы собирает специальный бот, который присылает отчёт в чат команды. Если были выявлены какие-то проблемы, то команда организует стендап для поиска решений.

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

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

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

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

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

--

--