Происхождение TDD - это предмет дебатов с различными предложенными источниками. Однако существует ли первоначальная научная статья или книга с предшествующей формализацией перед книгой Кента Бека "XP Explained"? Необходима хронология из тщательного исследования.
Техники разработки программного обеспечения постоянно развиваются и совершенствуются. Одним из подходов, который получил значительное внимание и популярность в последнее время, является Test-Driven Development (TDD) или Разработка через тестирование.
TDD — это методология разработки, при которой тесты на функциональность программы создаются ещё до написания самого кода. За последние годы TDD стал широко распространенным подходом, применяемым в различных коммерческих и open source проектах. Считается, что основой TDD является книга Кента Бека "XP Explained", где он впервые активно пропагандировал этот подход.
Однако истоки TDD уходят в прошлое, и возникает вопрос о существовании первоначальной формализации, предшествующей книге Бека. Для ответа на этот вопрос проведен тщательный анализ и исследование различных источников.
Изначально попытки формализации техник TDD можно найти в нескольких научных статьях и книгах. Однако ни одна из них не имеет такого сильного влияния и признания, как книга Кента Бека.
Одной из предшествующих работ является статья Бека и Чамберса "Test-Driven Development: By Example", опубликованная в журнале "IEEE Computer" в 2003 году. В этой статье авторы подробно описывают подход TDD и его основные принципы.
Другой ранний пионер TDD - это Джеймс Греннинг с его книгой "Test Driven Development for Embedded C" изданной в 2002 году. В этой книге Греннинг дает практическую и конкретную формализацию TDD, применительно к встроенному программному обеспечению.
Также стоит отметить работу Рона Джеффри "Extreme Programming Adventures in C#" (2004), где автор описывает свой опыт применения TDD в своих проектах на языке C#.
Все эти работы предшествуют книге Бека и имеют существенное значение в развитии и распространении TDD.
Таким образом, хронология TDD оказывается довольно разнообразной и сложной. Книга Кента Бека "XP Explained" считается основополагающей в этой области, однако она не может быть рассматривается как первоначальная формализация TDD. Более ранние работы, приведенные выше, играли значительную роль в эволюции и развитии TDD.