Трассировка требований. От хаоса к управляемости
Недавно мне пришлось обсуждать такой вопрос: есть 83 тест-кейса, видимо, уже неактуальных. Как в таком объеме понять откуда они взялись и оценить актуальность?
Чтобы понять как отвечать на такие вопросы, нужно вспомнить, что такое трассировка (traceability). Многие помнят, что это – систематическое отслеживание связей между артефактами. За этим прослеживается груда теории и скучной рутины, но непонятно как это работает. Почему так?
📍Трассировка важна для команды, но не интересна заказчикам. Обычно за этим забывают, что документация будет разрастаться и рано или поздно придется искать ее корни.
📍Часто связывают все подряд артефакты и получается нечитаемый набор непонятных ссылок всего на все. Об этом напишу дальше.
📍Нужна дисциплина в течении продолжительного времени, чтобы увидеть результат. Требуется терпение и время, чтобы найти связанные артефакты, и часто этим шагом пренебрегают. Можно сберечь много часов рутинной работы, если в текущей работе оставить пару ссылок на связанные статьи или задачи. Очень дорого и бесполезно привязывать артефакты друг к другу, когда их уже накопились сотни.
📍Нет системности во всей базе знаний. Если даже вы и связали свой документ с исходной постановкой, описанием целей или реализации, эта информация может не сработать, когда связанное описание получает новую версию как отдельный документ. Просто остается связь с чем-то неактуальным.
В BABOK есть хорошая классификация связей (в новый BAST перекочевало только общее описание). Выбирайте, что важно трассировать именно вам, чтобы не получать сумбурный набор ссылок.
🔅Следование - одно требование является производным от другого. Например, функциональное требование следует из бизнес-требования.
🔅Зависимость – одно требование зависит от другого. Например, невозможно реализовать поиск по списку, если не реализован сам список.
🔅Реализация/удовлетворение - связь между элементом реализации и требованиями, которым он удовлетворяет. Например, связь между функциональным требованием и компонентом решения, реализующим это требование.
🔅Проверка – определяет удовлетворяет ли решение требованию. Например, тест-кейс проверяет удовлетворяет ли решение функциональному требованию.
Как хорошо, что уже давно не нужно делать никаких таблиц с матрицами трассировки! Достаточно оставить ссылку в статье. Главное, сделать это вовремя и по заранее выбранным типам связей 😎
В моих списках полезностей нашлась статья Что такое трассировка требований в проекте и почему она важна? Оставлю здесь ссылку, наверняка и вам пригодится 🌱
#инструменты
Post #264
417
- ❤ 4
- 👍 1