За кофе

Цикл разработки ПО



Типичный цикл разработки программного обеспечения:
  1. Программист разрабатывает код и считает, что в нем нет ошибок.
  2. Программный продукт тестируется и в коде обнаруживается 20 ошибок.
  3. Программист исправляет 10 ошибок и объясняет тестировщику, что остальные 10 ошибок не являются таковыми и связаны с неполадками в оборудовании.
  4. Тестировщик проверяет 10 исправлений - половина из них не устраняет проблем. Попутно обнаруживается еще 15 новых ошибок.
  5. Три раза повторяется цикл по пунктам 3 и 4.
  6.  Учитывая давление со стороны отдела продаж и уже успешно закончившуюся рекламную компанию, решено выпустить программный продукт без исправления всех оставшихся ошибок.
  7. Пользователи находят 137 новых ошибок и сообщают о них в компанию.
  8. Первый программист уже потерял всякое доверие руководства и скрылся в неизвестном направлении.
  9. Вновь нанятый программист устраняет почти все 137 ошибок, но попутно находит в коде еще 456 новых.
  10. Первый программист по старой дружбе сообщает тестировщику о неправильно выбранной архитектуре программного обеспечения. Тестировщик срочно увольняется из компании.
  11.  Компанию приобретает конкурент, потратив на это все доходы от выпуска предыдущей версии ПО, в которой по неофициальным данным было 783 ошибок.
  12. В компании появляется новый управляющий, который нанимает еще одного программиста, чтобы заново переписать программу "с нуля".
  13. Программист разрабатывает код и считает, что в нем нет ошибок.
Цикл замыкается и все повторяется снова и снова.


Disclaimer: этот материал настолько широко разошелся в сети, что установить его автора очень тяжело. Однако, если кто-либо предъявит авторские права на этот текст, я с удовольствием восстановлю справедливость, разместив на него ссылку или выполнив другие его требования, вплоть до удаления этого текста с сайта.