Techniki programowania defensywnego:
  • Usuwanie z kodu skomplikowanych konstrukcji programistycznych
  • Regularne przeglądy kodu
  • Testowanie oprogramowania
  • Ponowne wykorzystanie istniejącego kodu
  • Usuwanie problemów z kodem spadkowym
  • Zabezpieczenie operacji wejścia/wyjścia
  • Niska tolerancja dla "potencjalnych" błędów
  • Projektowanie oparte o umowę
  • Assercje i wyjątki