Партизанське програмування

Партизанське програмування (cowboy coding) - термін, що застосовується для опису розробки програмного забезпечення, коли розробники працюють автономно. В процесі розробки самостійно визначають спосіб дотримання графіку реалізації проекту, алгоритми, засоби і стиль кодування. Тобто партизанське програмування — це коли якнайшвидше починають писати код, без формалізованого дизайну і без детального плану.

Програміст-партизан може працювати самостійно, або в групі розробників без зовнішнього управління або з керівником, що визначає тільки ті аспекти, які не стосуються безпосередньо розробки — суть проекту, межі проекту, набір функціоналу («що робити», а не «як робити»).

Партизанське програмування не є надто добре для комерційного програмного забезпечення, бо код, що написаний так, щоб тільки працював, спричиняє труднощі в подальшій підтримці. Оглядовий логічний дизайн не завжди враховує, наприклад, ірраціональну поведінку зовнішніх процесів чи сервісів. Мета партизанського програмування — завершити певний функціонал швидко, а не реалізувати функціонал з проробленим дизайном для спрощення подальшої підтримки.

Партизанське програмування може мати позитивний або негативний підтекст, залежно від управлінської ролі того, хто його застосовує або наявності формального процесу розробки програмного забезпечення. Партизанське програмування часто вживають як принизливий термін ті, хто підтримує методології розробки програмного забезпечення.