Chủ Nhật, 26 tháng 12, 2010

Trình bày quy trình phát triển phần mềm theo mô hình thác nước? Ưu nhược điểm của mô hình này là gì?

Mô hình thác nước hay còn gọi là mô hình vòng đời truyền thống do Royce đề xuất năm 1970. Nó yêu cầu tiếp cận một cách hệ thống, tuần tự và chặt chẽ đối với việc phát triển phần mềm.


Môn hình thác nước của tiến trình phần mềm.
Quy trình phát triển:
Kỹ nghệ thệ thống:
Bao gồm việc thu thập yêu cầu ở mức hệ thống với một lượng nhỏ thiết kế và phân tích ở mức đỉnh.
Phân tích (analysis)
Trước hết việc phân tích yêu cầu được tập trung vào việc thu thập và phân tích các thông tin cần cho phần mềm, các chức năng phần mềm cần phải thực hiện, hiệu năng cần có của mỗi chức năng, các giao diện cho người sử dụng, các ràng buộc mà phần mềm cần tuân thủ khi nó được phát triển và hoạt động. Sau đó, lập tư liệu về yêu cầu cho hệ thống và phần mềm để khách hàng duyệt lại.
Thiết kế (design)
Thiết kế là quá trình chuyển hóa các yêu cầu phần mềm thành các mô tả thiết kế.
Thiết kế chia làm 2 giai đoạn là: thiết kế logic và thiết kế vật lý. Thiết kế tập trung vào 4 bước chính sau: thiết kế kiến trúc, thiết kế dữ liệu, thiết kế các thủ tục và thiết kế các giao diện.
Mã hóa (coding)
Mã hóa là dịch các đặc tả thiết kế thành các chương trình mã nguồn trong một ngôn ngữ lập trình nào đó mà máy có thể thực hiện được.
Kiểm thử (testing)
Khi đã có chương trình mã nguồn ,việc kiểm thử bắt đầu.Tiến trình kiểm thử tập trung vào phát hiện và sửa lỗi trong trương trình.
Bảo trì (maintenance)
Phần mềm cần phải hoàn thiện trước khi nó được giao cho khách hàng .Đó là việc kiểm tra va sửa lỗi khi đưa chương trình vào sử dụng, việc thích ứng nó với thay đổi của môi trường bên ngoài hoặc bổ sung chức năng hay nâng cao hiệu năng cần có khi khách hàng yêu cầu. Việc bảo trì có thể áp dụng lại các bướ của vòng đời phát triển cho hệ chương trình hiện có khi có nhu cầu tiếp tục phát triển.
Ưu nhược điểm
Vòng đời cổ điển là mô hình có sớm nhất và được sử dụng rộng rãi nhất.Nó đưa ra các phương pháp khoa học, các bước tổng quát áp dụng được cho nhiều mô hình.Nó tốt hơn nhiều lần cách tiếp cận tự nhiên.Tuy nhiên,các dự án phần mềm thực tế hiếm khi tuân theo trình tự tuần tự.Quá trình lặp lại thì dễ gặp bất trắc,mà lặp lại thì khó quản lý được tiến độ và không đáp ứng được nhu cầu của khách hàng.Mặt khác, khách hàng phải kiên nhẫn tới cuối dự án mới có chương trình làm việc được. Thời gian thực hiện dự án theo mô hình này thường dài, các tài liệu đặc tả rất lớn. Nếu chương trình gặp lỗi khi kết thúc mới phát hiện ra thì có thể sẽ là một thảm họa.

Không có nhận xét nào:

Đăng nhận xét