Definition of DONE в розробці програмного забезпечення


Давайте уявимо, що в кінці кожної ітерації в SCRUM або будь-якому іншому способі Agile розробки програмного забезпечення, розробник приходить до вас і каже: “I’m done with this functionality! або функція зроблена” Але ви, звичайно, запитаєте: “Що ти маєш на увазі під словом зроблена? Вона зроблена чи повністю зроблена”

Що я хочу тут сказати: Розробники ПЗ думають, що розробка програмного забезпечення починається і закінчується з ними. Це насправді не дуже хибним твердженням, але …
Розробка програмного забезпечення набагато є більшим, ніж просто писати код. Код сам по собі не так вже й корисний. При розробці команда повинна визначити критерій, коли продукт можна назвати готовим (DoD), але тоді це буде набагато більше, ніж “просто кодування”.

Приклад визначення готовності фунціоналу (Definition of Done)

Розробка / Кодування

  • Код написаний з модульними тестами
  • Код був об’єднаний в Main
  • Код розглянув хтось інший, ніж автор

Тестування / Розгортання (Deployment)

  • Написані QA тести
  • Функція підтверджена QC
  • Функція протестована QA
  • Написані і проведені UI тести
  • Прийняті Product Owner

Як ви можете бачити, в режимі реального визначення готовності функціоналу, міститься набагато більше кроків, ніж сам код. Як визначити цей критерій готовності (DoD)?

 Визначення Definition of Done (DoD)

  • Зберіть команду перед або на початку старту проекту
  • Почніть дискусію, коли фунціонал може вважатися DONE
  • Намагайтеся уникати двозначності і відмінності у визначенні
  • Запишіть визначення!
  • Всі члени команди повинні слідувати DoD

Таким чином, наступного разу, коли розробник прийде і скаже: “Я зробив!”, всі будуть точно знати, що це означає.

Схожі статті

Як робити Scrum під Waterfall? Дуже часто Scrum під Waterfall існує в організаціях. Хоча він може існувати не формально, але він може бути передбачено договором або правилами фірми. Scrum може бути частиною Agile експерименту. Scrum під Waterfall може існувати, тому що це практи...
Якими характеристиками повинні володіти вимоги? Усі суттєві вимоги включені. Не залишилося вимог для визначення на пізніше. Не повні, якщо: - Не функціональні вимоги відсутні; - Існують приховані припущення; - Занадто загальні заяви Суперечливі термінології, суперечливі необхідні дії...
Хто такий насправді Скрам Мастер? Скрам Мастер допомагає команді бути продуктивною і використовувати її творчий потенціал для отримання готового, працюючого програмного забезпечення. Основне є те, що Скрам Мастер очолює команду, але не командує нею Скрам Мастер є тренером. Він ...
Розуміння ролі Продуктного менеджера в Скрам Відповідальність Повинен мати спільне бачення Розробляє Winning продукт Власник продукту управляє зусиллями по розробці програмного забезпечення в цілях створення якісного продукту Інші функції A) Створення бачення продукту B) Підтримка...