Một dự án phát triển phần mềm để được triển khai thành công trong thực tế phụ thuộc vào nhiều yếu tố và quy trình khác nhau, trong đó các quy trình Phát triển phần mềm và Quản lý dự án có vai trò quan trọng nhất.
Mặc dù về nguyên tắc, một giám đốc dự án giỏi không nhất thiết phải là chuyên gia hàng đầu về kỹ thuật phát triển phần mềm, tuy nhiên nếu thiếu am hiểu và không có kinh nghiệm về kỹ thuật phát triển phần mềm, sẽ rất khó khăn để quản lý và bảo đảm dự án sẽ đi đến thành công. Vì lý do đó, trong thực tế phần lớn các giám đốc dự án phần mềm thường có “xuất thân” từ các vị trí kỹ thuật, am hiểu về kỹ thuật phát triển phần mềm, cộng với kiến thức, kỹ năng, các tố chất và kinh nghiệm cần thiết để quản trị dự án.
Quy trình phát triển phần mềm
Có nhiều cách định nghĩa các quy trình phần mềm, theo RUP(**), quy trình phát triển phần mềm thông thường bao gồm bốn chặng chính với các mục tiêu được định nghĩa rõ ràng cho mỗi chặng:
• Khởi tạo (Inception): khởi tạo dự án, thiết lập môi trường phát triển dự án; thu thập và phát triển các yêu cầu kỹ thuật của hệ thống và yêu cầu của khách hàng, các tiêu chuẩn.
• Chuẩn bị (Elaboration): thiết kế mức kiến trúc; phân định rõ các thời hạn hoàn thành với các mục tiêu cụ thể.
• Xây dựng (Construction): thiết kế mức chi tiết, thực hiện dự án, viết code, tích hợp, kiểm định phần mềm và chạy thử.
• Chuyển giao (Transition): hoàn thiện và bàn giao sản phẩm; cài đặt hệ thống và huấn luyện cho khách hàng; giải quyết các lỗi và vấn đề kỹ thuật phát sinh.