MÔ HÌNH THÁC NƯỚC

Chia sẻ: huynhlong123

Đây được coi là mô hình thác đổ, hay là mô hình tuyến tính, là một mô hình cổ điển. Mô hình thác nước là mô hình đầu tiên tiếp cận phát triển hệ thống. Nó phổ biến trong thập niên 70 và cho phép cho một số lượng nhất định của thứ thự trong tiến trình .

Nội dung Text: MÔ HÌNH THÁC NƯỚC

MÔ HÌNH THÁC NƯỚC
I. Ý nghĩa mô hình:
II. Các bước thực hiện của mô hình thác nước :
III. Đặc điểm mô hình:
IV. Ưu điểm, nhược điểm của mô hình thác nước:
V. Ví dụ ứng dụng:
I. Ý nghĩa mô hình:
Đây được coi là mô hình thác đổ, hay là mô hình tuyến
tính, là một mô hình cổ điển. Mô hình thác nước là mô hình
đầu tiên tiếp cận phát triển hệ thống. Nó phổ biến trong thập
niên 70 và cho phép cho một số lượng nhất định của thứ thự
trong tiến trình .
- Mô hình này được đưa ra dựa trên nét tương đồng với các
phương thức được sử dụng trong các lĩnh vực ngành kỹ thuật
khác, ví dụ như là ngành xây dựng. Việc xây dựng một chiếc
cầu bắt đầu với việc xác định các công cụ, sau đó là công
thức hoá các nhu cầu để đáp ứng được tiêu chí xây dựng.
Bước tiếp theo là thiết kế cầu. Giai đoạn kế tiếp là xây dựng
và thẩm định. Công đoạn cuối cùng là bảo vệ cả hệ thống
công trình đó.
II. Các bước thực hiện của mô hình thác nước :
1.Khảo sát hiện trạng:
- Hoạt động này đề cập đến sự quan tâm của tất cả những
khía cạnh của hàm kinh doanh mục tiêu hoặc tiến trình, với
những mục tiêu xác định làm thế nào mỗi khía cạnh liên quan
đến một cái khác và khía cạnh này sẽ kết hợp vào trong hệ
thống.
- Đây là giai đoạn đầu tiên nhất trong quá trình phát triển
phần mềm, nó cho biết hiện trạng bài toán như thế nào. Ví
như hiện trạng về mô hình tổ chức, hiện trạng về các nghiệp
vụ
2.Xác định yêu cầu:
- Có 2 loại yêu cầu là yêu cầu chức năng và yêu cầu phi chức
năng.
- Trong giai đoạn này là giai đoạn sống còn, vì yêu cầu là rất
khó biết. Vì vậy việc xác định yêu cầu đúng là rất quan trọng
trong suốt quá trình làm phần mềm.
- Mục tiêu của giai đoạn thu thập yêu cầu là xác định phần
mềm sẽ làm được những gì dựa trên các nhu cầu của khách
hàng.
3.Phân tích:
- Phân tích hệ thống (System Analysis) : bước này đề cập đến
những yêu cầu hệ thống tập hợp với nhau, với mục tiêu của
việc xác định làm thế nào những yêu cầu này sẽ được tích
hợp vào trong hệ thống. Mở rộng giao tiếp giữa khách hàng
và nhóm phát triển là cần thiết.
- Trong giai đoạn này chúng ta sẽ phân tích các yêu cầu, và mô
hình hóa chúng, kết quả của quá trình này là cho ra một sơ đồ
lớp đối tượng trong chương trình chúng ta.
4.Thiết kế:
Thiết kế hệ thống (System Design) : Mỗi lần yêu cầu được
thu thập và phân tích, cần thiết phải xác định chi tiết làm thế
nào hệ thống được xây dựng để thực hiện những công việc
theo yêu cầu ( những gì được xử lý bởi hệ thống ), xây dựng
phần mềm ( làm thế nào ứng dụng được xây dựng ) và thiết
kế giao diện và viết mã ( giao diện người dùng như thế nào
và đưa mã lệnh để xử lí ra sao ? ).
- Giai đoạn này chúng ta sẽ thiết kế các thuật toán, và thiết
kế mô hình dữ liệu, cho ra một mô hình lớp và dữ liệu ở mức
chi tiết.
5.Cài đặt:
Mã hóa : được biết là việc lập trình, bước này liên quan với
việc tạo phần mềm hệ thống.Yêu cầu và xác định hệ thống
là chuyển sang mã máy.Phần này chúng ta sẽ chính thức bắt
tay vào code.
-Giai đoạn lập trình hay coding tập trung vào việc phát triển
chương trình máy tính trên cơ sở thiết kế (đã có). Ngày nay,
điểm tập trung chính của nhiều chương trình đào tạo là lập
trình, và sinh viên bỏ ra nhiều năm để học lập trình và kiểm
thử. Đây là chỗ có thể thấy rõ nhất sự khác biệt giữa việc lập
trình và Kỹ nghệ Phần mềm
6.Kiểm chứng:
Kiểm thử : Khi phần mềm được tạo ra và thêm vào sự phát
triển của hệ thống, kiểm thử được thực hiện để đảm bảo
rằng nó làm việc hoàn toàn chính xác và hiệu quả. Kiểm thử
tập trung vào hai lĩnh vực, hiệu quả bên trong và ảnh hưởng
bên ngoài
-Mục tiêu của hiệu quả bên ngoài kiểm thử là chắc chắn
rằng phần mềm là đúng chức năng theo thiết kế hệ thống và
đó là thực hiện tất cả những chức năng được yêu cầu.
- Mục tiêu của kiểm thử bên trong là đảm bảo rằng mã máy
là hiệu quả, tiêu chuẩn và làm tài liệu tốt. Mô hình này còn
tương đối phổ biến. Tuy nhiên, hoàn toàn ít khi một dự án
phần mềm sẽ theo những bước chính xác
-Giai đoạn kiểm thử là quá trình kiểm tra sản phẩm phần
mềm để tìm kiếm lỗi. Quy trình kiểm thử phần mềm thường
được chia ra thành nhiều loại, bắt đầu bằng hình thức kiểm
thử đơn vị chương trình (unit test) được phát triển bởi từng
người. Loại kiểm thử tiếp theo là kiểm thử tích hợp
(integration test) khi các đơn vị chương trình được tích hợp lại
thành một chức năng hay nhiều chức năng trước khi kiểm thử
toàn bộ hệ thống (system test) của cả sản phẩm
III. Đặc điểm mô hình:
- Mô hình thác nước có thể được cải tiến bằng cách cho phép
quay lui khi phát hiện lỗi trong giai đoạn phía trước.
- Có ý kiến cho rằng không có một dự án thực tế nào lại thực
hiện dạng mô hình này mặt khác thì lại có các ý kiến trái
ngược, rằng hầu hết các dự án đều tiến hành theo mô hình
thác đổ. Sự trái ngược đó là kết quả của sự khác nhau trong
cách nhìn nhận, đánh giá mô hình này.
- Cách nhìn chặt chẽ coi các buớc như các giai đoạn trong khi
thực hiện phần mềm, tiếp theo nhau và không có vòng lặp.
- Cách nhìn tổng quát coi các bước chỉ có tính khái niệm, cho
phép chúng chồng nhau, cho phép vòng lặp - quay lại các
bước trước
IV. Ưu điểm, nhược điểm của mô hình thác nước:
Ưu điểm:
Có thể dễ dàng phân chia quá trình xây dựng phần mềm
thành những giai đoạn hoàn toàn độc lập nhau.
Các đòi hỏi dài của hệ thống được nhận biết dài, phân tích
trứơc khi hệ thống bắt đầu.
- Thay đổi yêu cầu được giảm tới độ tối thiểu khi dự án bắt
đầu
- Chuỗi các hoạt động được thực hiện theo quy trình rõ ràng
- Dể quản lí.
- Ước lượng thời gian và chi phí rất chính xác.
- Các pha được xác định rỏ ràng.
- Thấy được trình tự kỹ nghệ từ đầu đến cuối sản phẩm.
- Thích hợp khi yêu cầu tìm hiểu tốt
Nhược điểm:
- Luôn luôn nghĩ sẽ là hoàn hảo ngay từ đầu.
- Hệ thống phải kết thúc ở từng giai đoạn (có khi dài) do đó
nó khó có thể thực hiện đầy đủ các yêu cầu của khách hàng.
- Mối quan hệ giữa các giai đoạn không được thể hiện.
- Thiết kế phải rõ ràng khi dự án bắt đầu.
- Không thấy đuợc sự tiến hoá của sản phẩm.
- Rủi ro cao, không thể quay lại.
- Không thể phát triển sau khi phát hành sản phẩm.
- Khó đáp ứng đựơc các yêu cầu của khách hàng. Sản phẩm
đựơc hình thành ở giai đoạn cuối của sản phẩm.
- Đa số những phần mềm ẩn chứa những nhược điểm không
ít thì nhiều.
- Người sử dụng không có cơ hội tham gia vào dự án trong
suốt quá trình thực hiện dự án. Đặc biệt là dự án lớn. Họ chỉ
thấy vào thời điểm cuối.
- Đòi hỏi khách hàng đưa ra yêu cầu chính xác ngay từ đầu.
- Sai sót phát hiện muộn có thể là hiểm họa.
- Chậm có phiên bản thực hiện được
• V. Ví dụ ứng dụng:
Đề thi vào lớp 10 môn Toán |  Đáp án đề thi tốt nghiệp |  Đề thi Đại học |  Đề thi thử đại học môn Hóa |  Mẫu đơn xin việc |  Bài tiểu luận mẫu |  Ôn thi cao học 2014 |  Nghiên cứu khoa học |  Lập kế hoạch kinh doanh |  Bảng cân đối kế toán |  Đề thi chứng chỉ Tin học |  Tư tưởng Hồ Chí Minh |  Đề thi chứng chỉ Tiếng anh
Theo dõi chúng tôi
Đồng bộ tài khoản