Тут написаны разные мысли по поводу того, как лучше составлять технические задания toc
Описание ТЗ хорошо начинать с описания того, зачем нужна модификация и какое место она должна занять в системе. Стоит перечислить модификации связанные с данной («похожа на», «зависит от»). Так же нужно указать кому она нужна (если управление требованиеми происходит отдельно, то сослаться на зарегистрированные требования, которые она должна закрывать)
Программистам с разным уровнем подготовки нужна разная степень разжеванности ТЗ.
(Принцип DRY – Don't repeat yourself) Не очень хорошо, когда программисту приходится использовать http://winmerge.sf.net для того, чтобы выяснить, чем один кусок ТЗ отличается от другого.
Например, я встречал ТД на написание отчетов, в котором втречались повторения типа <[
... *Сумма -- сумма по полю стоимость по проводкам, в состоянии "Получено" по выбранному складу в выбранном диапазоне дат *Количество -- сумма по полю количество по проводкам, в состоянии "Получено" по выбранному складу в выбранном диапазоне дат ...
]> Иногда мне кажется, что буфер обмена – довольно вредное приспособление.
Надо называть вещи так, как они называются в системе. Программист может не знать синонимов. Если вам кажется, что готовых терминов не хватает (Например, это уменьшит количество повторений см. «Не стоит повторяться»)
Стоит подумать о том, как модификация будет тестироваться – по крайней мере перечислить случаи на которые нужно обратить внимание. Программист может не знать о каких-то нужных галочках в настройках, переключение которых может привести к неработоспособности модификации
Также как программисты делают это в исходном коде. Сравните: <[ Если разноска складского журнала происходит при полной луне, надо оповестить об этом главного шамана компании, увеличить количество в складском журнале на 10 и выполнить проводку К666 - Д3.1459 в противном случае добавить проводку К666 - Д007 ]> <[ Если разноска складского журнала происходит при полной луне, надо:
в противном случае:
]>
Программист должен понимать, что является требованием а что – Вашим предложением по реализации.
Иногда время жизни технического задания довольно велико: в него вносят массу изменений и дополнений. Некоторые консультанты каждое изменение оформляют отдельным небольшим документом. В результате получается, что для того, чтобы узнать как должна работать система в данный момент, нужно собрать кучу документов, прочитать их в хронологической последовательности и состявить общую картину. Лучше так не делать: