• Phức tạp: không giống như bất kỳ miền nào khác. Trong phần mềm phát triển là hoàn toàn không có sự tương đồng với các bộ phận. Hệ thống phần mềm sẽ cố gắng lớn hơn số tiền rất lớn của nhà nước "Brooks tuyên bố họ có một thứ tự cường độ kỳ nhiều hơn so với máy tính (tức là phần cứng)". Ngoài ra, khi kích thước của một hệ thống gia tăng, số lượng và loại của các bộ phận tăng. Các vấn đề kết quả với độ phức tạp là: khó khăn trong việc giao tiếp của thiết kế với các thành viên trong nhóm, làm cho chương trình khó khăn để sử dụng, làm cho chương trình khó có thể được thay đổi, sản phẩm lỗi, chi phí nghiêm, lịch sự chậm trễ.• Sự phù hợp: các phần mềm phải phù hợp với bên ngoài cứng (ví dụ: phần cứng cụ thể, quy định, kế thừa hệ thống và dữ liệu) mà làm cho nó rất khó khăn để làm giảm sự phức tạp. Những phẩm chất ngẫu nhiên là tất cả về việc triển khai và kiểm tra, và những đã được giải quyết gần như cũng như họ có khả năng được giải quyết, vì vậy đừng mong đợi nhiều hơn nữa đột phá. • Changeability: phần mềm phải thay đổi theo các thực tiễn và nhu cầu của người dùng, thêm vào đó các nhà thiết kế luôn luôn phải đối mặt với các chức năng liên tục thay đổi vì thay đổi phần cứng, phần cứng thay đổi theo sự phát triển của công nghệ. Với phần mềm, áp lực để thay đổi là lớn hơn• Tàng hình: không thể nhìn thấy nó tất cả cùng một lúc như là một phần vật chất của một cái gì đó. Nó cũng là rất khó khăn thậm chí để tưởng tượng vì có rất nhiều cách để nhìn vào cùng một thiết kế
đang được dịch, vui lòng đợi..
