 ระดมสมองสามสาเหตุที่เป็นไปได้ของข้อผิดพลาดที่ไม่คาดคิดในโปรแกรม
 1. รหัสอาจมีจุดบกพร่องที่ไม่ได้ระบุในระหว่างการทดสอบ 2. โปรแกรมอาจมีการเปลี่ยนแปลงโดยไม่มีการตรวจสอบและแก้ไขจุดบกพร่องที่เหมาะสม 3. ข้อมูลที่กำลังประมวลผลอาจมีข้อมูลที่ไม่ถูกต้องหรือล้าสมัย