Ôn tập CNPM

You might also like

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

Màu đỏ là đáp án/ màu vàng là đáp án được sửa lại

Phần 1: Quy trình phần mềm


1. Quy trình phần mềm bao gồm những hoạt động nào?
A. Thiết kế, lập trình, bảo trì
B. Đặc tả, thiết kế, kiểm thử, bảo trì
C. Lập kế hoạch, phân tích, kiểm thử
D. Thiết kế, lập trình, phân tích

2. Hoạt động nào là bước đầu tiên trong quy trình phần mềm?
A. Thiết kế phần mềm
B. Đặc tả yêu cầu
C. Kiểm thử phần mềm
D. Bảo trì phần mềm

3. Yếu tố nào dưới đây không thuộc quy trình kỹ thuật về yêu cầu?
A. Nghiên cứu khả thi
B. Thu thập và phân tích yêu cầu
C. Thiết kế hệ thống
D. Kiểm tra tính hợp lệ của yêu cầu

4. Mục tiêu chính của hoạt động thẩm định phần mềm là gì?
A. Đảm bảo hệ thống không có lỗi
B. Xác nhận hệ thống đáp ứng yêu cầu của khách hàng
C. Tăng tốc độ phát triển phần mềm
D. Giảm chi phí phát triển

5. Kiểm định (verification) và kiểm thử (validation) trong thẩm định phần mềm có ý
nghĩa gì?
A. Kiểm tra hệ thống tuân theo đặc tả và thỏa mãn yêu cầu khách hàng
B. Phát hiện và sửa lỗi trong phần mềm
C. Tối ưu hóa hiệu suất hệ thống
D. Cải thiện giao diện người dùng

6. Trong quy trình phần mềm, thiết kế và hiện thực phần mềm có thể được thực
hiện như thế nào?
A. Tuần tự
B. Đan xen hoặc liên quan đến nhau
C. Độc lập hoàn toàn
D. Sau khi kiểm thử phần mềm
7. Mô hình quy trình phần mềm nào thường được sử dụng để phát triển hệ thống
lớn?
A. Mô hình thác nước
B. Mô hình xoắn ốc
C. Mô hình Agile
D. Mô hình V

8. Mô hình xoắn ốc trong quy trình phần mềm bao gồm bao nhiêu giai đoạn chính?
A. 2
B. 3
C. 4
D. 5

9. Yếu tố nào dưới đây không phải là một phần của mô hình xoắn ốc?
A. Xác định mục tiêu
B. Phân tích rủi ro
C. Lập kế hoạch dự án
D. Tích hợp hệ thống (tr.30)

10. Mục tiêu của việc kiểm thử phần mềm là gì?
A. Xác định chi phí phát triển
B. Tìm kiếm và sửa lỗi trong phần mềm (tr.3 Chương: Kiểm thử)
C. Tăng tốc độ phát triển phần mềm
D. Đảm bảo hệ thống dễ bảo trì

11. Hoạt động nào sau đây không thuộc quy trình phần mềm?
A. Phân tích yêu cầu
B. Lập kế hoạch dự án
C. Thiết kế giao diện
D. Kiểm thử tích hợp

12. Quy trình phát triển phần mềm nào tập trung vào việc tái sử dụng mã nguồn?
A. Quy trình hướng thành phần
B. Quy trình hướng đối tượng
C. Quy trình Agile
D. Quy trình thác nước

13. Tại sao kiểm thử phần mềm là một phần quan trọng của quy trình phần mềm?
A. Giúp xác định chi phí phát triển
B. Đảm bảo hệ thống hoạt động đúng như yêu cầu
C. Tăng tính sáng tạo của nhóm phát triển
D. Giảm thời gian phát triển
14. Mô hình V trong quy trình phần mềm nhấn mạnh điều gì?
A. Sự liên kết giữa thiết kế và kiểm thử
B. Phát triển tuần tự
C. Tái sử dụng mã nguồn
D. Phát triển phần mềm nhanh chóng

15. Hoạt động nào sau đây không phải là một phần của thẩm định phần mềm?
A. Kiểm định (verification)
B. Kiểm thử (validation)
C. Phân tích rủi ro
D. Kiểm thử hệ thống

16. Hoạt động thiết kế phần mềm bao gồm gì?


A. Lập kế hoạch dự án
B. Thiết kế cấu trúc phần mềm để hiện thực hóa đặc tả
C. Kiểm thử phần mềm
D. Đặc tả yêu cầu

17. Phát triển phần mềm hướng thành phần (component-based development) tập
trung vào điều gì?
A. Thiết kế từ đầu
B. Tái sử dụng các thành phần phần mềm có sẵn
C. Phát triển phần mềm nhanh chóng
D. Đảm bảo tính bảo mật cao

18. Yêu cầu nào dưới đây thường được viết cho các khách hàng?
A. Yêu cầu hệ thống
B. Yêu cầu người dùng
C. Yêu cầu chức năng
D. Yêu cầu phi chức năng

19. Một trong những mục tiêu của việc quản lý yêu cầu là gì?
A. Tăng tốc độ phát triển phần mềm
B. Đảm bảo yêu cầu được thực hiện đúng cách
C. Giảm chi phí phát triển
D. Tăng cường bảo mật hệ thống

20. Trong mô hình hóa hệ thống, mô hình nào biểu diễn ngữ cảnh và môi trường
của hệ thống?
A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình cấu trúc
D. Mô hình hành vi
Phần 2: Kỹ thuật về yêu cầu
1. Yêu cầu chức năng là gì?
A. Mô tả các dịch vụ hệ thống cung cấp
B. Mô tả các ràng buộc khi hệ thống hoạt động
C. Mô tả hiệu suất hệ thống
D. Mô tả giao diện người dùng

2. Yêu cầu phi chức năng là gì?


A. Các yêu cầu không liên quan đến chức năng chính của hệ thống
B. Các yêu cầu về hiệu suất, bảo mật, độ tin cậy
C. Các yêu cầu về dịch vụ hệ thống cung cấp
D. Các yêu cầu về giao diện người dùng

3. Quá trình nào bao gồm việc xác định và phân tích yêu cầu?
A. Đặc tả yêu cầu
B. Thu thập yêu cầu
C. Kiểm chứng yêu cầu
D. Quản lý yêu cầu

4. Kỹ thuật nào được sử dụng để ghi lại các yêu cầu chi tiết?
A. Yêu cầu chức năng
B. Đặc tả yêu cầu
C. Phân tích yêu cầu
D. Kiểm chứng yêu cầu

5. Yêu cầu nào dưới đây thường được viết bằng ngôn ngữ tự nhiên?
A. Yêu cầu hệ thống
B. Yêu cầu người dùng
C. Yêu cầu chức năng
D. Yêu cầu phi chức năng

6. Hoạt động kiểm chứng yêu cầu bao gồm gì?


A. Xác định yêu cầu hệ thống
B. Đảm bảo yêu cầu chính xác và đầy đủ
C. Phân tích yêu cầu
D. Viết tài liệu yêu cầu

7. Quản lý yêu cầu bao gồm việc gì?


A. Xác định yêu cầu
B. Theo dõi và kiểm soát các thay đổi yêu cầu
C. Phân tích yêu cầu
D. Đặc tả yêu cầu
8. Yêu cầu nào sau đây không thuộc nhóm yêu cầu phi chức năng?
A. Hiệu suất hệ thống
B. Bảo mật hệ thống
C. Giao diện người dùng
D. Độ tin cậy

9. Yêu cầu người dùng thường được viết cho ai?


A. Nhóm phát triển phần mềm
B. Khách hàng
C. Người quản lý dự án
D. Kỹ sư phần mềm

10. Yêu cầu hệ thống thường bao gồm gì?


A. Mô tả các dịch vụ hệ thống cung cấp
B. Mô tả các ràng buộc khi hệ thống hoạt động
C. Mô tả chi tiết về các chức năng của hệ thống
D. Mô tả giao diện người dùng

11. Phân loại yêu cầu giúp làm gì?


A. Xác định chi phí phát triển
B. Gom nhóm các yêu cầu liên quan
C. Tăng tốc độ phát triển phần mềm
D. Đảm bảo tính bảo mật cao

12. Sàng lọc yêu cầu và đàm phán giúp làm gì?
A. Xác định các yêu cầu quan trọng nhất
B. Đảm bảo yêu cầu chính xác và đầy đủ
C. Phân tích yêu cầu
D. Viết tài liệu yêu cầu

13. Hoạt động nào dưới đây không thuộc quá trình thu thập và phân tích yêu cầu?
A. Phát hiện yêu cầu
B. Phân loại yêu cầu
C. Đặc tả yêu cầu
D. Sàng lọc yêu cầu

14. Trong quá trình nhận diện yêu cầu, các bên liên quan có vai trò gì?
A. Phát hiện các yêu cầu của họ
B. Viết tài liệu yêu cầu
C. Kiểm thử phần mềm
D. Thiết kế hệ thống

15. Phân loại và tổ chức yêu cầu giúp làm gì?


A. Phân loại các yêu cầu liên quan và tổ chức thành nhóm
B. Xác định yêu cầu hệ thống
C. Đặc tả yêu cầu
D. Kiểm chứng yêu cầu

16. Sàng lọc yêu cầu và đàm phán giúp giải quyết điều gì?
A. Xung đột giữa các yêu cầu
B. Viết tài liệu yêu cầu
C. Kiểm chứng yêu cầu
D. Đặc tả yêu cầu

17. Yêu cầu nào thường được sử dụng làm cơ sở để thương lượng hợp đồng?
A. Yêu cầu chức năng
B. Yêu cầu phi chức năng
C. Yêu cầu người dùng
D. Yêu cầu hệ thống

18. Trong quá trình phân tích yêu cầu, các yêu cầu về phạm vi thường được phát
hiện ở giai đoạn nào?
A. Phát hiện yêu cầu
B. Phân loại yêu cầu
C. Sàng lọc yêu cầu
D. Đặc tả yêu cầu

19. Yêu cầu nào dưới đây thường được sử dụng làm cơ sở viết hợp đồng?
A. Yêu cầu chức năng
B. Yêu cầu phi chức năng
C. Yêu cầu người dùng
D. Yêu cầu hệ thống

20. Quá trình thu thập và phân tích yêu cầu bao gồm mấy bước chính?
A. 2
B. 3
C. 4
D. 5

Phần 3: Mô hình hóa hệ thống


1. Mô hình hóa hệ thống là gì?
A. Quá trình xây dựng phần mềm
B. Quá trình xây dựng các mô hình trừu tượng của hệ thống
C. Quá trình kiểm thử phần mềm
D. Quá trình triển khai phần mềm
2. Mô hình nào biểu diễn ngữ cảnh và môi trường của hệ thống?
A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình cấu trúc
D. Mô hình hành vi

3. Ký hiệu đồ họa nào thường được sử dụng trong mô hình hóa hệ thống?
A. UML (Unified Modeling Language)
B. BPMN (Business Process Model and Notation)
C. ERD (Entity-Relationship Diagram)
D. DFD (Data Flow Diagram)

4. Mô hình hóa hệ thống giúp làm gì?


A. Hiểu chức năng của hệ thống và giao tiếp với khách hàng
B. Tăng tốc độ phát triển phần mềm
C. Đảm bảo tính bảo mật của hệ thống
D. Tăng hiệu suất hệ thống

5. Mô hình nào giúp làm rõ hệ thống đã có làm được gì?


A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình hệ thống đã có sẵn
D. Mô hình hệ thống mới

6. Mô hình nào được sử dụng để giải thích các yêu cầu cho các bên liên quan?
A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình hệ thống đã có sẵn
D. Mô hình hệ thống mới

7. Góc nhìn bên ngoài (external perspective) trong mô hình hóa hệ thống biểu diễn
gì?
A. Ngữ cảnh và môi trường của hệ thống
B. Các thành phần bên trong hệ thống
C. Các tương tác giữa các thành phần hệ thống
D. Các hành vi của hệ thống

8. Góc nhìn bên trong (internal perspective) trong mô hình hóa hệ thống biểu diễn
gì?
A. Ngữ cảnh và môi trường của hệ thống
B. Các thành phần bên trong hệ thống
C. Các tương tác giữa các thành phần hệ thống
D. Các hành vi của hệ thống
9. Mô hình nào biểu diễn các tương tác giữa các thành phần của hệ thống?
A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình cấu trúc
D. Mô hình hành vi

10. Mô hình nào biểu diễn cấu trúc của hệ thống?


A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình cấu trúc
D. Mô hình hành vi

11. Mô hình nào biểu diễn các hành vi của hệ thống?


A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình cấu trúc
D. Mô hình hành vi

12. Mô hình hóa hệ thống giúp gì trong quá trình phát triển phần mềm?
A. Giảm chi phí phát triển
B. Tăng cường bảo mật hệ thống
C. Hiểu rõ yêu cầu và thiết kế hệ thống
D. Tăng hiệu suất hệ thống

13. Ký hiệu UML trong mô hình hóa hệ thống giúp làm gì?
A. Biểu diễn các mô hình trừu tượng của hệ thống
B. Tăng tốc độ phát triển phần mềm
C. Đảm bảo tính bảo mật của hệ thống
D. Tăng hiệu suất hệ thống

14. Mô hình nào được sử dụng để thảo luận về các điểm mạnh và yếu của hệ thống?
A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình hệ thống đã có sẵn
D. Mô hình hệ thống mới

15. Mô hình nào giúp xác định các yêu cầu chức năng và phi chức năng của hệ
thống?
A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình hệ thống đã có sẵn
D. Mô hình hệ thống mới
16. Mô hình hóa ngữ cảnh giúp làm gì?
A. Biểu diễn các dịch vụ hệ thống cung cấp
B. Xác định các yêu cầu chức năng và phi chức năng
C. Xác định các yêu cầu người dùng
D. Hiểu ngữ cảnh và môi trường của hệ thống

17. Góc nhìn bên ngoài trong mô hình hóa hệ thống giúp làm gì?
A. Hiểu rõ các tương tác giữa các thành phần hệ thống
B. Hiểu ngữ cảnh và môi trường của hệ thống
C. Xác định các yêu cầu người dùng
D. Biểu diễn các hành vi của hệ thống

18. Mô hình nào giúp hiểu các tương tác giữa hệ thống và các bên liên quan?
A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình cấu trúc
D. Mô hình hành vi

19. Mô hình nào giúp làm rõ cấu trúc bên trong của hệ thống?
A. Mô hình ngữ cảnh
B. Mô hình tương tác
C. Mô hình cấu trúc
D. Mô hình hành vi

20. Mô hình hành vi giúp làm gì?


A. Hiểu ngữ cảnh và môi trường của hệ thống
B. Biểu diễn các tương tác giữa các thành phần hệ thống
C. Biểu diễn cấu trúc của hệ thống
D. Biểu diễn các hành vi của hệ thống

Phần 4: Kiến trúc phần mềm


1. Mô hình kiến trúc phần mềm 4+1 bao gồm các góc nhìn nào?
A. Logical, Physical, Process, Development, Scenarios
B. Logical, Structural, Behavioral, Process, Development
C. Structural, Functional, Development, Deployment, Scenarios
D. Logical, Functional, Process, Deployment, Scenarios

2. Góc nhìn luận lý trong mô hình 4+1 biểu diễn điều gì?
A. Các thành phần vật lý của hệ thống
B. Các thành phần trừu tượng chính của hệ thống
C. Cách phần mềm được triển khai
D. Các kịch bản sử dụng hệ thống
3. Góc nhìn vật lý trong mô hình 4+1 cho thấy điều gì?
A. Cách các tương tác thời gian thực xảy ra
B. Cách phần mềm được phân chia thành các thành phần
C. Cách các đối tượng hoặc lớp đối tượng liên kết với nhau
D. Cách hệ thống xử lý các yêu cầu phi chức năng

4. Góc nhìn quy trình trong mô hình 4+1 biểu diễn điều gì?
A. Các quy trình hoạt động của phần mềm
B. Các thành phần vật lý của hệ thống
C. Cách các thành phần phần mềm được phân bố
D. Các lớp trừu tượng chính

5. Góc nhìn triển khai trong mô hình 4+1 tập trung vào điều gì?
A. Cách phần mềm được phân chia thành các thành phần
B. Cách các đối tượng tương tác với nhau
C. Cách phần mềm được triển khai trên phần cứng
D. Các kịch bản sử dụng hệ thống

6. Scenarios trong mô hình 4+1 có vai trò gì?


A. Biểu diễn các yêu cầu chức năng của hệ thống
B. Kiểm thử hệ thống
C. Mô tả các trường hợp sử dụng
D. Quản lý các thành phần phần mềm

7. Mẫu thiết kế kiến trúc là gì?


A. Một phương pháp thiết kế giao diện người dùng
B. Một phương pháp để biểu diễn, chia sẻ và tái sử dụng kiến thức
C. Một phương pháp kiểm thử phần mềm
D. Một phương pháp quản lý dự án phần mềm

8. Một trong những lợi ích của việc sử dụng mẫu thiết kế kiến trúc là gì?
A. Giảm chi phí phần cứng
B. Tăng tốc độ phát triển phần mềm
C. Tăng khả năng tái sử dụng và chia sẻ kiến thức
D. Giảm số lượng lỗi phần mềm

9. Khi nào mẫu thiết kế kiến trúc hữu ích nhất?


A. Khi yêu cầu hiệu suất hệ thống cao
B. Khi cần sự linh hoạt trong thiết kế giao diện
C. Khi cần chia sẻ và tái sử dụng kiến thức về thiết kế
D. Khi kiểm thử phần mềm

10. Quyết định kiến trúc phần mềm liên quan đến việc gì?
A. Thiết kế giao diện người dùng
B. Định nghĩa các hệ thống con và cách chúng tương tác
C. Lập trình các module chi tiết
D. Viết tài liệu hướng dẫn sử dụng

11. Kiến trúc phần mềm ảnh hưởng đến điều gì?
A. Chức năng của phần mềm
B. Hiệu suất, độ bền, khả năng phân tán và bảo trì của hệ thống
C. Thiết kế giao diện người dùng
D. Cách phần mềm được cài đặt

12. Kiến trúc hệ thống nhỏ liên quan đến điều gì?
A. Các hệ thống phức tạp bao gồm nhiều thành phần
B. Kiến trúc của các chương trình riêng biệt và cách phân chia chúng
C. Cách phần mềm được phân phối trên các máy tính khác nhau
D. Quản lý các dịch vụ mạng

13. Kiến trúc hệ thống lớn bao gồm gì?


A. Các chương trình đơn lẻ
B. Các hệ thống phức tạp bao gồm các hệ thống con và các thành phần chương trình
C. Các thành phần phần mềm nhỏ
D. Các tài liệu hướng dẫn sử dụng

14. Tại sao kiến trúc phần mềm quan trọng?


A. Nó ảnh hưởng đến khả năng mở rộng của phần mềm
B. Nó làm tăng số lượng dòng mã
C. Nó làm giảm thời gian phát triển
D. Nó giúp viết tài liệu dễ dàng hơn

15. Các yêu cầu chức năng thường được phản ánh trong phần nào của kiến trúc
phần mềm?
A. Thành phần riêng lẻ
B. Toàn bộ hệ thống
C. Giao diện người dùng
D. Tài liệu hướng dẫn

16. Các yêu cầu phi chức năng thường được phản ánh trong phần nào của kiến trúc
phần mềm?
A. Thành phần riêng lẻ
B. Kiến trúc hệ thống
C. Giao diện người dùng
D. Tài liệu hướng dẫn
17. Một trong những vai trò của kiến trúc sư phần mềm là gì?
A. Viết mã nguồn phần mềm
B. Quản lý dự án phần mềm
C. Thiết kế và định hình kiến trúc của hệ thống
D. Đào tạo nhân viên mới

18. Tại sao việc hiểu kiến trúc phần mềm lại quan trọng đối với các bên liên quan?
A. Để họ có thể viết mã
B. Để họ có thể kiểm thử phần mềm
C. Để họ có thể hiểu cách phần mềm hoạt động và tương tác
D. Để họ có thể lập kế hoạch marketing

19. Góc nhìn phát triển trong mô hình 4+1 tập trung vào điều gì?
A. Các thành phần vật lý của hệ thống
B. Quá trình triển khai phần mềm
C. Cách phần mềm được phát triển và xây dựng
D. Các kịch bản sử dụng hệ thống

20. Quá trình thiết kế kiến trúc thường bắt đầu từ đâu?
A. Từ việc xác định các thành phần chi tiết
B. Từ việc phân tích yêu cầu của hệ thống
C. Từ việc viết mã nguồn
D. Từ việc kiểm thử phần mềm

Phần 5: Thiết kế phần mềm


1. Thiết kế phần mềm là gì?
A. Quá trình viết mã nguồn
B. Quá trình xác định các thành phần phần mềm và mối liên kết giữa chúng dựa trên yêu cầu của khách
hàng
C. Quá trình kiểm thử phần mềm
D. Quá trình bảo trì phần mềm

2. Hiện thực phần mềm là gì?


A. Quá trình kiểm thử phần mềm
B. Quá trình hiện thực hóa thiết kế thành chương trình
C. Quá trình viết tài liệu hướng dẫn
D. Quá trình bảo trì phần mềm

3. Thiết kế và hiện thực phần mềm là hai hoạt động như thế nào?
A. Tách biệt hoàn toàn
B. Đan xen lẫn nhau
C. Hoàn toàn độc lập
D. Không liên quan đến nhau

4. Thiết kế hướng đối tượng sử dụng gì để biểu diễn?


A. UML
B. SQL
C. HTML
D. XML

5. Thiết kế mẫu là gì?


A. Một phương pháp lập trình
B. Một phương pháp thiết kế giao diện người dùng
C. Một phương pháp để giải quyết các vấn đề thiết kế thường gặp
D. Một phương pháp kiểm thử phần mềm

6. Phát triển mã nguồn mở liên quan đến gì?


A. Sử dụng phần mềm đóng gói
B. Sử dụng và phát triển các thành phần mã nguồn mở
C. Thiết kế giao diện người dùng
D. Quản lý dự án phần mềm

7. Một trong những nguyên tắc chính trong thiết kế giao diện người dùng là gì?
A. Tối ưu hóa cho các thiết bị di động
B. Tính đến nhu cầu, kinh nghiệm và khả năng của người dùng hệ thống
C. Tăng tốc độ phát triển phần mềm
D. Giảm chi phí phát triển

8. Thiết kế UI cần nhận thức được điều gì?


A. Các hạn chế về tài chính của dự án
B. Các hạn chế về vật lý và tinh thần của người dùng
C. Các công nghệ mới nhất
D. Các yêu cầu chức năng của hệ thống

9. Các mô hình thiết kế hệ thống có vai trò gì trong dự án lớn?


A. Giảm thời gian phát triển
B. Là cơ chế giao tiếp quan trọng giữa các nhóm thiết kế khác nhau
C. Tăng chi phí dự án
D. Giảm số lượng lỗi phần mềm

10. Thiết kế thuật toán là gì?


A. Quá trình thiết kế giao diện người dùng
B. Quá trình thiết kế các thuật toán để giải quyết các vấn đề cụ thể
C. Quá trình viết mã nguồn
D. Quá trình kiểm thử phần mềm
11. Thiết kế cơ sở dữ liệu liên quan đến điều gì?
A. Thiết kế giao diện người dùng
B. Thiết kế cấu trúc và tổ chức của cơ sở dữ liệu
C. Thiết kế các thuật toán
D. Kiểm thử cơ sở dữ liệu

12. Thiết kế hướng đối tượng bao gồm những giai đoạn nào?
A. Phân tích, thiết kế, kiểm thử
B. Thiết kế, hiện thực, bảo trì
C. Phát triển, triển khai, bảo trì
D. Xác định yêu cầu, thiết kế, hiện thực

13. Trong thiết kế giao diện người dùng, cần thừa nhận điều gì?
A. Người dùng luôn biết cách sử dụng hệ thống
B. Ai cũng có thể nhầm lẫn
C. Hệ thống không bao giờ gặp lỗi
D. Giao diện không cần thân thiện

14. Mục tiêu chính của thiết kế giao diện người dùng là gì?
A. Tăng tốc độ phát triển phần mềm
B. Đáp ứng nhu cầu và trải nghiệm người dùng
C. Giảm chi phí phát triển
D. Tăng tính bảo mật của hệ thống

15. Quá trình thiết kế phần mềm bao gồm gì?


A. Viết mã nguồn
B. Định nghĩa các thành phần phần mềm và mối liên kết giữa chúng
C. Kiểm thử phần mềm
D. Bảo trì phần mềm

16. Một ví dụ về biểu đồ hoạt động trong thiết kế phần mềm là gì?
A. Biểu đồ lớp
B. Biểu đồ liên kết
C. Biểu đồ hoạt động swimming lane
D. Biểu đồ thành phần

17. Quản lý bản quyền trong thiết kế phần mềm liên quan đến điều gì?
A. Sử dụng các thành phần mã nguồn mở mà không cần kiểm tra
B. Duy trì thông tin về các thành phần mã nguồn mở đã tải về và sử dụng
C. Thiết kế giao diện người dùng
D. Bảo trì phần mềm

18. Một trong những nguyên tắc quan trọng trong thiết kế phần mềm là gì?
A. Giảm thiểu số lượng mã nguồn
B. Đảm bảo phần mềm dễ dàng bảo trì và mở rộng
C. Tăng số lượng thành phần phần mềm
D. Giảm thiểu tài liệu hướng dẫn

19. Thiết kế cơ sở dữ liệu bao gồm việc gì?


A. Xác định cấu trúc dữ liệu và cách tổ chức dữ liệu trong cơ sở dữ liệu
B. Viết mã nguồn
C. Thiết kế giao diện người dùng
D. Kiểm thử cơ sở dữ liệu

20. Thiết kế thuật toán có vai trò gì trong phần mềm?


A. Định nghĩa các giao diện người dùng
B. Giải quyết các vấn đề cụ thể bằng cách xác định các bước xử lý
C. Tăng tốc độ phát triển phần mềm
D. Bảo trì phần mềm

Phần 6: Hiện thực phần mềm


1. Mục đích của việc hiện thực phần mềm là gì?
A. Đáp ứng các yêu cầu thiết kế chi tiết
B. Thỏa mãn người dùng cuối
C. Tăng tính phức tạp của mã nguồn
D. Giảm chi phí phát triển

2. "Unit Implementation" được hiểu là gì?


A. Lập trình các đơn vị phần mềm nhỏ nhất
B. Thiết kế giao diện người dùng
C. Tạo lập các tài liệu hướng dẫn sử dụng
D. Kiểm tra và bảo trì phần mềm

3. Một quy tắc vàng trong hiện thực phần mềm là gì?
A. Kiểm tra các yêu cầu và thiết kế lại một lần nữa
B. Không cần kiểm tra lại thiết kế sau khi mã hóa
C. Tập trung vào việc lập trình nhanh chóng
D. Đơn giản hóa tất cả các quy trình

4. Tại sao cần xác nhận các thiết kế chi tiết trước khi hiện thực?
A. Để đảm bảo các thiết kế đáp ứng yêu cầu của người dùng
B. Để giảm chi phí phát triển
C. Để tiết kiệm thời gian kiểm thử
D. Để tăng tốc độ mã hóa

5. Chuẩn bị đo thời gian phân loại theo các bước nào?


A. Thiết kế chi tiết, mã hóa, kiểm duyệt mã, biên soạn, kiểm tra và sửa chữa lỗi
B. Thiết kế chi tiết, lập tài liệu, mã hóa, kiểm duyệt mã, bảo trì phần mềm
C. Mã hóa, kiểm tra, triển khai, bảo trì, nâng cấp phần mềm
D. Kiểm tra, mã hóa, triển khai, kiểm duyệt mã, bảo trì

6. Mục đích của việc ghi lại lỗi khi sử dụng form là gì?
A. Để theo dõi và sửa chữa lỗi một cách hệ thống
B. Để lưu trữ dữ liệu người dùng
C. Để tăng tốc độ phát triển phần mềm
D. Để phân tích thị trường

7. Tiêu chuẩn yêu cầu đối với việc mã hóa bao gồm gì?
A. Tính đúng đắn và rõ ràng
B. Tính linh hoạt và tiết kiệm
C. Tính đơn giản và nhanh chóng
D. Tính bảo mật và khả năng mở rộng

8. Ước lượng kích thước và thời gian dựa trên gì?


A. Dữ liệu đã có
B. Kinh nghiệm cá nhân
C. Yêu cầu khách hàng
D. Ngân sách dự án

9. Làm việc với các đoạn mã có kích thước bao nhiêu là hợp lý?
A. +-100 LOC
B. +-200 LOC
C. +-300 LOC
D. +-400 LOC

10. Hiện thực mã chương trình bao gồm bước nào sau đây?
A. Lập kế hoạch cấu trúc và thiết kế mã
B. Thiết kế giao diện người dùng
C. Viết tài liệu hướng dẫn
D. Tạo lập báo cáo phân tích

11. Tại sao cần tự kiểm tra lại thiết kế/cấu trúc trước khi mã hóa?
A. Để đảm bảo tính đúng đắn và hiệu quả của mã nguồn
B. Để tăng tốc độ mã hóa
C. Để giảm chi phí phát triển
D. Để làm hài lòng khách hàng

12. Quy tắc đặt tên trong hiện thực mã chương trình cần tuân thủ những gì?
A. Phù hợp và rõ ràng
B. Ngắn gọn và xúc tích
C. Phức tạp và chi tiết
D. Bất kỳ tên nào cũng được

13. Kiểm tra Class cần xem xét điều gì?


A. Tên Class có thích hợp không
B. Class có được trừu tượng không
C. Header của Class có mô tả mục đích của hàm hay không
D. Tất cả các ý trên

14. Kiểm tra thuộc tính cần xác định điều gì?
A. Thuộc tính có cần thiết không
B. Thuộc tính có thể là static không
C. Thuộc tính có nên là final không
D. Tất cả các ý trên

15. Phương pháp kiểm tra phương thức khởi dựng cần xác định điều gì?
A. Phương thức có cần thiết không
B. Phương thức có leverage các constructor hiện có không
C. Phương thức có initialize tất cả các thuộc tính không
D. Tất cả các ý trên

16. Làm thế nào để lập trình 1000 LoC/ngày?


A. Lập kế hoạch cấu trúc và thiết kế mã chương trình
B. Tăng tốc độ đánh máy
C. Tập trung vào các yêu cầu của khách hàng
D. Giảm thời gian kiểm tra mã

17. Kiểm tra thuộc tính có cần xác định điều gì?
A. Sự cần thiết của thuộc tính
B. Thuộc tính có thể là static hay không
C. Thuộc tính có nên là final hay không
D. Tất cả các ý trên

18. Tại sao cần ghi chú lại các mốc thời gian trong quá trình hiện thực mã chương
trình?
A. Để theo dõi tiến độ và quản lý thời gian hiệu quả
B. Để lưu trữ dữ liệu người dùng
C. Để phân tích thị trường
D. Để giảm chi phí phát triển

19. Việc chuẩn bị để hiện thực bao gồm gì?


A. Xác nhận các thiết kế chi tiết phải hiện thực
B. Mã hóa từ một thiết kế được mô tả bằng văn bản
C. Đo thời gian phân loại theo các bước
D. Tất cả các ý trên

20. Mục đích của việc biên dịch mã lệnh là gì?


A. Kiểm tra và sửa chữa các lỗi cú pháp
B. Thiết kế giao diện người dùng
C. Viết tài liệu hướng dẫn
D. Tạo lập báo cáo phân tích

Phần 7: Kiểm thử và tiến hóa phần mềm


1. Mục tiêu của kiểm thử phần mềm là gì?
A. Để chỉ ra rằng chương trình thực hiện đúng như mong đợi và tìm ra lỗi
B. Để giảm chi phí phát triển
C. Để tăng tốc độ lập trình
D. Để làm hài lòng khách hàng

2. Kiểm thử đơn vị (unit testing) tập trung vào điều gì?
A. Kiểm thử chức năng của các đối tượng hay các phương thức
B. Kiểm thử giao diện người dùng
C. Kiểm thử hiệu suất hệ thống
D. Kiểm thử tính bảo mật

3. Kiểm thử component (component testing) tập trung vào điều gì?
A. Kiểm thử giao diện component
B. Kiểm thử chức năng của các phương thức
C. Kiểm thử tính bảo mật
D. Kiểm thử giao diện người dùng

4. Kiểm thử hệ thống (system testing) tập trung vào điều gì?
A. Kiểm thử tương tác giữa các component
B. Kiểm thử giao diện người dùng
C. Kiểm thử tính bảo mật
D. Kiểm thử hiệu suất hệ thống

5. Kiểm thử tự động nên sử dụng gì để hỗ trợ kiểm thử đơn vị?
A. Framework kiểm thử tự động (như JUnit)
B. Các công cụ kiểm thử thủ công
C. Phần mềm thiết kế giao diện
D. Các chương trình bảo mật

6. Mục tiêu của kiểm thử giao diện là gì?


A. Tìm ra lỗi gây ra bởi các lỗi giao diện hoặc giả định sai về các giao diện
B. Kiểm thử chức năng của các phương thức
C. Kiểm thử hiệu suất hệ thống
D. Kiểm thử tính bảo mật

7. Một loại giao diện trong kiểm thử giao diện là gì?
A. Giao diện có tham số
B. Giao diện người dùng
C. Giao diện hệ thống
D. Giao diện bảo mật

8. Kiểm thử phát triển là trách nhiệm của ai?


A. Đội ngũ phát triển phần mềm
B. Người dùng cuối
C. Nhóm marketing
D. Nhóm hỗ trợ khách hàng

9. Kiểm thử phát hành là gì?


A. Kiểm thử hệ thống trước khi phát hành cho khách hàng
B. Kiểm thử hệ thống sau khi phát hành cho khách hàng
C. Kiểm thử hệ thống trong giai đoạn phát triển
D. Kiểm thử hệ thống trong giai đoạn bảo trì

10. Phương pháp kiểm thử hộp đen tập trung vào điều gì?
A. Kiểm thử chức năng của hệ thống mà không cần biết cấu trúc bên trong
B. Kiểm thử hiệu suất hệ thống
C. Kiểm thử tính bảo mật
D. Kiểm thử giao diện người dùng

11. Phương pháp kiểm thử hộp trắng tập trung vào điều gì?
A. Kiểm thử cấu trúc bên trong của hệ thống
B. Kiểm thử hiệu suất hệ thống
C. Kiểm thử tính bảo mật
D. Kiểm thử giao diện người dùng

12. Phương pháp kiểm thử hộp xám là gì?


A. Kết hợp giữa kiểm thử hộp đen và kiểm thử hộp trắng
B. Kiểm thử hiệu suất hệ thống
C. Kiểm thử tính bảo mật
D. Kiểm thử giao diện người dùng

13. Mục tiêu của kiểm thử validation là gì?


A. Để chỉ ra rằng phần mềm thỏa mãn các yêu cầu đưa ra
B. Để tìm ra các lỗi của phần mềm
C. Để giảm chi phí phát triển
D. Để tăng tốc độ lập trình

14. Mục tiêu của kiểm thử defect là gì?


A. Để tìm ra các tình huống mà phần mềm không hoạt động đúng như mong đợi
B. Để chỉ ra rằng phần mềm thỏa mãn các yêu cầu đưa ra
C. Để giảm chi phí phát triển
D. Để làm hài lòng khách hàng

15. Tại sao cần kiểm tra kết quả của việc kiểm thử?
A. Để tìm ra lỗi và các bất thường
B. Để lưu trữ dữ liệu người dùng
C. Để phân tích thị trường
D. Để tăng tốc độ phát triển phần mềm

16. Kiểm thử người dùng tập trung vào điều gì?
A. Kiểm thử phần mềm bởi người dùng cuối
B. Kiểm thử tính bảo mật
C. Kiểm thử hiệu suất hệ thống
D. Kiểm thử giao diện người dùng

17. Cải tiến quy trình phần mềm bao gồm gì?
A. Cải tiến các phương pháp phát triển và kiểm thử phần mềm
B. Tăng tốc độ lập trình
C. Giảm chi phí phát triển
D. Tập trung vào giao diện người dùng

18. Cải tiến lập trình động bao gồm gì?


A. Tăng tính linh hoạt và khả năng thích ứng của phần mềm
B. Tăng tốc độ lập trình
C. Giảm chi phí phát triển
D. Tập trung vào giao diện người dùng

19. Bảo trì phần mềm bao gồm gì?


A. Sửa lỗi và nâng cấp phần mềm sau khi phát hành
B. Thiết kế giao diện người dùng
C. Viết tài liệu hướng dẫn
D. Tạo lập báo cáo phân tích

20. Mục đích của việc kiểm thử bản release là gì?
A. Để đảm bảo phần mềm hoạt động đúng như mong đợi trước khi phát hành
B. Để giảm chi phí phát triển
C. Để tăng tốc độ lập trình
D. Để làm hài lòng khách hàng

You might also like