Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm – Đề 11

0

Bạn đã sẵn sàng chưa? 45 phút làm bài bắt đầu!!!

Bạn đã hết giờ làm bài! Xem kết quả các câu hỏi đã làm nhé!!!


Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Đề 11 - Bài tập, đề thi trắc nghiệm online Công nghệ phần mềm

1. Phương pháp nào sau đây tập trung vào việc phát triển phần mềm lặp đi lặp lại và gia tăng, với sự tham gia liên tục của khách hàng?

A. Mô hình Thác nước
B. Mô hình Agile
C. Mô hình chữ V
D. Mô hình Big Bang

2. Đâu là một ví dụ về `Non-functional requirement′ (Yêu cầu phi chức năng) của phần mềm?

A. Người dùng có thể đăng nhập vào hệ thống bằng tên đăng nhập và mật khẩu
B. Hệ thống phải phản hồi yêu cầu của người dùng trong vòng 2 giây
C. Hệ thống phải cho phép người dùng tạo, sửa và xóa dữ liệu
D. Hệ thống phải tính toán và hiển thị báo cáo doanh thu

3. Khái niệm `Coupling′ (Tính liên kết) và `Cohesion′ (Tính gắn kết) trong thiết kế phần mềm liên quan đến điều gì?

A. Hiệu suất và khả năng mở rộng của phần mềm
B. Mức độ độc lập và trách nhiệm của các module∕lớp trong phần mềm
C. Độ phức tạp và khả năng đọc hiểu của mã nguồn
D. Tính bảo mật và an toàn của phần mềm

4. Phương pháp phát triển phần mềm nào tập trung vào việc lập kế hoạch chi tiết và đầy đủ ở giai đoạn đầu dự án?

A. Mô hình Agile
B. Mô hình Kanban
C. Mô hình Thác nước
D. Mô hình Lean

5. Đâu là một lợi ích chính của việc sử dụng kiến trúc Microservices?

A. Giảm độ phức tạp trong phát triển và triển khai
B. Tăng tính ổn định và khả năng mở rộng độc lập cho từng dịch vụ
C. Đơn giản hóa việc quản lý cơ sở dữ liệu
D. Tăng hiệu suất tổng thể của toàn hệ thống

6. Khái niệm `Continuous Integration′ (Tích hợp liên tục) trong DevOps là gì?

A. Quá trình liên tục triển khai phần mềm lên môi trường sản xuất
B. Việc tích hợp mã nguồn thường xuyên từ các nhà phát triển vào kho mã chung
C. Kiểm thử phần mềm tự động được thực hiện liên tục
D. Theo dõi và giám sát hiệu suất hệ thống liên tục

7. Công nghệ containerization, ví dụ như Docker, giúp giải quyết vấn đề gì trong triển khai phần mềm?

A. Tăng tốc độ phát triển phần mềm
B. Đảm bảo tính nhất quán của môi trường chạy phần mềm trên các nền tảng khác nhau
C. Cải thiện chất lượng mã nguồn
D. Đơn giản hóa việc quản lý cơ sở dữ liệu

8. Đâu là một ví dụ về `Design Pattern′ (Mẫu thiết kế) trong lập trình hướng đối tượng?

A. HTTP
B. Singleton
C. SQL
D. JSON

9. Khái niệm `Technical Debt′ (Nợ kỹ thuật) trong công nghệ phần mềm đề cập đến điều gì?

A. Chi phí cho việc bảo trì phần mềm sau khi phát hành
B. Hậu quả của việc đưa ra các quyết định thiết kế hoặc mã hóa không tối ưu trong ngắn hạn để đạt được tiến độ nhanh hơn
C. Số lượng lỗi còn tồn đọng trong phần mềm sau kiểm thử
D. Thời gian cần thiết để viết tài liệu kỹ thuật cho phần mềm

10. Trong quy trình kiểm thử phần mềm, kiểm thử hộp đen (Black-box testing) tập trung vào khía cạnh nào?

A. Cấu trúc bên trong và mã nguồn của phần mềm
B. Chức năng và hành vi bên ngoài của phần mềm
C. Hiệu suất và khả năng mở rộng của phần mềm
D. Tính bảo mật và an toàn của phần mềm

11. Công cụ quản lý phiên bản (Version Control System) nào phổ biến nhất hiện nay?

A. Subversion (SVN)
B. CVS
C. Git
D. Mercurial

12. Trong quản lý yêu cầu (Requirements Management), `Use Case′ (Ca sử dụng) được dùng để mô tả điều gì?

A. Cấu trúc dữ liệu của hệ thống
B. Tương tác giữa người dùng và hệ thống để đạt được mục tiêu cụ thể
C. Giao diện người dùng của hệ thống
D. Kiến trúc phần mềm của hệ thống

13. Trong mô hình Scrum, `Product Backlog′ là gì?

A. Danh sách các công việc mà nhóm phát triển cần thực hiện trong Sprint hiện tại
B. Danh sách các yêu cầu, tính năng và cải tiến mong muốn cho sản phẩm, được ưu tiên theo giá trị kinh doanh
C. Bảng trực quan hóa công việc đang tiến hành trong Sprint
D. Báo cáo tiến độ công việc hàng ngày của nhóm phát triển

14. Trong kiến trúc phần mềm, `Layered architecture′ (Kiến trúc phân lớp) có ưu điểm chính nào?

A. Tăng hiệu suất hệ thống
B. Đơn giản hóa việc phát triển và bảo trì bằng cách phân chia trách nhiệm và tạo sự tách biệt
C. Tăng cường tính bảo mật
D. Giảm chi phí phát triển

15. Tiêu chí `Tính bảo trì` (Maintainability) trong chất lượng phần mềm liên quan đến điều gì?

A. Khả năng phần mềm hoạt động ổn định và không gặp lỗi
B. Dễ dàng sửa đổi, nâng cấp và điều chỉnh phần mềm theo thời gian
C. Khả năng phần mềm đáp ứng yêu cầu hiệu năng
D. Mức độ thân thiện và dễ sử dụng của giao diện người dùng

16. Phương pháp kiểm thử nào kiểm tra các đường dẫn thực thi (execution paths) khác nhau trong mã nguồn?

A. Kiểm thử hộp đen
B. Kiểm thử hộp trắng
C. Kiểm thử tích hợp
D. Kiểm thử hệ thống

17. Trong ngữ cảnh kiểm thử phần mềm, `Regression testing′ (Kiểm thử hồi quy) được thực hiện khi nào?

A. Sau khi phát hành phần mềm cho người dùng cuối
B. Khi có thay đổi mã nguồn, để đảm bảo các chức năng cũ không bị ảnh hưởng tiêu cực
C. Trước khi viết mã nguồn, để xác định yêu cầu kiểm thử
D. Để kiểm tra hiệu năng của phần mềm dưới tải trọng cao

18. Nguyên tắc SOLID trong thiết kế hướng đối tượng bao gồm chữ `S′ đại diện cho nguyên tắc nào?

A. Single Responsibility Principle (Nguyên tắc đơn trách nhiệm)
B. Substitution Principle (Nguyên tắc thay thế)
C. Systematic Principle (Nguyên tắc hệ thống)
D. Scalability Principle (Nguyên tắc mở rộng)

19. Trong kiểm thử hiệu năng (Performance testing), `Load testing′ (Kiểm thử tải) nhằm mục đích gì?

A. Đo thời gian phản hồi của hệ thống dưới tải trọng bình thường
B. Xác định điểm mà hệ thống bắt đầu gặp lỗi hoặc không ổn định dưới tải trọng tăng dần
C. Kiểm tra khả năng phục hồi của hệ thống sau khi gặp sự cố
D. Đánh giá mức độ sử dụng tài nguyên hệ thống (CPU, bộ nhớ) dưới tải trọng cao

20. Trong mô hình Scrum, `Sprint′ là gì?

A. Một cuộc họp hàng ngày của nhóm phát triển
B. Một khoảng thời gian cố định (thường từ 1-4 tuần) để nhóm phát triển hoàn thành một lượng công việc nhất định
C. Danh sách các yêu cầu ưu tiên cho dự án
D. Người chịu trách nhiệm đảm bảo nhóm Scrum tuân thủ quy trình

21. Khái niệm `Code smell′ (Mùi mã) trong lập trình đề cập đến điều gì?

A. Lỗi cú pháp trong mã nguồn
B. Các dấu hiệu trong mã nguồn có thể cho thấy có vấn đề tiềm ẩn về thiết kế hoặc chất lượng mã, cần được xem xét và tái cấu trúc
C. Vấn đề về hiệu năng của mã
D. Lỗ hổng bảo mật trong mã nguồn

22. Đâu là mô hình phát triển phần mềm tuyến tính tuần tự, trong đó mỗi giai đoạn phải hoàn thành trước khi giai đoạn tiếp theo bắt đầu?

A. Mô hình Thác nước (Waterfall)
B. Mô hình Agile
C. Mô hình Xoắn ốc (Spiral)
D. Mô hình Nguyên mẫu (Prototype)

23. UML (Unified Modeling Language) được sử dụng chủ yếu để làm gì trong công nghệ phần mềm?

A. Viết mã nguồn chương trình
B. Quản lý dự án phần mềm
C. Mô hình hóa và thiết kế hệ thống phần mềm
D. Kiểm thử phần mềm tự động

24. Công cụ nào sau đây thường được sử dụng để quản lý và theo dõi lỗi (bug tracking) trong dự án phần mềm?

A. Jira
B. Jenkins
C. Docker
D. SonarQube

25. Đâu là một thách thức chính khi phát triển phần mềm hướng dịch vụ (Service-Oriented Architecture - SOA)?

A. Khó khăn trong việc phát triển giao diện người dùng
B. Phức tạp trong việc quản lý giao tiếp và tương tác giữa các dịch vụ
C. Hạn chế về khả năng mở rộng
D. Thiếu công cụ hỗ trợ phát triển

26. Đâu là mục tiêu chính của việc tái cấu trúc mã nguồn (Code Refactoring)?

A. Thêm chức năng mới vào phần mềm
B. Sửa lỗi và vá các lỗ hổng bảo mật
C. Cải thiện cấu trúc và khả năng đọc hiểu của mã mà không thay đổi chức năng bên ngoài
D. Tăng tốc độ thực thi của phần mềm

27. Phương pháp phát triển phần mềm nào ưu tiên `Individuals and interactions over processes and tools′ (Cá nhân và tương tác hơn quy trình và công cụ)?

A. Mô hình CMMI (Capability Maturity Model Integration)
B. Mô hình Agile
C. Mô hình Thác nước
D. Mô hình RUP (Rational Unified Process)

28. Công cụ phân tích mã tĩnh (Static code analysis) được sử dụng để làm gì?

A. Kiểm tra hiệu năng của phần mềm khi chạy
B. Phân tích mã nguồn mà không cần thực thi chương trình, để phát hiện lỗi tiềm ẩn, vi phạm quy tắc mã hóa hoặc các vấn đề chất lượng khác
C. Theo dõi và quản lý lỗi trong quá trình kiểm thử
D. Tự động hóa quá trình triển khai phần mềm

29. Kiểu kiểm thử phần mềm nào được thực hiện bởi người dùng cuối để xác nhận phần mềm đáp ứng yêu cầu và mong đợi của họ?

A. Kiểm thử đơn vị (Unit testing)
B. Kiểm thử tích hợp (Integration testing)
C. Kiểm thử hệ thống (System testing)
D. Kiểm thử chấp nhận (Acceptance testing)

30. Phương pháp kiểm thử `Acceptance Test Driven Development′ (ATDD) là gì?

A. Một phương pháp kiểm thử hiệu năng dựa trên tải trọng chấp nhận được
B. Một phương pháp phát triển phần mềm mà các kiểm thử chấp nhận được viết trước khi mã nguồn được phát triển, và hướng dẫn quá trình phát triển
C. Một loại kiểm thử chấp nhận do người dùng cuối thực hiện
D. Một phương pháp kiểm thử tự động cho các ứng dụng web

1 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

1. Phương pháp nào sau đây tập trung vào việc phát triển phần mềm lặp đi lặp lại và gia tăng, với sự tham gia liên tục của khách hàng?

2 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

2. Đâu là một ví dụ về 'Non-functional requirement′ (Yêu cầu phi chức năng) của phần mềm?

3 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

3. Khái niệm 'Coupling′ (Tính liên kết) và 'Cohesion′ (Tính gắn kết) trong thiết kế phần mềm liên quan đến điều gì?

4 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

4. Phương pháp phát triển phần mềm nào tập trung vào việc lập kế hoạch chi tiết và đầy đủ ở giai đoạn đầu dự án?

5 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

5. Đâu là một lợi ích chính của việc sử dụng kiến trúc Microservices?

6 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

6. Khái niệm 'Continuous Integration′ (Tích hợp liên tục) trong DevOps là gì?

7 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

7. Công nghệ containerization, ví dụ như Docker, giúp giải quyết vấn đề gì trong triển khai phần mềm?

8 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

8. Đâu là một ví dụ về 'Design Pattern′ (Mẫu thiết kế) trong lập trình hướng đối tượng?

9 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

9. Khái niệm 'Technical Debt′ (Nợ kỹ thuật) trong công nghệ phần mềm đề cập đến điều gì?

10 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

10. Trong quy trình kiểm thử phần mềm, kiểm thử hộp đen (Black-box testing) tập trung vào khía cạnh nào?

11 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

11. Công cụ quản lý phiên bản (Version Control System) nào phổ biến nhất hiện nay?

12 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

12. Trong quản lý yêu cầu (Requirements Management), 'Use Case′ (Ca sử dụng) được dùng để mô tả điều gì?

13 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

13. Trong mô hình Scrum, 'Product Backlog′ là gì?

14 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

14. Trong kiến trúc phần mềm, 'Layered architecture′ (Kiến trúc phân lớp) có ưu điểm chính nào?

15 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

15. Tiêu chí 'Tính bảo trì' (Maintainability) trong chất lượng phần mềm liên quan đến điều gì?

16 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

16. Phương pháp kiểm thử nào kiểm tra các đường dẫn thực thi (execution paths) khác nhau trong mã nguồn?

17 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

17. Trong ngữ cảnh kiểm thử phần mềm, 'Regression testing′ (Kiểm thử hồi quy) được thực hiện khi nào?

18 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

18. Nguyên tắc SOLID trong thiết kế hướng đối tượng bao gồm chữ 'S′ đại diện cho nguyên tắc nào?

19 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

19. Trong kiểm thử hiệu năng (Performance testing), 'Load testing′ (Kiểm thử tải) nhằm mục đích gì?

20 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

20. Trong mô hình Scrum, 'Sprint′ là gì?

21 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

21. Khái niệm 'Code smell′ (Mùi mã) trong lập trình đề cập đến điều gì?

22 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

22. Đâu là mô hình phát triển phần mềm tuyến tính tuần tự, trong đó mỗi giai đoạn phải hoàn thành trước khi giai đoạn tiếp theo bắt đầu?

23 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

23. UML (Unified Modeling Language) được sử dụng chủ yếu để làm gì trong công nghệ phần mềm?

24 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

24. Công cụ nào sau đây thường được sử dụng để quản lý và theo dõi lỗi (bug tracking) trong dự án phần mềm?

25 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

25. Đâu là một thách thức chính khi phát triển phần mềm hướng dịch vụ (Service-Oriented Architecture - SOA)?

26 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

26. Đâu là mục tiêu chính của việc tái cấu trúc mã nguồn (Code Refactoring)?

27 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

27. Phương pháp phát triển phần mềm nào ưu tiên 'Individuals and interactions over processes and tools′ (Cá nhân và tương tác hơn quy trình và công cụ)?

28 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

28. Công cụ phân tích mã tĩnh (Static code analysis) được sử dụng để làm gì?

29 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

29. Kiểu kiểm thử phần mềm nào được thực hiện bởi người dùng cuối để xác nhận phần mềm đáp ứng yêu cầu và mong đợi của họ?

30 / 30

Category: Đề thi, bài tập trắc nghiệm online Công nghệ phần mềm

Tags: Bộ đề 11

30. Phương pháp kiểm thử 'Acceptance Test Driven Development′ (ATDD) là gì?