500+ câu Trắc nghiệm Phát triển phần mềm mã nguồn mở có đáp án - Phần 21
30 câu hỏi
Dự án nào sau đây là ví dụ điển hình về một hệ điều hành mã nguồn mở đã đạt được thành công thương mại và được sử dụng rộng rãi trên máy chủ và thiết bị nhúng?
Linux.
Windows.
macOS
iOS
Chọn đáp án A
Lợi ích của việc áp dụng các tiêu chuẩn mở (open standards) trong phát triển phần mềm mã nguồn mở là gì?
Tăng khả năng tương thích, giảm sự phụ thuộc vào nhà cung cấp và thúc đẩy cạnh tranh.
Giảm số lượng giấy phép mã nguồn mở.
Tăng cường bảo mật tuyệt đối
Chỉ cho phép các dự án lớn sử dụng
Chọn đáp án A
Trong thế giới mã nguồn mở, ‘release candidate’ (RC) là giai đoạn phát triển nào?
Một phiên bản gần như hoàn chỉnh, được phát hành để cộng đồng kiểm thử trước khi phát hành chính thức.
Phiên bản đầu tiên được phát hành cho công chúng.
Phiên bản chỉ chứa các bản sửa lỗi nhỏ
Phiên bản thử nghiệm nội bộ của đội ngũ phát triển
Chọn đáp án A
Trong các loại giấy phép phần mềm mã nguồn mở, giấy phép nào thường được sử dụng cho các thư viện (libraries) vì nó cho phép các tác phẩm phái sinh được liên kết mà không yêu cầu toàn bộ tác phẩm đó phải là mã nguồn mở?
GNU Lesser General Public License (LGPL).
GNU General Public License (GPL).
MIT License
Apache License 2.0
Chọn đáp án A
Trong mô hình phát triển phần mềm mã nguồn mở, ‘fork’ (chia tách) dự án có ý nghĩa là gì?
Tạo ra một phiên bản độc lập của dự án từ một điểm nhất định trong lịch sử mã nguồn.
Đóng góp mã nguồn mới vào dự án hiện có.
Sửa lỗi bảo mật trong phiên bản hiện tại
Tạo ra một nhánh phát triển song song nhưng vẫn liên kết chặt chẽ
Chọn đáp án A
Khi một dự án mã nguồn mở nhận được tài trợ từ các công ty, theo các nguyên tắc quản trị phổ biến, điều gì quan trọng để đảm bảo tính độc lập và trung lập của dự án?
Tách biệt rõ ràng giữa quyền biểu quyết và đóng góp tài chính, duy trì sự kiểm soát của cộng đồng đối với các quyết định kỹ thuật và chiến lược.
Tất cả các quyết định phải tuân theo ý muốn của nhà tài trợ lớn nhất.
Chỉ cho phép các nhà tài trợ tham gia vào quá trình phát triển
Không chấp nhận tài trợ từ các công ty có sản phẩm cạnh tranh
Chọn đáp án A
Trong các cộng đồng mã nguồn mở, việc tạo ra một ‘governance model’ (mô hình quản trị) rõ ràng giúp ích gì cho dự án?
Thiết lập quy trình ra quyết định, vai trò và trách nhiệm của các thành viên, giúp dự án hoạt động hiệu quả và minh bạch.
Đảm bảo dự án sẽ luôn nhận được tài trợ.
Tự động hóa mọi quy trình phát triển
Hạn chế sự tham gia của người dùng mới
Chọn đáp án A
Giấy phép nào được biết đến là ‘weak copyleft’, cho phép các tác phẩm phái sinh được phân phối dưới các giấy phép khác, miễn là giữ lại các tuyên bố về bản quyền và giấy phép gốc?
GNU Lesser General Public License (LGPL).
GNU General Public License (GPL).
MIT License
Apache License 2.0
Chọn đáp án A
Việc một dự án mã nguồn mở có một ‘roadmap’ (lộ trình phát triển) rõ ràng mang lại lợi ích gì cho cộng đồng và người dùng?
Giúp người dùng và nhà phát triển hiểu được định hướng tương lai, các tính năng dự kiến và kế hoạch phát triển.
Đảm bảo dự án sẽ không bao giờ có lỗi.
Giúp tự động hóa toàn bộ quá trình phát triển
Yêu cầu mọi đóng góp phải tuân theo lộ trình đã định sẵn
Chọn đáp án A
Theo phân tích phổ biến, một trong những thách thức lớn nhất mà các dự án phần mềm mã nguồn mở quy mô nhỏ hoặc mới thành lập thường gặp phải là gì?
Thiếu nguồn lực (nhân lực, tài chính) để duy trì và phát triển dự án.
Sự cạnh tranh từ các tập đoàn công nghệ lớn.
Khó khăn trong việc tìm kiếm người dùng
Vấn đề về bản quyền và sở hữu trí tuệ
Chọn đáp án A
Một trong những lợi ích cốt lõi của việc sử dụng các công cụ quản lý mã nguồn như Git trong các dự án mã nguồn mở là gì?
Cho phép nhiều người cộng tác hiệu quả, theo dõi lịch sử thay đổi và quản lý các phiên bản.
Tự động tối ưu hóa hiệu suất của phần mềm.
Đảm bảo 100% an toàn trước mọi cuộc tấn công mạng
Tự động tạo tài liệu kỹ thuật cho dự án
Chọn đáp án A
Khái niệm ‘upstream’ trong cộng đồng phát triển phần mềm mã nguồn mở đề cập đến gì?
Phiên bản chính thức hoặc dự án gốc mà từ đó các phiên bản sửa đổi hoặc fork được tạo ra.
Các tính năng mới nhất được phát triển.
Các bản vá lỗi khẩn cấp
Các dự án phụ thuộc vào dự án chính
Chọn đáp án A
Theo các nguyên tắc phổ biến của Open Source Initiative (OSI), tiêu chí nào sau đây là bắt buộc đối với một giấy phép để được coi là ‘Open Source’?
Phân phối mã nguồn hoặc phương tiện để truy cập mã nguồn.
Phần mềm phải miễn phí bản quyền.
Phải có giao diện người dùng đồ họa
Phải có tài liệu hướng dẫn chi tiết
Chọn đáp án A
Giấy phép nào sau đây được coi là ‘permissive’ và cho phép bạn sử dụng mã nguồn, sửa đổi, phân phối lại, và thậm chí sử dụng trong các sản phẩm độc quyền mà không yêu cầu bạn phải công khai mã nguồn của mình?
MIT License.
GNU General Public License (GPL).
Mozilla Public License (MPL)
Eclipse Public License (EPL)
Chọn đáp án A
Một trong những lợi ích chính của việc sử dụng phần mềm mã nguồn mở cho doanh nghiệp là gì?
Khả năng tùy chỉnh cao và giảm chi phí bản quyền ban đầu.
Luôn có bản cập nhật mới nhất ngay lập tức.
Dịch vụ hỗ trợ kỹ thuật chuyên nghiệp được cung cấp miễn phí
Bảo mật tuyệt đối không có lỗ hổng
Chọn đáp án A
Theo quan điểm phổ biến về quản lý dự án phần mềm mã nguồn mở, yếu tố nào sau đây quan trọng nhất để thu hút và giữ chân cộng đồng đóng góp?
Sự minh bạch trong quy trình phát triển và quyết định, cùng với một cộng đồng chào đón và hỗ trợ.
Chỉ có các nhà phát triển chuyên nghiệp mới được phép đóng góp.
Phần mềm phải có giao diện người dùng đẹp mắt và dễ sử dụng nhất
Tập trung vào việc tạo ra các tính năng mới lạ, độc đáo thay vì sửa lỗi
Chọn đáp án A
Giấy phép Apache License 2.0 có điểm gì khác biệt đáng chú ý so với giấy phép MIT và BSD?
Bao gồm các điều khoản rõ ràng về cấp phép bằng sáng chế và yêu cầu thông báo về các bằng sáng chế.
Yêu cầu tất cả các tác phẩm phái sinh phải được phát hành dưới giấy phép Apache.
Không cho phép sử dụng cho mục đích thương mại
Yêu cầu phải giữ nguyên mọi thông báo bản quyền gốc
Chọn đáp án A
Trong các hoạt động của cộng đồng mã nguồn mở, ‘contributor’ (người đóng góp) có thể thực hiện những hành động nào?
Viết mã, báo cáo lỗi, viết tài liệu, dịch thuật, hoặc hỗ trợ người dùng.
Chỉ được phép viết mã và sửa lỗi.
Chỉ được phép đóng góp tài chính cho dự án
Chỉ được phép sử dụng phần mềm
Chọn đáp án A
Khi nói về ‘community governance’ (quản trị cộng đồng) trong các dự án mã nguồn mở lớn, mô hình nào thường được áp dụng để đưa ra các quyết định quan trọng?
Một hội đồng kỹ thuật (technical steering committee) hoặc ban quản trị do cộng đồng bầu ra hoặc được công nhận.
Quyết định hoàn toàn do một cá nhân hoặc công ty duy nhất đưa ra.
Mọi thay đổi đều cần sự đồng thuận của tất cả người dùng
Các quyết định dựa trên ý kiến của các nhà tài trợ tài chính
Chọn đáp án A
Khi đánh giá một giấy phép phần mềm mã nguồn mở, điều gì được ngụ ý khi giấy phép đó là ‘permissive’ (cho phép)?
Cho phép người dùng tự do sử dụng, sửa đổi và phân phối lại, bao gồm cả việc sử dụng trong các sản phẩm độc quyền.
Yêu cầu mọi sửa đổi phải được đóng góp lại cho cộng đồng.
Chỉ cho phép sử dụng cho mục đích phi thương mại
Cần phải thông báo cho tác giả gốc trước khi phân phối
Chọn đáp án A
Khái niệm ‘dual licensing’ (cấp phép kép) trong phần mềm mã nguồn mở thường áp dụng cho mô hình kinh doanh nào?
Cung cấp một phiên bản miễn phí dưới giấy phép mã nguồn mở và một phiên bản thương mại với các tính năng bổ sung hoặc hỗ trợ.
Phát hành phần mềm đồng thời dưới hai giấy phép mã nguồn mở khác nhau.
Cho phép sử dụng miễn phí cho mục đích cá nhân và yêu cầu bản quyền cho mục đích thương mại
Cung cấp mã nguồn cho một số thành phần và bán các thành phần còn lại
Chọn đáp án A
Lý do chính khiến nhiều công ty công nghệ lớn như Google, Microsoft, Facebook (Meta) tích cực tham gia và đóng góp cho các dự án mã nguồn mở là gì?
Để thúc đẩy sự đổi mới, thu hút nhân tài và định hình các tiêu chuẩn công nghệ.
Để bán các sản phẩm phần mềm độc quyền dựa trên mã nguồn mở.
Để tuân thủ các quy định pháp luật về mã nguồn mở
Để giảm thiểu chi phí nghiên cứu và phát triển bằng cách sử dụng lại mã
Chọn đáp án A
Trong bối cảnh giấy phép phần mềm mã nguồn mở, ‘viral effect’ (hiệu ứng lan truyền) thường được đề cập đến khi nào?
Khi giấy phép yêu cầu các tác phẩm phái sinh cũng phải được phát hành dưới cùng một giấy phép.
Khi phần mềm được sử dụng rộng rãi trong cộng đồng.
Khi mã nguồn được đóng góp bởi nhiều nhà phát triển
Khi phần mềm có khả năng tự sao chép và lan truyền
Chọn đáp án A
Giấy phép nào sau đây được coi là ‘copyleft’ mạnh mẽ nhất, yêu cầu các tác phẩm phái sinh phải được phát hành dưới cùng một giấy phép?
GNU General Public License (GPL).
MIT License.
Apache License 2.0
BSD License
Chọn đáp án A
Trong bối cảnh bảo mật phần mềm mã nguồn mở, ‘responsible disclosure’ (tiết lộ có trách nhiệm) đề cập đến điều gì?
Quy trình thông báo lỗ hổng bảo mật cho nhà phát triển và cho phép họ sửa chữa trước khi công khai.
Việc công khai ngay lập tức mọi lỗ hổng bảo mật được tìm thấy.
Chỉ thông báo lỗ hổng bảo mật cho các cơ quan chính phủ
Phát triển phần mềm không có lỗ hổng bảo mật ngay từ đầu
Chọn đáp án A
Khi một phần mềm được phát hành dưới giấy phép MIT, điều khoản nào KHÔNG phải là yêu cầu bắt buộc đối với người sử dụng?
Giữ nguyên thông báo bản quyền và giấy phép trong mọi bản phân phối.
Phát hành lại mã nguồn đã sửa đổi dưới giấy phép MIT.
Sử dụng phần mềm cho bất kỳ mục đích nào, kể cả thương mại
Không chịu trách nhiệm pháp lý đối với phần mềm
Chọn đáp án A
Trong bối cảnh của các dự án mã nguồn mở, ‘code freeze’ (đóng băng mã nguồn) là giai đoạn gì?
Một giai đoạn trước khi phát hành phiên bản mới, nơi chỉ cho phép các bản sửa lỗi quan trọng, không cho phép thêm tính năng mới.
Khi dự án ngừng hoạt động hoàn toàn.
Khi mã nguồn được mã hóa để bảo mật
Khi chỉ có một người được phép sửa mã
Chọn đáp án A
Tại sao các giấy phép như GPL lại được gọi là ‘copyleft’?
Chúng sử dụng các điều khoản tương tự như ‘copyright’ nhưng để bảo vệ quyền tự do của người dùng thay vì hạn chế.
Chúng yêu cầu mọi phần mềm sử dụng mã phải được phát hành dưới dạng bản sao.
Chúng chỉ cho phép sao chép mã nguồn mà không được sửa đổi
Chúng là giấy phép đầu tiên sử dụng thuật ngữ ‘copyleft’
Chọn đáp án A
Trong một dự án mã nguồn mở, ‘issue tracker’ (công cụ theo dõi vấn đề) được sử dụng để làm gì?
Ghi lại, theo dõi và quản lý các lỗi (bugs), yêu cầu tính năng mới và các vấn đề khác liên quan đến dự án.
Lưu trữ mã nguồn của dự án.
Tự động biên dịch và kiểm thử phần mềm
Quản lý tài chính cho dự án
Chọn đáp án A
Trong cộng đồng phát triển phần mềm mã nguồn mở, thuật ngữ ‘Pull Request’ (hoặc ‘Merge Request’) có ý nghĩa gì?
Yêu cầu gửi mã nguồn đã thay đổi của một nhà phát triển đến người quản lý dự án để xem xét và tích hợp.
Yêu cầu người dùng tải về phiên bản mới nhất của phần mềm.
Yêu cầu báo cáo lỗi hoặc đề xuất tính năng mới
Yêu cầu các thành viên cộng đồng cùng nhau kiểm thử phần mềm
Chọn đáp án A








