Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

TRƯỜNG ĐẠI HỌC HẢI CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT

DƯƠNG NAM
KHOA KỸ THUẬT & CÔNG Độc lập - Tự do - Hạnh phúc
NGHỆ
Hải Dương, ngày 13 tháng 12 năm 2021

Bài Kiểm Tra Học Phần Công Nghệ Phần Mềm

Giảng viên : Vũ Thị Thương Huyền

Sinh viên : Doàn Đức Sơn Lâm _ K9CNTT

Câu 1:

  Các giai đoạn chính trong quy trình phát triển phần mềm gồm các giai đoạn:
giải pháp/yêu cầu, thiết kế. lập trình, kiểm thử và triển khai.

Giải pháp/yêu cầu (Requirements)


Nhiệm vụ: Thực hiện khảo sát chi tiết yêu cầu khách hàng và tổng hợp vào
tài liệu giải pháp (phân tích nghiệp vụ, phân tích yêu cầu, đặc tả yêu cầu, bản thiết
kế mẫu). Tài liệu giải pháp phải miêu tả đầy đủ các yêu cầu về chức năng, phi chức
năng và giao diện cần đáp ứng. Đầu ra của giai đoạn này chính là tài liệu đặc tả yêu
cầu, bản thiết kế mẫu.

Thiết kế (Design)
Nhiệm vụ: Thực hiện thiết kế và tổng hợp vào tài liệu thiết kế. Đầu ra: Bản
thiết kế tổng thể, thiết kế CSDL (Database), thiết kế chi tiết.

Lập trình (Coding)


Nhiệm vụ: Lập trình viên thực hiện lập trình dựa trên tài liệu Giải pháp và Thiết kế
đã được phê duyệt. Đầu ra: Mã nguồn (Source Code)

Kiểm thử (Test)


Nhiệm vụ: Cán bộ kiểm thử tạo kịch bản kiểm thử (test case) dựa trên tài
liệu đặc tả yêu cầu, thực hiện kiểm thử và cập nhật kết quả vào kịch bản kiểm thử.
Trong quá trình kiểm thử, khi phát hiện các lỗi sẽ log lên các tool quản lý lỗi. Nhân

1
viên kiểm thử (Tester) và nhân viên lập trình (Developer) sẽ phối hợp xử lý các lỗi
và cập nhật lên hệ thống quản lý lỗi. Đầu ra: Testcase, các lỗi trên hệ thống quản lý
lỗi.

Triển khai (Implemetations)


Nhiệm vụ: Triển khai sản phẩm cho khách hàng. Đầu ra: Biên bản triển khai
với khách hàng.
Chi phí giữa các giai đoạn chiếm tỉ lệ kinh phí khác nhau :
50% kinh phí sẽ chi cho việc Khảo sát, phân tích yêu cầu, thiết kế, lập trình và
kiểm thử
50% còn lại sẽ cho vào việc triển khai
Việc khảo sát phân tích yêu cầu sẽ chiếm 10% kinh phí
Thiết kế chiếm 10%
Lập trình 20%
Và kiểm thử chiếm 10%
Tùy vào nhiều loại phần mềm lớn hay nhỏ cá nhân riêng hay tổ chức mà mức độ
chi phí chia ra sẽ khác nhau tùy mục đích của phần mềm.
Câu 2:
Mô hình phần mềm thường được sử dụng để phát triển phần mềm vừa và nhỏ:

Mô hình thác nước ( Waterfall model)

2
- Đây được coi như là mô hình phát triển phần mềm đầu tiên được sử dụng.
- Mô hình này áp dụng tuần tự các giai đoạn của phát triển phần mềm.
- Đầu ra của giai đoạn trước là đầu vào của giai đoạn sau. Giai đoạn sau chỉ
được thực hiện khi giai đoạn trước đã kết thúc. Đặc biệt không được quay lại
giai đoạn trước để xử lý các yêu cầu khi muốn thay đổi.

Phân tích mô hình

 Requirement gathering: Thu thập và phân tích yêu cầu được ghi lại vào tài
liệu đặc tả yêu cầu trong giai đoạn này.
 System Analysis: Phân tích thiết kế hệ thống phần mềm, xác định kiến trúc
hệ thống tổng thể của phần mềm.
 Coding: Hệ thống được phát triển theo từng unit và được tích hợp trong giai
đoạn tiếp theo. Mỗi Unit được phát triển và kiểm thử bởi dev được gọi là
Unit Test.
 Testing: Cài đặt và kiểm thử phần mềm. Công việc chính của giai đoạn này
là kiểm tra và sửa tất cả những lỗi tìm được sao cho phần mềm hoạt động
chính xác và đúng theo tài liệu đặc tả yêu cầu.
 Implementation: Triển khai hệ thống trong môi trường khách hàng và đưa
ra thị trường.
 Operations and Maintenance: Bảo trì hệ thống khi có bất kỳ thay đổi nào
từ phía khách hàng, người sử dụng.

Ứng dụng
Mô hình thường được áp dụng cho các dự án phần mềm như sau:

 Các dự án nhỏ , ngắn hạn.


 Các dự án có ít thay đổi về yêu cầu và không có những yêu cầu không rõ
ràng.

Lí do chỉ sử dụng cho những phần mềm vừa và nhỏ :

 Dễ sử dụng, dễ tiếp cận, dễ quản lý.


 Sản phẩm phát triển theo các giai đoạn được xác định rõ ràng.
 Xác nhận ở từng giai đoạn, đảm bảo phát hiện sớm các lỗi.
3
Không sử dụng cho những phần mềm lớn:

 Ít linh hoạt, phạm vi điều chỉnh hạn chế.


 Rất khó để đo lường sự phát triển trong từng giai đoạn.
 Mô hình không thích hợp với những dự án dài, đang diễn ra, hay những dự
án phức tạp, có nhiều thay đổi về yêu cầu trong vòng đời phát triển.
 Khó quay lại khi giai đoạn nào đó đã kết thúc.

Câu 3:
Requirement analysis – Phân tích yêu cầu
Giai đoạn đầu tiên của quy trình kiểm thử là phân tích các yêu cầu thông qua
những tài liệu bao gồm: tài liệu yêu cầu của khách hàng, prototype của khách hàng,
tài liệu đặc tả yêu cầu của phần mềm, tài liệu thiết kế hệ thống…

QA team có nhiệm vụ phân tích và xác định những yêu cầu của khách hàng,
trong đó có yêu cầu về kiểm thử chức năng/phi chức năng của phần mềm. Trong
quá trình phân tích, QA team có thể đặt ra câu hỏi để hiểu chính xác hơn về yêu
cầu của sản phẩm, đồng thời hỗ trợ đưa ra giải pháp thích hợp cho khách hàng.

Test planning – Lập kế hoạch kiểm thử


Dựa vào tài liệu nhận được trong giai đoạn đầu, Test Lead hoặc Test
Manager sẽ lên kế hoạch kiểm thử phần mềm cho QA team để xác định một số yếu
tố:

 Phạm vi dự án: Thời gian thực hiện dự án bao lâu? Trong từng khoảng thời
gian sẽ có những công việc gì?
 Phương pháp tiếp cận: Dựa vào yêu cầu chất lượng của khách hàng, thời
gian test, kỹ thuật phát triển ứng dụng, lĩnh vực của sản phẩm… Test
Manager sẽ đưa ra phương pháp tiếp cận sao cho đảm bảo tiến độ và chất
lượng sản phẩm. Sau khi kết thúc giai đoạn này, QA team cần nhận được
test plan, test schedule, test estimation.

Test case development – Thiết kế kịch bản cho quy trình kiểm thử
Trong giai đoạn này, các Tester sẽ đọc hiểu tất cả các tài liệu, từ đó xác định
những việc cần làm, chức năng nào cần test hoặc không. Sau đó, dựa vào kế hoạch
và kỹ thuật thiết kế kịch bản kiểm thử, Tester sẽ bắt đầu viết test case. Yêu cầu của
test case: Thể hiện tất cả các trường hợp kiểm thử có thể phát sinh để đáp ứng yêu

4
cầu sản phẩm. Ngoài test case, Tester cũng cần chuẩn bị các dữ liệu cần thiết khác
như test data, test script, test design, test automation script.

Test environment set up – Thiết lập môi trường kiểm thử


Đây là một trong những giai đoạn đóng vai trò rất quan trọng trong Software
Testing Life Cycle (vòng đời phát triển phần mềm). Dựa trên yêu cầu khách hàng
và đặc thù của sản phẩm, môi trường kiểm thử sẽ được xác định. Tester cần chuẩn
bị smoke test case để kiểm tra môi trường cài đặt đã đáp ứng yêu cầu và sẵn sàng
cho giai đoạn kiểm thử tiếp theo hay chưa.

Test execution – Thực hiện kiểm thử


Theo test case đã thiết kế và môi trường kiểm thử đã hoàn tất cài đặt, Tester
sẽ báo cáo bug lên tool quản lý lỗi và theo dõi đến khi fix bug thành công. Tiếp đó,
Tester thực hiện retest để verify các fix bug và regression test trong trường hợp có
sự thay đổi. Sau khi hoàn tất giai đoạn này, các chuyên viên kiểm thử cần có được
test results (kết quả kiểm thử) và defect reports (danh sách các lỗi tìm được).

Test cycle closure – Đóng chu trình kiểm thử


Để đóng chu trình kiểm thử, QA team cần có được những tài liệu đã được
tổng hợp và hoàn thiện từ những giai đoạn trước: tài liệu phân tích đặc tả yêu cầu,
test plan, defect reports, test results… Tiếp đó, QA team sẽ tổng kết, báo cáo về
quá trình kiểm thử, có bao nhiêu bug đã được fix, bug có nghiêm trọng hay không,
chức năng nào còn lỗi, chức năng nào đã hoàn thành…

You might also like