У мене є два питання із Scrum у вбудованих системах. По-перше, необхідно виконати багато завдань, особливо на ранніх етапах, які неможливо продемонструвати. Ми почали з плати розробки, без ОС, без дисплея, без послідовного зв’язку тощо. У нас не було екрану для шести спринтів.
Першими чотирма спринтами були:
- Початок роботи RTOS та роботи
- Створення завдань написання мережевих та послідовних драйверів
- Написання процедур переривання для кнопок, зв’язку тощо.
- Написання основних класів та методів бази даних
- Написання послідовного меню налагодження
Більшість із цих завдань не дуже підходять для розповідей користувачів. Насправді єдиним інтерфейсом у всій системі було серійне меню налагодження, вбудоване в спринті 3, тому в кінці спринтів не було що демонструвати. Навіть серійне меню призначене для внутрішнього використання, а не для кінцевого споживача. Тим не менш, я все ще хочу відстежувати та керувати цією розробкою через Scrum.
Ми закінчили писати фрази "Історії користувачів" на кшталт "Як розробник ...", якими я не задоволений, але у використанні цільового процесу (www.targetprocess.com) немає поняття про затримку, яке є завдання чи завдання.
По-друге, як ви обробляєте випуски та тестування? Для нас це справжній біль, тому що у тестувальників немає апаратних налагоджувальних приладів, тому для тестування нам потрібно створити флеш-версії коду та записати їх на дошках розробки. Тестери технічно не такі гострі, як розробники, і часто потребують великої підтримки в роботі над початковими етапами (скидання плати, підключення послідовного зв'язку тощо) або навіть у розумінні результатів.
Нарешті, що стосується визначення зробленого, спринт не може бути завершеним, поки всі історії не будуть завершені. Усі історії не завершені, доки їх не перевірять тестери. Немає способу уникнути "пограбування" часу розробника, щоб віддати тестерам. Іншими словами, якщо для останніх трьох історій користувача у спринті знадобиться п’ять днів для перевірки, вони повинні бути закодовані та одиничні випробування за п’ять днів до закінчення спринту. Що повинен робити розробник? Перестати працювати?
Я пильную, але це справжня проблема, намагаючись відповідати правилам. Тепер я впорядковую згинання правил, але проблема в мене полягає в тому, що він розкручує всі мої показники обтяження, якщо я не можу відзначити зроблені речі, поки вони не будуть перевірені.
Я хотів би почути, як інші вирішили ці ситуації.