Як легко створити прототип зручної панелі керування у вашому Trello за допомогою Google Sheets та Google Apps Script

Як легко створити прототип зручної панелі керування у вашому Trello за допомогою Google Sheets та Google Apps Script

Одним із популярних інструментів для організації робочих процесів є Trello, проте його базовий функціонал не завжди задовольняє всі потреби компаній. Ми розповімо, як за допомогою доступних інструментів, таких як Google Sheets та Google Apps Script, можна створити власний Trello Dashboard для зручного відстеження та аналізу даних. Дізнайтеся, як наші рішення дозволяють адаптувати дашборд під специфічні вимоги бізнесу, економлячи ресурси і підвищуючи продуктивність роботи команди.

Необхідність розширення можливостей Trello: Початкові завдання та рішення

Завдання полягало в тому, щоб створити допоміжний інструмент для тих, хто активно використовує Trello у своїй роботі. Хоча ми вже мали досвід користування сервісом Planyway, його функціональності все ж не вистачало для задоволення всіх наших потреб. Виникла ідея розробити власний Trello Dashboard на базі Google Sheets, який дозволяв би ефективно керувати необмеженою кількістю дошок, завдань та проєктів.

Як виглядає Trello Dashboard на базі Google Sheets

Наше рішення було спочатку розроблене для керівника проєкту, який потребував інструменту для відстеження завдань у реальному часі. Згодом, цей функціонал передали команді, яка також оцінила його корисність. У нас є плани масштабувати цей інструмент та поділитися ним з іншими користувачами.

💡
Planyway – це додаток, що інтегрується з Trello і надає додаткові можливості для організації робочих процесів та управління завданнями. Він дозволяє створювати календарі, планувати події, встановлювати терміни і сповіщення, а також координувати робочі графіки та спільні проєкти. Завдяки цьому, Planyway підвищує продуктивність і ефективність управління завданнями, роблячи процес організації більш зручним та прозорим.

Кроки реалізації проєкту та можливі альтернативи

У процесі реалізації проєкту було здійснено декілька важливих кроків, кожен з яких забезпечив успішне створення інструменту для керування завданнями у Trello:

1. Глибоке вивчення API Trello. Ми ретельно досліджували можливості API Trello, щоб зрозуміти, як найефективніше витягувати необхідні дані та інтегрувати їх у наш інструмент. Це дозволило нам оптимально використовувати всі функціональні можливості Trello.
2. Поглиблення знань в Google Apps Script. Оскільки ми вирішили використовувати Google Apps Script для автоматизації процесів, ми детально вивчили цей інструмент. Він надав нам можливість програмно управляти даними в Google Sheets та інтегрувати їх з API Trello.
3. Поглибленне вивчення формул для Google Sheets. Щоб забезпечити ефективний аналіз та візуалізацію даних. Це дозволило створити потужний дашборд, який забезпечує гнучке управління інформацією.
4. Розробка інструменту. На цьому етапі ми зібрали всі здобуті знання та створили сам дашборд. Він дозволяє користувачам отримувати актуальну інформацію з Trello та представляти її у зручній формі для подальшого аналізу.

Щодо альтернативних рішень, ми розглядали можливість використання інших інструментів, окрім Google Sheets та Google Apps Script. Наприклад, була ідея створити веб-застосунок, але це виявилося б значно складнішим. Однією з альтернатив була платформа Make, яка дозволяє автоматизувати робочі процеси, з'єднуючи різні програми та сервіси. Проте, через необхідність значних ресурсів для обробки великого обсягу даних, ми вирішили, що Google Apps Script є більш оптимальним рішенням. Цей інструмент повністю задовольняє наші потреби, дозволяючи не тільки отримувати та передавати дані, але й забезпечувати їх зберігання, аналіз та динамічний огляд у режимі реального часу.

💡
Make – це сервіс автоматизації робочих процесів, який дозволяє з'єднувати різні програми та сервіси для автоматизації передачі даних та виконання різних дій. Він допомагає автоматизувати багато рутинних завдань і підвищує ефективність роботи.

Google Apps Script став оптимальним вибором для нашого проєкту завдяки своїм безкоштовним можливостям та гнучкості у роботі з даними. Використання Google Sheets та Apps Script дозволило нам створити інструмент, який не лише відповідає нашим потребам, але й значно перевершує можливості платних рішень, таких як Make, завдяки можливості динамічного огляду та ефективного управління великими обсягами даних без додаткових витрат.


Як працює наше рішення?

Наше готове рішення для Trello Dashboard реалізоване на основі Google Sheets та Google Apps Script, дозволяє з легкістю отримувати і обробляти дані з Trello. Користувач починає з авторизації у своєму обліковому записі на Trello. Після цього він обирає необхідні дошки та користувачів зі списку і натискає кнопку для завантаження інформації.

Фільтр по користувачам у дашборді Трелло

Цей процес дозволяє імпортувати дані про користувачів, дошки та завдання прямо у Google Sheets. Час завантаження залежить від кількості вибраних дошок, але після завершення імпорту всі дані автоматично потрапляють у базу даних. Користувачі не мають прямого доступу до цієї бази, натомість вони бачать інтерактивний дашборд, який відображає актуальну інформацію.

Налаштування фільтрів та запуск дашборда

На дашборді доступні різні фільтри, що дозволяють сортувати дані за кількістю карток і датою їх створення. Однією з ключових функцій, яку нам вдалося реалізувати і яка відрізняє наш Trello Dashboard від інших рішень, таких як Planyway, є можливість перегляду коментарів у картках Trello. Користувач може бачити кількість коментарів, авторів коментарів, авторів карток та іншу інформацію. Крім того, дашборд дозволяє відстежувати, скільки часу картка перебувала на кожному етапі проекту (у стовпчиках Trello).

Узагальнена інформація по дашборду

Ми також реалізували можливість узагальненого огляду всіх даних на дашборді, що надає користувачам можливість бачити загальну картину проєктів та завдань. Такий підхід значно полегшує управління проєктами та покращує ефективність командної роботи.


Необхідні навички та знання

Для успішної реалізації нашого Trello Dashboard знадобилися такі навички та знання:

  • Логічне мислення. Важливо було зрозуміти, як ефективно виконати завдання та розробити план дій.
  • Вивчення Trello API. Спочатку ми детально ознайомилися з документацією Trello API, що допомогло зрозуміти, які дані можна отримати та як їх інтегрувати.
  • Тестування за допомогою Postman. Для тестування та налагодження API-запитів ми використовували Postman, який забезпечує зручний інтерфейс для відправки та аналізу HTTP-запитів.
  • Робота з Google Apps Script. Ми використовували Google Apps Script, який дозволяє автоматизувати роботу з даними Trello у Google Sheets. Apps Script, схожий на JavaScript, надає гнучкі можливості для створення користувацьких сценаріїв.
  • Знання формул Google Sheets. Використання функцій і формул Google Sheets допомогло нам створити ефективний і привабливий дашборд для візуалізації та аналізу даних.
  • Розгляд альтернативних рішень. Ми оцінювали можливість використання інших інструментів, таких як Make, для автоматизації робочих процесів, але обрали Google Apps Script через його ефективність та безкоштовні можливості.
💡
Postman – це популярний інструмент для тестування API, який дозволяє розробникам створювати, тестувати та документувати API-запити, автоматизувати тести та аналізувати результати.

Ці навички дозволили нам створити потужний інструмент для автоматизації та управління даними з Trello, що значно покращило нашу продуктивність та ефективність роботи.


Проблема та її вирішення при створенні Trello Dashboard

У процесі роботи ми зіткнулися з проблемою, пов'язаною з обмеженням часу виконання функцій у Google Apps Script. Оскільки цей інструмент є безкоштовним, він має обмеження для запобігання перевантаженню серверів. Одне з таких обмежень полягає в тому, що функція може працювати лише протягом 6 хвилин. Це обмеження не створює труднощів при обробці невеликого обсягу даних, але стає проблемою при роботі з великим обсягом інформації.

Ось такі листи (перший блок констант) та Trello Actions (нижній блок const) ми використовуємо для того, щоб збирати по ним всю необхідну інформацію

Для вирішення цієї проблеми ми використовували підхід циклічного виконання. Наше рішення полягає в тому, що функція запам'ятовує вже отриману інформацію і автоматично виконує скрипт повторно протягом 6 хвилин, поступово доповнюючи дані. Таким чином, процес триває, поки вся необхідна інформація не буде оброблена повністю.

Ми застосували такий підхід для збору всіх необхідних даних, використовуючи методи циклічного виконання, щоб обійти обмеження на час виконання функцій. Це дозволило нам успішно обробляти великі обсяги даних та інтегрувати їх у Google Sheets для подальшого аналізу та візуалізації.


Чи використовувати додаткові програми чи інструменти, окрім Trello, Google Sheets та AppScript?

У майбутньому ми плануємо оновлення інформації в реальному часі за допомогою вебхуків від Trello. Проте ми зіткнулися з проблемою: Google Apps Script не підтримує HEAD запити з Trello, що унеможливлює встановлення вебхуків для автоматичного отримання інформації в Google Apps Script, оскільки ці інструменти конфліктують.

Ми звернулися за консультацією до спеціаліста з Google Apps Script і вирішили розглянути використання хмарного сервісу для посередництва у передачі даних. Одним із можливих рішень є використання Glitch або іншого хмарного сервісу – існує безліч варіантів, як безкоштовних, так і платних.

💡
Glitch – це онлайн-платформа для розробки веб-додатків, яка пропонує безкоштовне хостингове середовище для проєктів. Цей сервіс дозволяє розробникам створювати, тестувати та розгортати веб-додатки, використовуючи веб-технології, такі як HTML, CSS, JavaScript та Node.js. 

Glitch надає можливість спільно працювати над проєктами, редагувати код у режимі реального часу та спілкуватися з іншими членами команди. Крім того, Glitch має вбудовані інструменти для управління проєктами, розгортання додатків та моніторингу їх стану, що дозволяє швидко створювати та тестувати веб-додатки без необхідності налаштування серверів або інфраструктури.

До речі, ми самі зупинили свій вибір на Glitch, як на рішенні для посередництва у передачі даних в Google Apps Script і плануємо переходити на нього в другій версії нашого дашборду. Розглядаючи різні хмарні сервіси, ми виявили, що Glitch надає оптимальну комбінацію функціональності та простоти в налаштуванні, що ідеально відповідає нашим потребам. Такий підхід дозволить нам ефективно вирішувати проблему конфлікту між Trello і Google Apps Script та покращити швидкість оновлення інформації в реальному часі на нашому дашборді.


Яким чином тестували дашборд?

Технічне тестування дашборда проводив розробник проєкту, Владислав. Спочатку були перевірені всі функції та сценарії роботи дашборда для забезпечення коректної взаємодії з Trello API та правильного функціонування скриптів Google Apps Script. Після цього керівник проєкту провів початкове користувацьке тестування, надавши зворотний зв'язок та вказавши на необхідні покращення.

Після внесення всіх необхідних виправлень дашборд було передано на тестування команді. З того часу критичних помилок не було виявлено, що свідчить про стабільність та надійність даного рішення.

Відгук замовника про роботу з Trello Dashboard

Працюючи з багатьма командами в компанії, які займаються різними активами (CRM, вебсайти тощо), ми зіткнулися з необхідністю оперативного відстеження вимог та запитів щодо розробки або доопрацювання цих активів. За день ми обробляємо до сотні запитів, не рахуючи коментарів всередині них.

Для того щоб утримувати всю цю інформацію в порядку, виникла потреба в інструменті, який би дозволяв концентрувати увагу на конкретних дошках (активах чи командах) або на окремих особах (запитувачах чи виконавцях). Це було вкрай складно зробити лише за допомогою Trello або Planyway.

Тому ми запросили розробити рішення, яке дозволяє бачити ситуацію по запитам на окремих дошках (із зазначенням якості виконання кожного запиту – часу на дошці, коментарів, чи не був забутий запит) і по особах (скільки запитів виконано, скільки коментарів написано, чи є втрачені запити).

Загалом, цей інструмент дозволяє відстежувати робочі патерни через зрозумілі метрики та цифри в режимі реального часу, що допомагає оперативно помічати відхилення від норми та запобігати їх наслідкам, перш ніж вони стануть серйозними проблемами для продукту або процесу.

Переробка інтерфейсу для зручності користувачів

На початковому етапі користувачі зіткнулися з труднощами при запуску дашборда, оскільки вони не звикли користуватися верхнім меню в Google Sheets, де знаходяться розширення та інші інструменти. Весь функціонал управління дашбордом спочатку було налаштовано саме там.

Меню запуску скрипта
Код меню запуску скрипта в Трело Дашборд

До того ж, це меню недоступне в мобільній версії Google Sheets, що створювало додаткові незручності. Ми вирішили цю проблему, додавши дублююче меню безпосередньо в таблицю. Це виявилося настільки зручним, що навіть користувачі десктопної версії почали використовувати його для налаштування дашборда, відмовляючись від традиційного верхнього меню.

Дублююче меню

Адаптація дашборда для інших компаній є простою

Якщо компанія використовує Trello, процес адаптації дашборда дуже простий. Достатньо одного дзвінка, і ми створюємо проєктну таблицю, надаючи всі необхідні доступи та інструкції. На повну адаптацію рішення «під ключ» може знадобитися лише кілька годин або днів, залежно від обсягу роботи.

У разі, якщо компанія використовує інший сервіс, наприклад, Jira, процес може бути дещо складнішим. Потрібно провести детальне дослідження документації Jira, щоб зрозуміти логіку її роботи. Якщо вона схожа з Trello, необхідно буде лише переробити запити до Jira. У такому випадку адаптація може зайняти приблизно тиждень.

💡
Jira – це популярна система управління проєктами, розроблена компанією Atlassian. Вона призначена для організації та ведення робочих процесів, спрямованих на розробку програмного забезпечення, управління проєктами, ведення задач, баг-трекінгу, планування релізів та спільної роботи команди розробників. 

Jira надає широкі можливості для налаштування робочих процесів з урахуванням потреб конкретного проєкту чи команди, а також інтегрується з іншими інструментами розробки програмного забезпечення, такими як GitHub, Bitbucket, Confluence та інші. Jira допомагає розробникам та командам ефективно керувати проєктами, підвищувати продуктивність та впроваджувати кращі практики у сфері розробки програмного забезпечення.


Команда та організація робочого процесу у створенні дашборду

Проєктом займалася команда з двох осіб: розробник і керівник проєкту (Project Manager). Розробник відповідав за всі технічні аспекти, пов'язані з кодом і розробкою дашборда, тоді як керівник проєкту займався візуальною частиною та загальною координацією роботи.

Ми працювали за методологією спринтів. На початку кожного тижня визначалися завдання, які потрібно виконати. Після цього ми проводили спринт, оцінювали результати, вносили необхідні корективи і починали новий цикл. Такий підхід дозволив нам поступово удосконалювати проєкт і швидко адаптуватися до змін.

Дашборд був реалізований у дві ітерації. Спочатку була створена базова версія дашборда, яка працювала і забезпечувала основні функції. Потім ми вдосконалили її до фінальної версії, додаючи нові можливості та покращуючи існуючі. Загалом процес розробки тривав близько одного місяця.


Висновки та поради

На нашому прикладі ми добре бачимо, що дашборди є надзвичайно корисними інструментами для відстеження та аналізу даних. Не варто боятися додавати нові функції на основі існуючих сервісів, таких як Trello – це може бути дуже продуктивним і не складним процесом. Розвиток інструментів, таких як Google Sheets і Google Apps Script, дозволяє створювати додаткові можливості для вирішення конкретних завдань без необхідності створювати все з нуля.

Три поради від розробника

💡
Користуйтесь Google Apps Script. Це потужний інструмент, який дозволяє автоматизувати багато процесів і створювати власні рішення на основі існуючих сервісів.
💡
Уважно вивчайте API. Ознайомтеся з документацією, щоб розуміти, які дані ви можете отримати і як їх можна використовувати.
💡
Перевіряйте все власноруч. Тестуйте свої рішення і переконайтеся, що вони працюють правильно, перед тим як передавати їх у використання.

Що ще почитати, щоб зробити дашборд Трело


Гайд по Trello.

Огляд Google Apps Script.

Перелік функцій Google Sheets.

Створення безкоштовного дашборда на основі Google Sheets і Apps Script дозволяє суттєво заощадити на платних функціях Trello та інших сервісів, які стягують щомісячну плату за звіти по картках Trello. Використовуючи доступні інструменти, можна ефективно реалізовувати додаткові функції без додаткових витрат, забезпечуючи повний контроль над процесом і оптимізуючи бюджет.

En