Khái niệm: Thiết kế phần mềm được định nghĩa trong bao gồm: Quá trình xác định kiến trúc, các thành phần, giao diện và các đặc tính kỹ thuật của hệ thống hoặc thành phần . Thiết kế phần mềm sẽ là cơ sỏ cho giai đoạn tiếp theo là xây dựng phần mềm. Thiết kế phần mềm đóng vai trò quan trọng trong phát triển phần mềm: • Cho phép xem xét, so sánh các phương án kỹ thuật khác nhau trong thiết kế phần mềm • Cho phép xác định phương án phù hợp nhất với các.