You are on page 1of 11

Bài tập lớn môn Công Nghệ Phần Mềm

Nhóm lớp: 5

Họ và Tên Mã sinh viên Nội dung công việc được phân

Nguyễn Trung Đức B20DCVT123 Waterfall Model,Spiral model


Thuyết trìnhB1
Tạ Xuân Hùng B20DCVT179 Agile model & Scrum Process
V-shaped
Nguyễn Duy Thắng B20DCVT371 PowerPoint
Evolutionary Model
Nguyễn Hữu Tùng B20DCVT347 Interative and incremental
Prototype
Trần Anh Tuấn B20DCVT339 RAD
Powerpoint
Nguyễn Xuân Huy B20DCVT187 Thuyết trình B2
I.Mô hình thác nước (Waterfall Model):

1.Yêu cầu của Waterfall Model:

- Hướng đến việc hoàn thành các giai đoạn một cách tuần tự và phải hoàn thành toàn bộ giai
đoạn trước khi tiến hành giai đoạn kế tiếp.

- Được sử dụng cho các dự án có nhu cầu xác định rõ ràng các yêu cầu và thông tin dự án từ
đầu để đưa ra kế hoạch phù hợp.

2.Tương tác khách hàng:

- Không có sự tương tác trực tiếp giữa khách hàng và nhà phát triển trong suốt quá trình thực
hiện dự án.

- Chỉ thực hiện giao tiếp với khách hàng trong giai đoạn yêu cầu và phê duyệt kế hoạch.

3.Quy mô dự án:

- Thường được ứng dụng trong các dự án lớn, phức tạp và có nhiều các công đoạn cần thiết.

4.Ưu điểm của Waterfall Model:

- Dễ dàng áp dụng và hiểu.

- Hỗ trợ cho việc quản lí dự án một cách chặt chẽ và có tính đồng nhất.

- Tối thiểu hóa sự rủi ro trong quá trình thực hiện dự án.

5.Nhược điểm của Waterfall Model:


- Không linh hoạt trong việc thay đổi yêu cầu dự án.

- Rủi ro cao khi việc phát hiện sai sót được thực hiện ở giai đoạn muộn trong quá trình thực
hiện dự án.

- Chậm tiến độ trong khi chờ đợi tất cả các giai đoạn hoàn thành.

II.Mô hình hình chữ V (V-Shaped Model):

1.Yêu cầu:

Các yêu cầu của sản phẩm được phân tích trong giai đoạn này và được chuyển đến các nhóm
phát triển sản phẩm để thiết kế các giải pháp và phát triển sản phẩm.

2.Tương tác khách hàng:

Khách hàng sẽ được liên lạc thường xuyên để xác nhận rằng sản phẩm đang được phát triển
đúng theo yêu cầu của họ.

3.Quy mô dự án:

V-Shaped Model có thể được áp dụng cho các dự án bất kỳ bất kể kích thước. Nó thường
được sử dụng cho các dự án lớn và phức tạp.

4.Ưu điểm:

-Cải thiện chất lượng sản phẩm: V-Shaped Model đảm bảo rằng các bài kiểm tra được thực
hiện sau khi điều phối với các bước xác nhận càng sớm càng tốt. Điều này giúp cải thiện
chất lượng sản phẩm và giảm thiểu chi phí sửa chữa sau này.

- Cải thiện việc quản lý dự án: Phương pháp V-Shaped dễ quản lý và giúp cho việc quản lý
dự án được tốt hơn.

- Tăng khả năng kiểm soát: V-Shaped giúp tìm và loại bỏ các lỗi sớm hơn trong quá trình
phát triển, dẫn đến việc tăng khả năng kiểm soát và đảm bảo sự thành công của sản phẩm.
5.Nhược điểm:

- Khó khăn trong việc thay đổi: Khi một sự thay đổi được thực hiện trong các yêu cầu của
khách hàng, quá trình phát triển của dự án có thể mất nhiều thời gian để điều hòa và sửa
chữa.

- Yêu cầu kỹ năng chuyên môn cao: Với cách tiếp cận phân tích kỹ thuật chi tiết, phương
pháp V-Shaped yêu cầu các nhân viên phải có kỹ năng chuyên môn đáng kể và kinh nghiệm
trong công việc của họ để sử dụng hiệu quả.

III.Mô hình tiến hóa (Evolutionary Model):


1.Yêu cầu của Evolutionary Model:

- Phần mềm được phát triển theo từng giai đoạn, mỗi giai đoạn cần được phê duyệt trước khi
tiếp tục sang giai đoạn kế tiếp.
- Các yêu cầu được định nghĩa rõ ràng ở từng giai đoạn, giúp đảm bảo tính chính xác và đủ
đầy của sản phẩm.
- Phân tích, thiết kế và triển khai được thực hiện song song và lặp đi lặp lại nhiều lần.
- Có khả năng điều chỉnh, sửa đổi các yêu cầu hoặc thiết kế trong quá trình phát triển.

2.Tương tác với khách hàng:

- Khách hàng được đưa vào quá trình phát triển bằng cách góp ý, phản hồi trong từng giai
đoạn để sản phẩm đáp ứng được nhu cầu thực tế của họ.
- Quá trình thiết kế và triển khai được phân chia thành nhiều giai đoạn, đảm bảo tính linh
hoạt và tối ưu hóa sản phẩm.

3.Quy mô dự án:
- Phù hợp cho các dự án phát triển phần mềm có tính chất phức tạp, lớn và dài hạn.
- Đội ngũ phát triển phần mềm được phân chia thành nhiều nhóm, mỗi nhóm chịu trách
nhiệm cho từng giai đoạn.

4.Ưu điểm của Evolutionary Model:

- Giúp khách hàng có thể sử dụng sản phẩm sớm nhất vì phần mềm được phát triển theo giai
đoạn.
- Có khả năng sửa đổi, điều chỉnh sản phẩm theo nhu cầu của khách hàng.
- Giúp giảm thiểu rủi ro và chi phí.

5.Nhược điểm của Evolutionary Model:

- Đối với những dự án có qui mô nhỏ và đơn giản, việc phân chia quá nhiều giai đoạn sẽ làm
tốn thời gian và tài nguyên.
- Cần sự tính toán kỹ càng để phẩn định các giai đoạn phù hợp cho dự án, đảm bảo tính
chính xác và đủ đầy của sản phẩm.

IV. Mô hình lặp lại và tăng dần (Iterative and Incremental Model):

1.Yêu cầu:

Mô hình Iterative and Incremental tập trung vào việc phát triển và cải tiến phần mềm qua
các chu kỳ lặp lại và các bước phát triển tăng dần. Việc đảm bảo yêu cầu phần mềm đúng và
hoạt động đúng là rất quan trọng trong mô hình này. Trong quá trình phát triển, các yêu cầu
phần mềm được liên tục kiểm tra và đánh giá để đảm bảo tính đúng đắn và đáp ứng nhu cầu
của khách hàng.

2.Tương tác với khách hàng:

Mô hình Iterative and Incremental yêu cầu tương tác chặt chẽ và liên tục với khách hàng.
Khách hàng sẽ tham gia vào quá trình phát triển phần mềm bằng cách đưa ra phản hồi về các
sản phẩm phần mềm tạm thời và đóng góp ý kiến để đảm bảo tính chính xác và hoạt động
đúng đắn của sản phẩm phần mềm.

3.Quy mô dự án:

Mô hình Iterative and Incremental phù hợp với các dự án phần mềm có quy mô trung bình
đến lớn. Mô hình này cho phép phát triển phần mềm một cách đáp ứng nhu cầu và có thể
được áp dụng trên các dự án phần mềm phức tạp hơn.

4.Ưu điểm:

Phù hợp với các dự án có yêu cầu thay đổi thường xuyên

Tương tác với khách hàng nhiều hơn so với mô hình thác nước và hình chữ V

Có khả năng tùy biến và mở rộng sản phẩm sau khi hoàn thành

5.Nhược điểm:

Đòi hỏi chi phí và thời gian phát triển cao hơn so với mô hình thác nước và hình chữ V

Cần có quản lý dự án

V. Mô hình xoắn ốc (Spiral Model):

1.Yêu cầu của Spiral Model:

- Phải có khả năng tinh chỉnh và thay đổi để đáp ứng nhu cầu thay đổi của khách hàng.

- Phải có khả năng quản lý rủi ro để giảm thiểu tác động tiêu cực của những rủi ro đó.

- Phải có khả năng kiểm soát chi phí và tiến độ để đảm bảo rằng dự án được hoàn thành
đúng thời hạn và trong ngân sách.
2.Tương tác khách hàng của Spiral Model:

- Spiral Model thường tương tác chặt chẽ với khách hàng để đảm bảo rằng họ luôn được cập
nhật về tiến trình của dự án và có thể đưa ra phản hồi nhanh chóng.

- Do tính linh hoạt của mô hình này, khách hàng có thể thay đổi yêu cầu của mình mà không
có ảnh hưởng đến tiến độ của dự án.

3.Quy mô dự án của Spiral Model:

- Spiral Model phù hợp cho dự án lớn và phức tạp.

- Nó được sử dụng trong các dự án phần mềm nghiêm túc, đòi hỏi sự phân tích cẩn thận và
việc phát triển theo từng giai đoạn.

4.Ưu điểm của Spiral Model:

- Spiral Model cung cấp tính linh hoạt và cho phép thay đổi nhu cầu trong suốt quá trình
phát triển.

- Nó giúp quản lý rủi ro hiệu quả bằng cách đưa ra phương pháp đề xuất để giảm thiểu tác
động tiêu cực của những rủi ro này.

- Nó cho phép kiểm soát tiến độ và chi phí của dự án.

5.Nhược điểm của Spiral Model:

- Spiral Model yêu cầu sự phân tích và lập kế hoạch tỉ mỉ, nếu không, dự án có thể rơi vào
tình trạng không kiểm soát được.
- Nó có thể dẫn đến việc phát sinh các vấn đề phức tạp nếu việc phân tích rủi ro chưa được
thực hiện đầy đủ hoặc có sự đánh giá không đúng từ những người tham gia.

VI. Mô hình nguyên mẫu (Prototype Model):

1.Yêu cầu:

Mô hình Prototype tập trung vào việc xây dựng một phiên bản nguyên mẫu ban đầu của
phần mềm để đánh giá và kiểm chứng các yêu cầu của khách hàng. Với mô hình này, các
yêu cầu được xác định và cải tiến dựa trên phản hồi của khách hàng và kiểm tra từ các phiên
bản nguyên mẫu.

2.Tương tác với khách hàng:

Mô hình Prototype đặt nặng vào việc tương tác với khách hàng để xác định các yêu cầu và
đánh giá tính khả thi của các tính năng trong phần mềm. Khách hàng thường có thể yêu cầu
thay đổi trong suốt quá trình phát triển và có thể cung cấp phản hồi liên tục về các phiên bản
nguyên mẫu để đảm bảo rằng sản phẩm đáp ứng nhu cầu của họ.

3.Quy mô dự án:

Mô hình Prototype thích hợp cho các dự án có quy mô nhỏ đến trung bình và có tính phức
tạp cao. Nó cho phép các phần mềm có thể được phát triển một cách nhanh chóng và hiệu
quả bằng cách giảm thiểu các yêu cầu về tài nguyên và thời gian so với các mô hình khác.

4.Ưu điểm:

Giúp khách hàng và nhà phát triển có thể hiểu rõ hơn về sản phẩm sẽ trông như thế nào

Có khả năng đưa ra phản hồi nhanh khi có yêu cầu thay đổi từ khách hàng

Cho phép tùy biến và mở rộng sản phẩm sau khi hoàn thành

5.Nhược điểm:

Đòi hỏi chi phí và thời gian phát triển cao hơn so với mô hình thác nước và hình chữ V

Khó khăn trong việc kiểm soát và quản lý sản phẩm khi có nhiều nguyên mẫu.
VII. Mô hình Agile và Quy trình Scrum (Agile Model & Scrum Process):

1.Yêu cầu:

Mô hình Agile và quy trình Scrum tập trung vào việc phát triển phần mềm theo từng chu kỳ
ngắn gọn (sprint) và đưa ra các phiên bản (increment) nhỏ và hoàn thiện từng bước một. Tuy
nhiên, việc xác định yêu cầu phần mềm vẫn là một yếu tố quan trọng trong mô hình này.
Yêu cầu được định nghĩa một cách linh hoạt và có thể được điều chỉnh dựa trên phản hồi
liên tục từ khách hàng.

2.Tương tác với khách hàng:

Mô hình Agile và quy trình Scrum đặt nặng vào việc tương tác với khách hàng trong quá
trình phát triển phần mềm. Việc này được thực hiện thông qua việc thường xuyên giao tiếp
với khách hàng, đưa ra các phiên bản hoàn thiện nhỏ, được kiểm thử và đánh giá bởi khách
hàng để đưa ra phản hồi và đề xuất thay đổi. Điều này giúp đảm bảo tính chất đáp ứng yêu
cầu của phần mềm và giảm thiểu các sai sót và sự thất bại do không đáp ứng đúng yêu cầu
của khách hàng.

3.Quy mô dự án:

Mô hình Agile và quy trình Scrum có thể được áp dụng cho các dự án có quy mô khác nhau,
từ các dự án nhỏ đến các dự án lớn. Nó đặc biệt phù hợp với các dự án phần mềm có tính
linh hoạt cao và đòi hỏi sự thay đổi liên tục trong quá trình phát triển. Tuy nhiên, nó yêu cầu
một nhóm phát triển phần mềm có tính tổ chức cao và sự chuyên nghiệp trong việc sử dụng
các phương pháp Agile và Scrum.

4.Ưu điểm:

Tương tác với khách hàng nhiều hơn so với các mô hình khác

Có khả năng đưa ra phản hồi nhanh khi có yêu cầu thay đổi từ khách hàng

Có khả năng tùy biến và mở rộng sản phẩm sau khi hoàn thành
5.Nhược điểm:

Đòi hỏi đội ngũ phát triển có kỹ năng và kinh nghiệm cao

Cần có quản lý dự án chuyên nghiệp để có thể thực hiện mô hình này

VIII. Mô hình phát triển nhanh (Rapid Application Development):

1. Yêu cầu:

- Model phát triển ứng dụng nhanh (RAD) là một phương pháp phát triển phần mềm tập
trung vào việc nhanh chóng phát triển và triển khai các ứng dụng cho khách hàng.

- Yêu cầu của phương pháp này là phải có một đội ngũ phát triển ứng dụng và khách hàng
có thể tương tác với nhau thường xuyên để đưa ra các yêu cầu cụ thể, kiểm tra tiến độ và
đánh giá kết quả.

2. Tương tác khách hàng:

- RAD dựa trên tiếp cận tương tác với khách hàng thường xuyên, đánh giá kịp thời, phản hồi
và thực hiện đáp ứng yêu cầu của khách hàng.

- Điều này đảm bảo rằng phát triển ứng dụng đáp ứng tốt các yêu cầu của khách hàng.

3. Quy mô dự án:

- Phương pháp phát triển ứng dụng nhanh (RAD) thường được sử dụng cho các dự án nhỏ và
vừa.

- Nếu dự án lớn, độ phức tạp cao hoặc yêu cầu bảo mật cao, RAD có thể không phù hợp và
việc sử dụng các phương pháp khác như Agile hay Waterfall có thể được khuyến khích.
4. Ưu điểm:

- RAD giúp tăng tốc độ phát triển ứng dụng, giảm thiểu chi phí phát triển và đưa ứng dụng
ra thị trường nhanh chóng.

- RAD cho phép đội ngũ phát triển ứng dụng tương tác với khách hàng thường xuyên, giúp
giảm thiểu rủi ro và đảm bảo độ chính xác khi triển khai ứng dụng.

5. Nhược điểm:

- RAD cho phép phát triển nhanh chóng, tuy nhiên, tiến độ của một dự án RAD thường phụ
thuộc vào mức độ tương tác giữa đội ngũ phát triển và khách hàng. Nếu không có sự tương
tác đầy đủ và hiệu quả, dự án có thể rơi vào thời gian đình chỉ hoặc tăng chi phí phát triển.

- RAD cũng có thể gây ra sự thiếu sự ổn định trong ứng dụng sau khi phát triển. Vì vậy, việc
đảm bảo tính ổn định và bảo mật của ứng dụng là rất quan trọng.

You might also like