Lý do phổ biến nhất cho thất bại phần mềm là gì?
Một nguyên nhân phổ biến của lỗi phần mềm (thực tế hoặc nhận thức) là thiếu khả năng tương thích với các phần mềm ứng dụng khác, hệ điều hành (hoặc phiên bản hệ điều hành, cũ hoặc mới) hoặc môi trường mục tiêu khác rất nhiều so với bản gốc (như thiết bị đầu cuối hoặc ứng dụng GUI dự định chạy trên máy tính để bàn hiện đang được yêu cầu trở thành ứng dụng web, phải hiển thị trong trình duyệt web). Ví dụ: trong trường hợp thiếu khả năng tương thích ngược, điều này có thể xảy ra do các lập trình viên chỉ phát triển và kiểm tra phần mềm trên phiên bản mới nhất của môi trường mục tiêu, không phải tất cả người dùng đều có thể đang chạy. Điều này dẫn đến hậu quả ngoài ý muốn là công việc mới nhất có thể không hoạt động trên các phiên bản trước của môi trường mục tiêu hoặc trên phần cứng cũ hơn mà các phiên bản trước của môi trường mục tiêu có khả năng sử dụng. Đôi khi các vấn đề như vậy có thể được khắc phục bằng cách chủ động trừu tượng hoá chức năng của hệ điều hành vào một mô-đun hoặc thư viện chương trình riêng biệt.