Главное о кейсе
Knowflow запущен в сентябре 2018 года в режиме бета-версии. Сейчас он проходит тестовую эксплуатацию в проектных командах и нескольких университетах.
Knowflow представляет из себя многопользовательский онлайн-редактор концепт-карт. При необходимости его можно интегрировать с другими инструментами групповой работы, в первую очередь, с групповыми чатами и таск-трекерами.
Особенно он пригодится тем, кто практикует TOC, ТРИЗ или другие методологии группового анализа проблем и проектов.
Как редактор концепт-карт он имеет следующий набор возможностей:
– создание направленного не иерархического графа (собственно – концепт-карта),
– расширенное описание отдельных нод (карточек),
– инструменты для групповой работы,
– импорт и экспорт в распространенные форматы майнд- и концепт-карт,
– API, которое позволяет интегрироваться со сторонними поставщиками данных (например, чатами, инструментами голосового ввода, персональными голосовыми ассистентами),
– поиск по карточкам / картам,
– управление правами доступа.
К довольно редким возможностям относятся:
– инструменты для совмещения контекстов между несколькими картами:
– режим совмещения карты / коллекции / другой карты,
– возможность представления карты / группы как карточки,
– работа с шаблонами на основании этих возможностей,
– возможности работы с коллекциями данных (расширенное описание карточек, коллекции карточек),
– управление словарем доменов и классов,
– режим автоматического расположения элемента в зависимости от топологии,
– возможность оценивать карточки несколькими пользователями,
– инструменты презентации результатов.
=====
Knowflow was launched in September 2018 in beta mode. It is currently undergoing test operation in project teams and several universities.
Knowflow is a multi-user online concept map editor. If necessary, it can be integrated with other tools for group work, primarily with group chats and task trackers.
It is especially useful for those who practice TOC, TRIZ or other methodologies for group analysis of problems and projects.
As a concept map editor, it has the following set of features:
– creating a directed non-hierarchical graph (the concept map),
– extended description of individual nodes (cards),
– group work tools
– import and export to common mind- and concept card formats,
– an API that allows integration with third-party data providers (for instance, team chats, voice input tools, personal voice assistants),
– search by cards / maps
– access rights management.
The rather rare features include:
– tools for combining contexts across multiple maps:
– combination mode of the map/collection/another map,
– possibility of presenting the map/group as a card,
– work with templates based on these features,
– ability to work with data collections (extended description of cards, card collections),
– management of the dictionary of domains and classes,
– the mode of automatic positioning of the element depending on the topology,
– ability to rate cards by several users,
– results presentation tools.
Бизнес-задача и ее решение
Задача: разработать инструмент визуализации группового мышления.
Мы постарались кратко показать, как работает Knowflow и в чем его основное назначение, в каких ситуациях и чем он полезен, как работает VR-клиент:
https://www.knowflow.io/tagline2018
Больше информации про сервис и особенности его интерфейса:
https://www.knowflow.io/
Подробный туториал:
https://www.knowflow.io/tutorial/info/knowflow-interface
Отдельно отметим VR-режим:
– он применяется для одновременной работы с несколькими картами,
– это инструмент анализа для фасилитатора,
– 6DoF – естественная навигация и возможность перемещаться между картами ногами,
– поддержка всех основных VR-гарнитур на рынке: Samsung Gear VR, Oculus Go, Vive, DayDream,
– в качестве приятного бонуса — возможность кастомизировать окружающее пространство — работайте хоть под северное сияние, хоть в горах.
В данный момент приложения для VR проходят модерацию в сторах.
И про разработку и интеграции
В текущий момент проект состоит из 12 микросервисов, среди которых ключевыми являются:
— core-backend проекта с основной бизнес-логикой, написанный на python/django,
— websocket сервер из соображений производительности написан на Go-lang,
— frontend-приложение на основе react/redux,
— node. js-сервис, реализованный на фреймворке puppeteer для генерации скриншотов концепт-карт,
— публичное API и сервер очередей также выведены в отдельные сервисы,
— одной из ключевых особенностей проекта является автоматическая визуализация (расстановка) концепт-карты, auto-layout. Учитывая, что рассчет layout`а нужен для разных компонентов системы (веб-фронт, VR-клиент), визуализация графа по топологии вынесена в отдельный сервис,
— в проекте используются 3 разных базы данных: PostgreSQL для хранения основных данных, Redis для хранения очередей, пользовательских сессий и прочей необъемной оперативной информации и Tarantool на движке Vinyl с дисковым свопом качестве базы данных для хранения скомпилированных графов.
Архитектура — процесс творческий и дискуссионный, и со стороны, на первый взгляд, это может выглядеть как over engineering, хотя на самом деле роль каждого компонента вполне прозрачна и обусловлена задачей, все это легко разворачивается и поддерживается.
Из интересных вещей, которые есть в проекте, можно выделить:
— «взрослая» плагинная система на основе публичного API и OAuth2-сервера, которая позволяет внешним разработчикам писать расширения для Knowflow. Например, на основе этого мы сделали полнодуплексную интеграцию с Trello,
— система версионирования концепт-карты с бесконечной историей, которая фиксирует каждый шаг работы над концепт-картой и позволяет откатываться на него, построена похожим образом: как миграции для базы данных, накатыванием «слоев» изменений поверх друг друга до актуального состояния,
— подпроект с семантикой, построеный основе flask/gensim, который умеет строить граф из текста или html-документа, разбивая его на фрагменты и ранжируя документы между собой на основе векторного расстояния, которое мы считаем при помощи Doc2Vec, используя немного магии машинного обучения.
=====
Challenge: to develop a tool for visualisation of group thinking.
We tried to briefly demonstrate how Knowflow works and what its main purpose is, what it is useful for and in what situations, how VR client works, etc. Take a look:
https://www.knowflow.io/tagline2018
More information about the service and its interface features here:
https://www.knowflow.io/
VR mode:
- It is used for simultaneous work with multiple cards
- It is an analysis tool for the facilitator
- 6DoF – natural navigation, allows freedom of movement between maps
- Support for all major VR headsets in current market: Samsung Gear VR, Oculus Go, Vive, DayDream
- As a nice bonus – the ability to customise the surrounding space – you can work under the northern lights or in the mountains.
At the moment, the application for VR is going through a moderation process on the app stores.
Прочая информация о кейсе
В рамках гранта Фонда содействия инновациям мы вместе с коллегами NakedMinds работаем над разработкой программного продукта, который является инструментом для мышления и координации знаний и автоматизирует процесс фасилитации группового мышления.
Knowflow — многопользовательский онлайн-редактор концепт-карт. Коротко о том, как он работает:
https://www.knowflow.io/tagline2018
На нашей стороне: дизайн и разработка, интеграции с таск-трекерами, интеграция распознавания речи и внедрение семантического анализа для автоматической каталогизации данных, создание VR-клиента для всех основных платформ.
=====
As part of a grant from the Foundation for Assistance to Small Innovative Enterprises, we work with our colleagues NakedMinds on the development of a software product, which is a tool for thinking and coordination of knowledge and which also automates the process of facilitating collective thinking.
Knowflow is a multi-user online concept map editor.
How it works:
https://www.knowflow.io/tagline2018
On our side: design and development, integration with task trackers, integration of speech recognition and implementation of semantic analysis for automatic data cataloging, creation of VR-clients for all major platforms.
Скриншоты