Погледнах в мрежата и изглежда, че дискусиите/примерите са за традиционна разработка на софтуер. Тъй като Verilog и VHDL (използвани за проектиране на чипове, напр. FPGA и ASIC) са подобни на разработката на софтуер C и C++, изглежда, че има смисъл. Те обаче имат някои разлики, тъй като са фундаментално паралелни и изискват хардуер за пълно тестване.
Какви преживявания, добри и лоши, сте имали? Някакви връзки, които можете да предложите за това конкретно приложение?
Редакции/разяснения: 28.10.09: Питам специално за TDD. Запознат съм с правенето на тестови стендове, включително такива за самопроверка. Също така знам, че SystemVerilog има някои специфични функции за тестови стендове.
28.10.09 г.: Подразбиращите се въпроси включват 1) писане на тест за каквато и да е функционалност, без никога използване на вълнови форми за симулация и 2) първо писане на тестове/тестове.
11/29/09: В Емпирични проучвания показват, че разработката, насочена към тестове, подобрява качеството те докладват за (софтуер) TDD „Плътността на дефектите преди пускането на четирите продукта, измерена като дефекти на хиляда реда код, намалява между 40% и 90% спрямо проектите, които не използват TDD. ръководството докладва субективно 15–35% увеличение на първоначалното време за разработка за екипите, използващи TDD, въпреки че екипите се съгласиха, че това се компенсира от намалените разходи за поддръжка. Намалените бъгове намаляват риска от прекъсване на лентата, за сметка на умереното въздействие върху графика. Това също има някои данни.
29.11.09: Правя основно код за управление и път на данни, а не DSP код. За DSP типичното решение включва симулация с битова точност на Matlab.
03/02/10: Предимството на TDD е, че първо се уверявате, че тестът е неуспешен. Предполагам, че това може да се направи и с твърдения.