Який ефективний спосіб виявити вимоги в ІТ проєктах

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

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

При цьому, бізнес-вимоги (business requirements) – це складна структурована бізнес-мета для певної організації або замовників системи. Бізнес-вимоги пояснюють: чому тій чи іншій організації потрібна саме ця система та цілі, які бізнес-структура планує реалізувати з її допомогою. Бізнес-вимоги безпосередньо не відносяться до реалізації проєкту як такого, а відображають плани чи наміри бізнесу.

У чому практична цінність вимог? Вони допомагають зробити будь-які управлінські процеси ефективнішими, впроваджуючи певні моделі чи стандарти. Наприклад, автоматизація процесу створення замовлення допомагає скоротити час та спрощує створення замовлення. А це у свою чергу збільшує клієнтську конверсію, тім самим збільшити ефективність роботи бізнесу. Отже, бізнес-вимоги – високоефективний інструмент, здатний працювати на перспективу та з перспективою, але як і будь який інший інструмент має бути використаний ефективно, насамперед за рахунок коректного виявлення вимог.

Говорячи про збирання та виявлення вимог, як правило використовують наступні джерела:

  • Внутрішні знання та досвід підприємства
  • Галузеві дослідження та найкращі практики (англ. Best Practice)
  • Нормативна документація (закони та інші правові акти, держстандарти).
  • Аналіз продуктів конкурентів.

Виявлення вимог — це процес спілкування та співпраці з ключовими зацікавленими сторонами для акумулювання візії та визначення потреб проєкту.

Чому виявлення вимог є важливим для команд розробників проєкту, які потрібні методи виявлення та кроки, пов’язані з виявленням вимог? Давайте з‘ясуємо.

Що таке виявлення вимог?

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

Процес виявлення вимог

Ефективний процес виявлення важливий, бо це дає такі переваги:

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

Враховуючи найкращі практики існує п’ять основних етапів процесу визначення вимог:

  1. Збір

За визначенням, «збір» — це накопичення даних з розрізнених джерел, тоді як «вилучення» — це акт отримання інформації з конкретного джерела. Обидві дії є важливими для загального процесу виявлення вимог і потребують досвіду для належного виконання.

Ефективний спосіб підготуватися до визначення — зібрати бізнес-аналітиками всі доступні вимоги та вивчити їх для отримання розуміння кінцевого результату.

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

  1. Визначення ключових зацікавлених сторін

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

  1. Отримання вимог від ключових зацікавлених сторін

Існує безліч методів виявлення вимог. Посібник щодо зведення знань з бізнес-аналізу від Міжнародного інституту IIBA (BABOK) називає основні дев’ять методів (мозковий штурм, аналіз документів, фокус-групи, аналіз інтерфейсу, інтерв’ю, спостереження, створення прототипів, семінари з вимог, опитування/анкетування), але це ще не все, наприклад аналіз протоколів, розробка анкет тощо.

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

№1: Метод Спостереження

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

2: Метод Мозкового штурму

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

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

№3: Метод Інтерв’ю

Перевага: глибоко досліджуючи чиїсь знання та потреби один на один, ви гарантуєте, що зрозумієте справжню, а не лише уявну потребу.

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

№4: Метод семінарів з вимог

Перевага: ви можете швидко сформувати основні вимоги проєкту.

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

5: Метод Прототипування

Перевага: ви можете переконатися, що те, що ви проєктуєте, справді потрібно людям, плюс у вас ще є час це змінити.

Є деякі люди, яким важко проаналізувати систему чи продукт, доки не спробують це на практиці. Але такий шлях сприйняття не завжди можливо реалізувати на практиці. Очевидно, що прототипування неможливо зробити на дуже ранній стадії проєкту — тож потрібно певне уявлення про кінцеву мету задачі, перш, ніж запустити процес.

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

  1. Вимоги до документування вимог

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

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

  1. Підтвердження висновків

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

Бізнес-аналітики проводять процес визначення вимог на початку проєкту, алє цей момент триває протягом усього процесу розробки. Це пов’язано з тим, що зміни відбуваються завжди, і неможливо знати всі запитання, які потрібно поставити, або отримати всі правильні відповіді заздалегідь.

Проблеми успішного виявлення вимог

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

Підсумки

Ефективне виявлення вимог — це поєднання мистецтва та науки для бізнес-аналітиків. Вони повинні знати, які запитання ставити та як їх ставити. Крім того, бізнес-аналітики повинні вміти чітко спілкуватися та співпрацювати з ключовими зацікавленими сторонами на всіх етапах процесу виявлення.

Бізнес-аналітики, які працюють над складними або регульованими проєктами, не можуть покладатися на файли Word або електронні таблиці для документування вимог. Рівень складності, на якому вони працюють, вимагає, щоб у них були під рукою найкращі інструменти виявлення вимог.

Саме тому у складному сучасному світі, який швидко змінюється, набуває популярності  сучасний спосіб управління вимогами із використанням BPMN (Business Process Model and Notation) який є оптимальним способом візуалізації бізнес-процесів. Ця мова моделювання бізнес-процесів є проміжною ланкою між візуалізацією та втіленням бізнес-процесу. За допомогою моделювання ми можемо описати будь-які бізнес-процеси, і вони можуть виконуватися в різних системах управління, тим самим пришвидшувати якість взаємодії і віддачі між процесингом, клієнтами і продуктом.

BPMN не описує ІТ-систем загалом. Ця нотація призначена для опису конкретної предметної галузі реального бізнесу. Тут можуть бути задіяні різноманітні компоненти: як програмні комплекси, так і живі люди (співробітники компанії, замовники, постачальники). Це і відрізняє нотацію від графічних засобів опису програм.