Sự phức tạp của phần mềm là tài sản cần thiết, không một ai tình cờ. Do đó mô tả của một phần mềm thực thể trừu tượng đi phức tạp của nó thường là trừu tượng đi bản chất của nó. Toán học và khoa học vật lý có những bước tiến lớn cho ba thế kỷ bằng cách xây dựng các mô hình đơn giản của hiện tượng phức tạp, xuất phát từ tính chất các mô hình, và xác minh những đặc tính thực nghiệm. Điều này làm việc vì sự phức tạp bỏ qua trong các mô hình không phải là những đặc tính thiết yếu của các hiện tượng. Nó không hoạt động khi sự phức tạp là bản chất.
Nhiều người trong số các vấn đề cổ điển của phát triển sản phẩm phần mềm có nguồn gốc từ này
phức tạp cần thiết và phi tuyến của nó tăng lên với kích thước. Từ sự phức tạp đến
khó khăn trong việc giao tiếp giữa các thành viên trong nhóm, dẫn đến sai sót của sản phẩm, chi phí
vượt, chậm trễ tiến độ. Từ sự phức tạp đến khó khăn trong việc liệt kê,
sự hiểu biết ít nhiều, tất cả các trạng thái có thể có của các chương trình, và từ đó đến sự
không đáng tin cậy. Từ sự phức tạp của các chức năng đi kèm những khó khăn của cách gọi những
chức năng, mà làm cho chương trình khó sử dụng. Từ phức tạp của cấu trúc đến các
khó khăn trong việc mở rộng chương trình đến các chức năng mới mà không tạo ra tác dụng phụ. Từ
phức tạp của cấu trúc đi kèm tình trạng unvisualized đó mà tạo an ninh
đang được dịch, vui lòng đợi..
