Коротка відповідь
Команда Dev пише технічні речі. Scrum допоможе вам трохи, але не так багато в процесі технічної несправності. початок роботи з користувацької історії. Scrum - це майже Що-Світ - тільки. Технічна поломка - How-World .
Розбиття, передбачене Scrum,:
- Історія користувача -> Критерії прийняття
Поширені люди часто використовують поверх цього:
- Епічні -> Історії користувачів
- Історія користувача -> Підзадачі
- Критерії прийняття -> Тести на прийняття
Крім того, команда може написати технічні завдання для тих речей, які вони знають, що потрібно виконати (тобто встановити IntelliJ IDEA для всіх на початку проекту), але які не мають ділової цінності.
Щоб отримати подальші вказівки щодо розбиття роботи, знайдіть XP (екстремальне програмування), чистий код , прагматичне програмування , інженерія програмного забезпечення , CRC-карти , OOP / OOA / OOD , шаблони дизайну , рефакторинг , ефективна робота зі застарілим кодом , TDD ( Тест-керований розвиток), BDD (поведінка-керований розвиток), ATDD (прийняття-тест-керований розвиток).
Довга відповідь
Як думає Scrum
Що-Світ і Як-Світ
Існує Що-Світ і Як-Світ . Як ви почували себе правильно, історія користувача призначена для користувачів , генеруючи ділову цінність, яка називається вторинною цінністю у What-World . Scrum - це здебільшого лише What-World. Це майже нічого не говорить про How-World , в основному не більше ніж "How-World - це відповідальність команди Dev".
Історія користувача проти завдання
Зазвичай елементи "Блокування", які призначені для How-World , називаються не Історією користувача, а Технічною Завданням або Підзадачею . Багато інструментів дозволяють розбивати історію користувачів з What-World на підзадачі в How-World .
Як Scrum допомагає і де ця допомога закінчується
Допомога Scrum for the How-World закінчується на кількох пунктах зустрічі планування спринту :
- [Спринтарська зустріч з планування ] Команда виявляє нерозуміння історії, якщо різні товариші команди придумують різні оцінки Story Point під час Планування покеру -> Дискусія.
- [Визначення готовності] Команда не приймає Історії користувачів, які занадто великі (Історія балів зависока). Основне правило, знайдене в багатьох визначеннях готовності, полягає в тому, що бали за історію повинні бути менше половини швидкості команди.
- [Визначення готовності] Команда не приймає Історії користувачів без достатнього опису Критеріїв прийняття. Критерії прийняття є достатніми, якщо команда має достатньо впевненості в тому, як почати писати тести на прийняття.
Кілька порад щодо рівня Scrum
Мені було корисно робити розбиття Історій користувачів на підзадачі під час зустрічей із уточненням відставання або принаймні у другій частині зустрічі планування спринту (для деяких команд Sprint Planning 2 зборів).
З недосвідченими командами мені було корисно прагнути до атомних історій користувачів під час уточнення відставання та планування спринту. Атомна історія користувача - це історія користувача, яка не може бути розбита далі на менші історії користувачів, не втрачаючи повністю своєї ділової цінності. Загалом, Історії користувачів не повинні бути Atomic, я просто виявив, що це допомагає мені з недосвідченими командами.
І не робити "(Архітектура | Дизайн | Впровадження | Тест) Feature X" як Історії користувачів. Я рекомендую вам навіть спробувати уникнути цього як підзадачі.
Якщо у мене є атомні історії користувачів, і вони, мабуть, потребують подальшої розбивки, окрім критеріїв прийняття, які будуть реалізовані, для мене це означає, що щось не працює на оптимальному рівні. Або архітектура неправильна / занадто складна, тобто технічна, а не бізнес-орієнтована. Або команда недосвідчена. Або і те й інше. У будь-якому випадку потрібно буде покращити ситуацію шляхом навчання та поширення знань.
Поза Scrum
Майстер Scrum за межами Scrum
Сьогодні Майстра Scrum в основному розуміють як роль менеджера , і це фігня. Спочатку майстер Scrum був, і я виступаю за це, технічну роль , а не управлінську роль, як тренер в XP .
Покладатися на Scrum і Майстра Scrum все занадто просто і, таким чином, потрапляти у величезний розрив, оскільки Scrum майже нічого не говорить про How-World.
Обертовий Scrum Master
В ідеалі Scrum Master обертається серед тих досвідчених розробників, які також володіють достатніми управлінськими та комунікаційними навичками, поки всі в команді не живуть «Огляньте та адаптуйтеся» настільки глибоко напам’ять, що Scrum Master стає зайвим; ніхто і всі одночасно не були б Майстрами Scrum.
Але будьте обережні, Scrum Mastery більше схожий на приготування їжі, а не на прибирання столу та миття посуду. Можливо, ви хочете обертатись, хто прибирає стіл і миє посуд, як це могли зробити всі. Але ви б не хотіли повертати приготування їжі на всіх, тому що є люди, які не вміють готувати або не люблять готувати їжу, і ви хочете їсти гарну їжу.
Хороша річ у повороті Scrum Master між експертними розробниками полягає в тому, що команда швидше дізнається більше методів.
Команда самоорганізації
З точки зору Scrum, команда повинна з’ясувати себе, в ідеалі за допомогою майстра Scrum .
Scrum також просто розмовляє з командою Dev . Ролей на зразок архітектора чи головного інженера в Scrum немає. Це не означає, що вони заборонені, це означає лише, що Scrum про них нічого не говорить. Scrum оголошує команду , що самоорганізовується , а це означає, що якщо команда оголошує архітектора, команда має архітектора. Це не визначено Scrum, але він відповідає Scrum. Я не проголошую відданих архітекторів (я працював призначеним архітектором протягом багатьох років, і хоча мені це подобалося, я принципово проти ідеї призначеного архітектора), просто наводя приклад.
Тести на прийняття
Історії користувачів мають критерії прийняття . Ці критерії приймання перетворюються на тести прийняття
Інші речі
Перелік додаткових матеріалів для розбиття див. У розділі Як розділити проект програмування на завдання для інших розробників?
Сподіваюсь, це допомагає.