1. Trong mô hình phát triển phần mềm mã nguồn mở, vai trò của `maintainer` (người bảo trì) là gì?
A. Viết mã nguồn ban đầu cho dự án.
B. Quản lý và hướng dẫn sự phát triển của dự án, xem xét và chấp nhận các đóng góp.
C. Kiểm thử và báo cáo lỗi trong phần mềm.
D. Quảng bá và tiếp thị phần mềm đến người dùng.
2. Điều gì KHÔNG phải là một lý do chính khiến các tổ chức chọn sử dụng phần mềm mã nguồn mở?
A. Khả năng kiểm soát hoàn toàn mã nguồn và tùy chỉnh theo nhu cầu.
B. Chi phí bản quyền thấp hoặc miễn phí.
C. Được đảm bảo về sự ổn định và hỗ trợ lâu dài từ một công ty lớn.
D. Tính bảo mật cao do được cộng đồng rộng lớn kiểm tra.
3. Ví dụ nào sau đây là một hệ điều hành mã nguồn mở phổ biến?
A. Microsoft Windows
B. macOS
C. Linux
D. iOS
4. Phần mềm mã nguồn mở có thể được sử dụng cho mục đích thương mại không?
A. Không, phần mềm mã nguồn mở chỉ dành cho mục đích phi lợi nhuận.
B. Có, nhiều giấy phép mã nguồn mở cho phép sử dụng phần mềm cho cả mục đích thương mại và phi thương mại.
C. Chỉ được phép sử dụng thương mại nếu có sự đồng ý của tác giả gốc.
D. Chỉ được phép sử dụng thương mại sau khi trả phí bản quyền.
5. Lợi ích chính của việc tham gia vào một cộng đồng phần mềm mã nguồn mở là gì?
A. Kiếm tiền từ việc đóng góp mã nguồn.
B. Nâng cao kỹ năng, học hỏi kinh nghiệm và xây dựng mạng lưới chuyên nghiệp.
C. Được cấp chứng chỉ chuyên môn.
D. Trở thành nhân viên chính thức của dự án.
6. Phần mềm mã nguồn mở là gì?
A. Phần mềm mà mã nguồn được giữ bí mật và không được chia sẻ.
B. Phần mềm mà mã nguồn được công khai, cho phép người dùng tự do sử dụng, nghiên cứu, sửa đổi và phân phối.
C. Phần mềm chỉ được sử dụng miễn phí cho mục đích phi thương mại.
D. Phần mềm được phát triển bởi các công ty lớn và có bản quyền.
7. So sánh mô hình `cathedral` (nhà thờ) và `bazaar` (chợ) trong phát triển phần mềm mã nguồn mở, mô hình nào thường liên quan đến sự phát triển phân tán và cộng đồng lớn?
A. Mô hình `cathedral`.
B. Mô hình `bazaar`.
C. Cả hai mô hình đều giống nhau.
D. Không mô hình nào liên quan đến phát triển cộng đồng.
8. Khái niệm `open core` (lõi mở) trong mô hình kinh doanh phần mềm mã nguồn mở nghĩa là gì?
A. Toàn bộ phần mềm là mã nguồn mở và miễn phí.
B. Một phần cốt lõi của phần mềm là mã nguồn mở, còn các tính năng nâng cao hoặc module bổ sung là độc quyền và có phí.
C. Phần mềm được phát triển bởi một công ty mã nguồn mở, nhưng bán bản quyền sử dụng.
D. Phần mềm mã nguồn mở nhưng chỉ được sử dụng cho mục đích phi thương mại.
9. Trong ngữ cảnh bảo mật phần mềm, tính minh bạch của mã nguồn mở có thể mang lại lợi ích gì?
A. Làm cho phần mềm dễ bị tấn công hơn vì hacker có thể xem mã nguồn.
B. Cho phép cộng đồng rộng lớn kiểm tra và phát hiện lỗ hổng bảo mật nhanh chóng hơn.
C. Không ảnh hưởng đến bảo mật phần mềm.
D. Chỉ có lợi ích cho nhà phát triển, không liên quan đến bảo mật.
10. Lựa chọn nào sau đây mô tả đúng nhất mối quan hệ giữa `phần mềm tự do` (free software) và `phần mềm mã nguồn mở` (open source software)?
A. Chúng là hai khái niệm hoàn toàn khác nhau và không liên quan.
B. Phần mềm mã nguồn mở là một nhánh nhỏ của phần mềm tự do.
C. Chúng có nhiều điểm chung về quyền tự do của người dùng, nhưng có sự khác biệt về triết lý và cách tiếp cận.
D. Phần mềm tự do là một phiên bản cũ hơn của phần mềm mã nguồn mở.
11. Trong phát triển web, framework mã nguồn mở nào sau đây dựa trên ngôn ngữ JavaScript và rất phổ biến?
A. Ruby on Rails
B. Django
C. React
D. Laravel
12. Công cụ quản lý phiên bản mã nguồn mở nào được sử dụng rộng rãi trong phát triển phần mềm?
A. Microsoft Azure DevOps
B. Git
C. Team Foundation Version Control (TFVC)
D. Perforce
13. Giấy phép nào sau đây thường được coi là giấy phép mã nguồn mở?
A. Giấy phép độc quyền (Proprietary License)
B. Giấy phép Shareware
C. Giấy phép GPL (GNU General Public License)
D. Giấy phép Trialware
14. Trong ngữ cảnh phần mềm mã nguồn mở, `forking` (phân nhánh) có nghĩa là gì?
A. Hợp nhất hai dự án mã nguồn mở khác nhau.
B. Tạo ra một bản sao độc lập của dự án mã nguồn mở và tiếp tục phát triển nó riêng biệt.
C. Xóa bỏ một phần mã nguồn khỏi dự án.
D. Chuyển đổi dự án mã nguồn mở thành dự án độc quyền.
15. Công cụ phân tích dữ liệu và thống kê mã nguồn mở nào sau đây rất phổ biến và dựa trên ngôn ngữ R?
A. SPSS
B. SAS
C. RStudio
D. MATLAB
16. Khái niệm `copyleft` trong giấy phép mã nguồn mở nhằm mục đích gì?
A. Ngăn chặn việc sử dụng phần mềm mã nguồn mở cho mục đích thương mại.
B. Đảm bảo rằng các tác phẩm phái sinh từ phần mềm mã nguồn mở cũng phải là mã nguồn mở.
C. Bảo vệ quyền sở hữu trí tuệ của tác giả gốc một cách tuyệt đối.
D. Cho phép nhà phát triển kiểm soát hoàn toàn việc phân phối phần mềm.
17. Điều gì có thể là một thách thức khi chuyển đổi từ phần mềm độc quyền sang phần mềm mã nguồn mở trong một tổ chức?
A. Chi phí đầu tư ban đầu quá cao.
B. Thiếu phần mềm mã nguồn mở thay thế cho các ứng dụng độc quyền.
C. Khó khăn trong việc đào tạo lại nhân viên và tích hợp với hệ thống hiện có.
D. Phần mềm mã nguồn mở thường không ổn định.
18. Nhược điểm tiềm ẩn của việc sử dụng phần mềm mã nguồn mở có thể là gì?
A. Khả năng tương thích kém với phần cứng.
B. Có thể thiếu hỗ trợ kỹ thuật chuyên nghiệp hoặc giao diện người dùng thân thiện.
C. Ít tính năng hơn so với phần mềm độc quyền.
D. Khó cài đặt và cấu hình hơn.
19. Ưu điểm chính của phần mềm mã nguồn mở so với phần mềm độc quyền là gì?
A. Giá thành cao hơn và hỗ trợ kỹ thuật tốt hơn.
B. Tính bảo mật kém hơn và ít tùy biến.
C. Tính minh bạch, khả năng tùy biến và chi phí thường thấp hơn.
D. Dễ bị lỗi và khó sử dụng hơn.
20. Một tổ chức sử dụng phần mềm mã nguồn mở có thể gặp phải rủi ro pháp lý nào?
A. Không có rủi ro pháp lý nào vì phần mềm mã nguồn mở là miễn phí.
B. Rủi ro vi phạm giấy phép nếu không tuân thủ các điều khoản của giấy phép mã nguồn mở.
C. Rủi ro bị kiện bản quyền bởi cộng đồng phát triển.
D. Rủi ro bị phạt vì sử dụng phần mềm không có bản quyền.
21. Điều gì thường được coi là `bốn quyền tự do` của phần mềm mã nguồn mở?
A. Tự do sử dụng, sao chép, phân phối, và bán.
B. Tự do sử dụng, nghiên cứu, phân phối, và sửa đổi.
C. Tự do sử dụng, chia sẻ, cải tiến, và thương mại hóa.
D. Tự do truy cập, thay đổi, tái sử dụng, và bảo vệ.
22. Công cụ xây dựng và quản lý dự án phần mềm mã nguồn mở phổ biến nào thường được sử dụng cho các dự án Java?
A. npm
B. Maven
C. pip
D. Composer
23. Mô hình phát triển `mở` của phần mềm mã nguồn mở có thể dẫn đến điều gì về chất lượng phần mềm?
A. Chất lượng thường thấp hơn do thiếu kiểm soát tập trung.
B. Chất lượng có thể cao hơn do được cộng đồng lớn kiểm tra và đóng góp.
C. Chất lượng không khác biệt so với phần mềm độc quyền.
D. Chất lượng luôn phụ thuộc vào nhà phát triển ban đầu, không liên quan đến mã nguồn mở.
24. Ứng dụng văn phòng mã nguồn mở nào sau đây được xem là sự thay thế cho Microsoft Office?
A. Adobe Acrobat
B. LibreOffice
C. Corel WordPerfect Office
D. Google Workspace
25. Điều gì KHÔNG phải là một lợi ích điển hình của phần mềm mã nguồn mở đối với doanh nghiệp?
A. Giảm chi phí cấp phép phần mềm.
B. Tăng cường khả năng tùy chỉnh và tích hợp.
C. Được hỗ trợ kỹ thuật chính thức từ nhà cung cấp duy nhất.
D. Tăng tính bảo mật do cộng đồng kiểm tra mã nguồn.
26. Trong quy trình đóng góp mã nguồn cho một dự án mã nguồn mở, `pull request` (yêu cầu kéo) thường được sử dụng để làm gì?
A. Báo cáo lỗi và vấn đề cho dự án.
B. Đề xuất các thay đổi mã nguồn và yêu cầu người bảo trì xem xét và hợp nhất.
C. Tải xuống mã nguồn của dự án về máy cá nhân.
D. Chia sẻ dự án với cộng đồng.
27. Điều gì KHÔNG phải là một đặc điểm thường thấy của các dự án phần mềm mã nguồn mở thành công?
A. Cộng đồng người dùng và nhà phát triển tích cực.
B. Tài liệu hướng dẫn và hỗ trợ đầy đủ.
C. Được kiểm soát chặt chẽ bởi một công ty duy nhất.
D. Giấy phép mã nguồn mở rõ ràng và được tôn trọng.
28. Điều gì sau đây là một ví dụ về phần mềm mã nguồn mở trong lĩnh vực quản lý cơ sở dữ liệu?
A. Microsoft SQL Server
B. Oracle Database
C. MySQL
D. IBM DB2
29. Giấy phép mã nguồn mở `permissive` (cho phép) khác với giấy phép `copyleft` như thế nào?
A. Giấy phép permissive yêu cầu tác phẩm phái sinh phải là mã nguồn mở, còn copyleft thì không.
B. Giấy phép permissive không yêu cầu tác phẩm phái sinh phải là mã nguồn mở, trong khi copyleft yêu cầu.
C. Giấy phép permissive chỉ cho phép sử dụng phi thương mại, còn copyleft cho phép cả thương mại.
D. Giấy phép permissive bảo vệ quyền tác giả mạnh mẽ hơn copyleft.
30. Giấy phép mã nguồn mở nào sau đây là một ví dụ về giấy phép permissive?
A. GNU AGPLv3
B. Mozilla Public License 2.0
C. MIT License
D. GNU GPLv3