Xác suất hỏng hóc thường tăng trong các bộ phận hệ thống có nhiều khiếm khuyết hơn. Chúng ta sẽ xem xét một vài nhân tố có thể phát sinh ra những khiếm khuyết này. Các hành động dẫn tới phát sinh lỗi thường liên quan đến việc lập trình, như độ phức tạp, số lỗi tìm thấy trong thời gian kiểm tra hoặc kiểm thử ban đầu và những thay đổi trong khi phát triển. Những vấn đề này sẽ được trình bày rõ trong phần tiếp theo. Trong phần này, chúng ta sẽ trình bày về các hành động phát sinh lỗi do qui trình như đưa vào các phương pháp, các công cụ hoặc công nghệ mới và bao nhiêu kỹ sư phát triển với trình độ như thế nào thì đủ để làm việc trên từng bộ phận của hệ thống. Các lỗi thường được phát sinh khi người ta không tập trung vào việc loại trừ các lỗi do sức ép về thời gian và việc tối ưu hóa việc lập trình.
Những người phát triển có sử dụng các phương pháp mới, các công cụ hoặc công nghệ mới có thể sẽ sinh thêm một số lỗi. Những người này có thể sinh thêm nhiều lỗi hơn khi bắt đầu quá trình, và ít lỗi hơn khi họ học được cách sử dụng công nghệ mới. Sẽ luôn luôn có các rủi ro đối với những ai là
người đầu tiên sử dụng các phương pháp, công cụ hoặc công nghệ mới vì vẫn còn tồn tại những vấn đề chưa phái hiện hết.
Số lượng người tham gia lập trình cũng có thể ảnh hưởng tới chất lượng mã chương trình. Tốt nhất là nên sử dụng một nhóm nhỏ có trình độ cao và lành nghề còn hơn là các nhóm lớn những người không chuyên. Các nhóm lớn những người có trình độ thấp có thể cũng làm được việc với cùng một chi phí nhưng có thể họ sẽ tạo ra nhiều lỗi mà sẽ gây ra sự cố sau này. Các bộ phận của hệ thống do những người không đủ trình độ thực hiện cần phải kiểm thử nhiều hơn. Nhiều công ty giao cho những người tốt nhất của họ xây dựng các bộ phận phức tạp nhất.
Sức ép về thời gian trong khi phát triển có thể sẽ ảnh hưởng đến việc thực thi dự án. Khi không còn nhiều thời gian, những người lập trình chỉ quan tâm đến việc làm cho xong công việc hơn là tránh mắc lỗi và thường bỏ qua việc kiểm soát chất lượng. Làm việc ngoài giờ cũng có thể gây ra sự mất tập trung và có thể sẽ có nhiều lỗi hơn khi viết mã.
Cũng có thể là những cuộc xung đột giữa những người quản lý mà ảnh hưởng số lượng của lỗi. Những người làm chủ chốt có thể bỏ việc. Đây là một vấn đề khó giải quyết nếu họ là những con người chính và duy nhất cho tổ chức.