Якщо хтось хоче встановити термін, то це нормально, і термін може бути визначений, але те, що вони повинні розуміти, це те, що якщо термін визначений, то сфера застосування повинна залишатися гнучкою.
тл; д-р
В ідеальному світі у нас не було б строків і просто доставляти речі, коли вони будуть готові. Однак реальність полягає в тому, що люди, які платять за речі, зазвичай хочуть знати, коли вони закінчені. Agile методології це визнають, але також визнають, що не все можна зв'язати.
Це гарантує, що ви можете зберегти якість доставки на рівні, що підходить для товару. Якщо ви встановите термін і обсяг (і бюджет), то все поспішає, і ви в кінці проекту повернетеся до старого світу водоспадів з шаленим крихом. Збільшення бюджету зазвичай не є відповіддю, оскільки додавання більшої кількості розробників і тестерів не вирішує проблему швидше. Це добре відомий вид (і я згоден з ним з досвіду), що чим більше людей ви додаєте (кожен зі своїми слабкостями) , тим більше часу він приймає.
Тепер, як правило, (якщо вони дійсно не розуміють Agile методи), людині, яка платить за програмне забезпечення, не подобається, що нам сказали, ми можемо дотриматись вашого терміну, але ми не можемо зробити все, що ви хочете. Цим можна керувати, розставляючи пріоритети функцій, що складають програмне забезпечення. Ваша дискусія щодо пріоритетності може виглядати так:
Команда розробників (D): "Будь ласка, чи можете ви визначити пріоритетні функції, які ви хочете отримати, перш за все найголовніше?"
Замовник (C): "Все є пріоритетним 1 - я хочу, щоб вони були зроблені до кінця наступного місяця".
Д : "Це може бути можливим, але це може бути неможливо, якщо вимоги зміниться або ми виявимо проблеми, яких ми не очікували під час розвитку".
C: "Ну що робити, якщо я дам вам більше грошей?"
Д: " зітхніть ... навіть якщо більше ресурсів, це займе у них один місяць, щоб реально розпочати роботу, тому, якщо ви не знаєте, як розставити пріоритети, просто скажіть нам, які з них ви хочете зробити першими".
C: "Гаразд, я хочу велику кнопку, але зробіть її дійсно великою, а потім ... і т. Д."
Тепер ви можете розпочати роботу над функціями в порядку черговості. Це допомагає також заздалегідь поглянути на свою команду на ті пункти, які є нижчими за порядком пріоритетності, і зробити кілька ранніх оцінок, знаючи, що ви можете змінити їх, коли досягнете розвитку, коли у вас буде більше інформації. Це можна використовувати для переосмислення або створення дорожньої карти, якщо у вас її ще немає. Потім це є основою вашого плану випуску. Дорожня карта може бути обговорена із замовником, який визнає, що сфера застосування може змінитися, але у вас є порядок доставки речей.
Однією з найважливіших переваг Agile є те, що він визнає, що все змінюється в міру розвитку, і ви налаштовуєтесь, як і вони. На противагу більш традиційним підходам, цей принцип у поєднанні з регулярними результатами спринту та постійним спілкуванням із клієнтом означають, що ви, природно, змушені бути більш прозорими щодо прогресу, що є хорошою справою.
Іноді клієнту не подобається, що вони не отримають того, що хочуть, до певної дати, Але вони зрозуміють, чому і що вони отримають, будуть хорошої якості. І через 6 місяців після того, як функції будуть доставлені, замовник не піклується або пам’ятатиме, що ви доставили до певної дати, він пам’ятатиме якість продукту, який він все ще використовує.