Які питання слід задавати під час вилучення вимог
Однією зі складових процесу підготовки до вилучення вимог є складання списку питань. Необхідно уникати ситуацій, коли, забронювавши частинку дорогоцінного часу замовника, ви в результаті губитеся в пошуках питань, які потрібно задати. Деяким клієнтам лише дай привід висловитися; інших же необхідно «вести» в процесі бесіди. У будь-якому випадку, виходячи з особистого досвіду, можу вас запевнити, що підготовка переліку питань заздалегідь допомагає «не збитися зі шляху» під час інтерв'ю.
Що таке запитальник вимог?
Запитальник вимог - це список питань, метою яких є з'ясування вимог для проекту. Зазвичай питання групуються по функціональним частинам (features) або бізнес-вимогам / цілям проекту. По суті, на кожне високорівневе вимога вашого Vision and Scope документа повинен бути список питань для подальшого уточнення вашого розуміння цієї вимоги. Інвестування часу в складання запитальника вимог допоможе вам не тільки в зборі самих вимог, а й в пошуку вузьких місць, про які ви не мали уявлення (див. Статтю «За кордоном збору, вилучення та уточнення вимог»). Чим більше ви дізнаєтеся з даної теми, тим більше питань у вас з'явиться. Тому запитальники вимог мають тенденцію зростати з плином часу.
Запитальники вимог специфічні для кожного окремого проекту. Жоден запитальник не спрацює для всіх проектів. Якщо ваша компанія займається однотипними проектами, то у вас, ймовірно, вийде скласти шаблон опитувальника. Якщо ж ви постійно працюєте на різних проектах, то вам доведеться писати запитальник для кожного проекту окремо. В інтернеті є багато різних ресурсів, де ви зможете відшукати списки питань для проектів вашого типу, що, до речі, і було однією з цілей створення веб-сайту Bridging the Gap.
Які питання мені слід задавати?
Я зазвичай працюю з кожної функціональною частиною окремо. Я записую всі свої поточні знання про функціональність (а також свої припущення). Потім я приступаю до створення чорнового списку питань. Питання природним чином змінюються і уточнюються в міру обмірковування функціональності. І все ж періодично мені доводиться стимулювати своє мислення. Як і будь-який хороший розповідь, вимоги повинні відповідати на ряд важливих питань: як, де, коли, що і навіщо.
Ось ряд загальних питань, якими можна стимулювати мислення:
• Як ви будете використовувати даний функціонал?
• Чи є даний функціонал процесом, і, якщо так, які його кроки? Або ж які питання мені слід задати, щоб ці кроки з'ясувати?
• Як ми можемо задовольнити цю потребу бізнесу?
• Як можна обміркувати даний функціонал з альтернативної точки зору?
• Як ми дізнаємося, що функціонал закінчений?
• Де точка входу в процес?
• Де буде даний функціонал доступний для користувача?
• Де користувач буде фізично знаходитися під час використання функціоналу?
• Де можна буде побачити результати?
• Коли функціонал буде використовуватися?
• Коли вам необхідно буде знати про ...?
• В яких випадках функціонал може «впасти»?
• Коли ми будемо готові приступити до ...?
• Хто буде використовувати функціонал?
• Хто буде надавати вхідні дані для функціоналу?
• Хто буде одержувачем вихідних результатів?
• Кому необхідно знати про результати використання функціоналу?
• У кого я можу дізнатися більше про це?
Питання «Навіщо?» Відмінно підходять для підведення підсумків, так як допомагають переконатися в тому, що тільки що виявлені вимоги відповідають потребам, ідентифікованим під час визначення обсягу проекту.
• Ще раз: навіщо нам цей функціонал?
• Чи є інші шляхи досягнення даних результатів?
• Чи задовольняє даний функціонал потребам бізнесу і вирішує чи проблему, яку необхідно вирішити?
Приклад опитувальника вимог
Ось список питань, складених мною для функціоналу пошуку, з навмисно опущеними з метою приватності клієнта деталями.
Використання опитувальника вимог з метою завдання правильних питань
Я часто відсилаю запитальник вимог замовника, хоча і ніколи не очікую, що вони підготують відповіді заздалегідь. Під час вилучення вимог я вкрай рідко ставлю питання послідовно за списком. Зазвичай я вибираю кілька основних питань зі списку і намагаюся розговорити співрозмовника. І потім, у міру того, як вони діляться своїм баченням функціоналу, я використовую питання зі списку для того, щоб направити розмову в потрібне русло і переконатися, що функціонал обговорюється «від і до». Зазвичай я ставлю близько половини питань зі списку. Відповіді на інші питання я отримую неявно протягом бесіди.
А як ви готуєтеся до вилучення вимог? Чи використовуєте ви запитальник вимог або у вас своя методика?
Переклад підготовлений: Gerych