Thứ Ba, 8 tháng 5, 2012

Chính sách mã nguồn


Source Code Policy
Lời người dịch: Đúng như những gì đã được nêu trong tài liệu: Phát triển công nghệ mở - những bài học học được và những thực tiễn tốt nhất cho các phần mềm quân sự, bây giờ là lúc nhưng nội dung trong cuốn sách đó của Bộ Quốc phòng Mỹ được triển khai rộng ra tới các cơ quan khác của Chính phủ (Xem trang ), mà cụ thể ở đây là Văn phòng Bảo vệ Tài chính Người tiêu dùng CFPB (The Consumer Financial Protection Bureau), mục tiêu của nó hướng tới để cho mọi phần mềm/ hệ thống thông tin trong quân đội và chính phủ PHẢI là phần mềm tự do nguồn mở và phần mềm mở thương mại dùng được ngay (Xem trang 10 tài liệu nêu trên). Điều quan trọng, như cuốn sách của Bộ Quốc phòng Mỹ đã nêu, là Chính phủ phải có được các quyền không hạn chế đối với tất cả các phần mềm/ hệ thống thông tin mà Chính phủ sử dụng. (Xem các trang 7, 11, 29, 30, 34, 35, 37, 38, 39, 43, 54, 56, 57, 59, 61 và 64 của cuốn sách nêu trên với cụm từ khóa “quyền không hạn chế”). Có thể đây cũng chính là con đường Chính phủ Việt Nam PHẢI đi theo vì lợi ích của chính mình và tất cả các bên liên quan. Xem thêm tài liệu: “Kế hoạch lộ trình phát triển công nghệ mở”.
I. Sử dụng phần mềm nguồn mở ở bên ngoài
  1. “Phần mềm Nguồn Mở” - PMNM (OSS) là phần mềm cho phép những người nhận nó sửa đổi và phân phối lại mã nguồn; vì thế, “nguồn mở” là một khung phân phối và có bản quyền và nó không ngụ ý về sự bồi thường hoặc hỗ trợ kỹ thuật. Trong hầu hết các trường hợp, PMNM đáp ứng được định nghĩa của “phần mềm máy tính thương mại” và sẽ đưa ra được sự ưu tiên phù hợp với pháp luật qui định tuân theo với 41 USC 264B (tham chiếu (b)) (cũng xem FAR 2.101(b), 12_1.html 12.000, 12.101 (tham chiếu (c))).
  2. Các cơ quan thực thi, bao gồm cả CFPB, được yêu cầu tiến hành nghiên cứu thị trường khi chuẩn bị mua sắm các sản phẩm hoặc dịch vụ theo 41 USC Sec. 253a (tham chiếu (e)) (cũng xem FAR 10.001). Nghiên cứu thị trường cho phần mềm nên bao gồm PMNM.
    1. Mã nguồn sẵn sàng công khai cho phép rà soát lại ngang hàng rộng rãi và liên tục đảm bảo sự an ninh và sự tin cậy cường tráng. Đặc biệt, qui trình này khuyến khích nhận diện và loại trừ các khiếm khuyết có thể nếu khác đi sẽ không được nhận ra với đội phát triển cốt lõi bị hạn chế hơn.
    2. Khả năng không hạn chế để sửa đổi mã nguồn phần mềm cho phép CFPB phản ứng nhanh chóng hơn đối với các nhiệm vụ và các thị trường thay đổi và là sống còn cho khả năng của CFPB để tạo ra các công cụ mới và giữ tốc độ với nền công nghiệp.
    3. Sử dụng PMNM thay cho phần mềm sở hữu độc quyền có thể làm giảm sự nương tựa vào một nhà phát triển hoặc nhà cung cấp phần mềm đặc biệt. PMNM có thể được vận hành và duy trì từ nhiều nhà cung cấp, vì thế làm giảm rào cản lối vào và ra.
    4. Các giấy phép nguồn mở không hạn chế ai có thể sử dụng phần mềm hay các lĩnh vực chuyên ngành trong đó phần mềm có thể được sử dụng. Điều này cho phép CFPB sử dụng lại bất tận các sản phẩm dựa vào PMNM đang tồn tại để làm thỏa mãn những nhu cầu mới nhanh chóng và đảm bảo tiết kiệm chi phí đáng kể cho Văn phòng.
    5. Vì chi phí bằng tiền của PMNM thường nằm trong sự hỗ trợ và duy trì, ngược lại với việc cấp phép. PMNM có thể đưa ra ưu thế về chi phí trong những trường hợp nơi mà nhiều bản sao phần mềm có thể được yêu cầu và có thể làm giảm nhẹ rủi ro tăng chi phí vì việc cấp phép trong những tình huống nơi mà tổng số những người sử dụng không được biết trước.
    6. Bằng việc chia sẻ trách nhiệm duy trì của PMNM với những người sử dụng khác, CFPB có thể hưởng lợi bằng việc giảm tổng chi phí sở hữu đối với phần mềm, đặc biệt khi so với phần mềm mà CFPB đã bán các trách nhiệm duy trì (như, GOTS).
    7. PMNM đặc biệt là phù hợp cho thí điểm và thử mẫu nhanh, nơi mà khả năng để “kiểm tra lái xe” phần mềm với chi phí và sự trễ hành chính tối thiểu có thể là quan trọng. (b) Trong khi những xem xét đó có thể là phù hợp, chúng có thể không là những động lực khống chế cho bất kỳ quyết định nào về phần mềm. Cuối cùng, phần mềm mà đáp ứng được tốt nhất các nhu cầu và nhiệm vụ của CFPB nên được sử dụng, bất kể liệu phần mềm đó có là nguồn mở hay không.
  3. Sử dụng bất kỳ phần mềm nào mà không có sự duy trì và hỗ trợ phù hợp đều đưa ra một rủi ro đảm bảo thông tin. Trước khi phê chuẩn sử dụng phần mềm (bao gồm cả PMNM), các nhà quản lý hệ thống/ chương trình, và cuối vùng là các Nhà chức trách Phê chuẩn được Chỉ định (DAAs), phải đảm bảo rằng kế hoạch hỗ trợ phần mềm (như, sự hỗ trợ các văn phòng chương trình thương mại hoặc của Chính phủ) là phù hợp cho nhu cầu nhiệm vụ.
  4. Điều quan trọng phải hiểu cả những đặc thù của giấy phép nguồn mở theo yêu cầu và cách mà CFPB có ý định sử dụng và phân phối bất kỳ PMNM nào được Văn phòng sửa đổi. Có một sự hiểu lầm rằng Chính phủ luôn có bổn phận phải phân phối mã nguồn của bất kỳ PMNM được sửa đổi nào cho sử dụng nội bộ mà không có bổn phận phải phân phối mã nguồn cho công chúng. Tuy nhiên, nếu người sử dụng chọn phaanp hối các PMNM được sửa đổi bên ngoài tổ chức của người sử dụng (như, một người sử dụng của Chính phủ phân phối mã ra bên ngoài Chính phủ), thì một số giấy phép PMNM (như GNU General Public License – GPL) sẽ yêu cầu phân phối mã nguồn tương ứng cho người nhận phần mềm.
  5. Khi làm hợp đồng các dịch vụ của các lập trình viên, CFPB sẽ khuyến khích các nhà cung cấp sử dụng công nghệ nguồn mở ở bất cứ đâu có thể, vì những lý do đã nêu trong I.2(a)i-vii ở trên.
  6. Để tạo thuận lợi cho việc kiểm toán các catalog phần mềm của CFPB, Văn phòng Công nghệ và Đổi mới sẽ sử dụng một công cụ phân tích mã nguồn để đánh chỉ số các tài sản nguồn mở và những bổn phận cấp phép tương ứng của chúng.
I. Use of external open source software
  1. “Open Source Software” (OSS) is software that allows its recipients to modify and redistribute the source code; as such, “open source” is a copyright and distribution framework and makes no implications regarding technical support or indemnification. In almost all cases, OSS meets the definition of “commercial computer software” and shall be given appropriate statutory preference in accordance with 41 USC 264B (reference (b)) (see also FAR 2.101(b), 12_1.html 12.000, 12.101 (reference (c))).
  2. Executive agencies, including CFPB, are required to conduct market research when preparing for the procurement of products or services by 41 USC Sec. 253a (reference (e)) (see also FAR 10.001). Market research for software should include OSS.
    (a) There are several positive aspects of OSS that should compel CFPB to seek out OSS when conducting market research on software for Bureau-wide use:
    i. Publicly available source code enables continuous and broad peer review that ensures rigorous security and reliability. Specifically, this process encourages the identification and elimination of defects that might otherwise go unrecognized by a more limited core development team.
    ii. The unrestricted ability to modify software source code enables CFPB to respond more rapidly to constantly changing missions and markets and is critical to CFPB’s ability to create new tools and keep pace with industry.
    iii. Using OSS instead of proprietary software may reduce reliance on a particular software developer or vendor. OSS can be operated and maintained by multiple vendors, thus reducing barriers to entry and exit.

    iv. Open source licenses do not restrict who can use the software or the endeavors in which the software can be used. This allows CFPB to endlessly reuse existing OSS-based products to satisfy new needs quickly and secure substantial cost savings for the Bureau.
    v. Since the monetary cost of OSS typically lies in support and maintenance as opposed to licensing, OSS can provide a cost advantage in situations where many copies of the software may be required and can mitigate risk of cost growth due to licensing in situations where the total number of users may not be known in advance.
    vi. By sharing the responsibility for maintenance of OSS with other users, CFPB can benefit by reducing the total cost of ownership for software, particularly compared with software for which CFPB has sole responsibility for maintenance (e.g., GOTS).
    vii. OSS is particularly suitable for rapid prototyping and experimentation, where the ability to “test drive” the software with minimal costs and administrative delays can be important.
    (b) While these considerations may be relevant, they may not be the overriding drivers to any decision about software. Ultimately, the software that best meets the needs and mission of CFPB should be used, regardless of whether the software is open source.
  3. The use of any software without appropriate maintenance and support presents an information assurance risk. Before approving the use of software (including OSS), system/program managers, and ultimately Designated Approving Authorities (DAAs), must ensure that the plan for software support (e.g., commercial or Government program office support) is adequate for mission need.
  4. It is important to understand both the specifics of the open source license in question and how CFPB intends to use and redistribute any Bureau-modified OSS. There is a misconception that the Government is always obligated to distribute the source code of any modified OSS to the public, and therefore that OSS should not be integrated or modified for use in sensitive CFPB systems. In contrast, many open source licenses permit the user to modify OSS for internal use without being obligated to distribute source code to the public. However, if the user chooses to distribute the modified OSS outside the user’s organization (e.g., a Government user distributes the code outside the Government), then some OSS licenses (such as the GNU General Public License) do require distribution of the corresponding source code to the recipient of the software.
  5. When contracting developer services, CFPB will encourage vendors to use open source technology wherever possible, for the reasons cited in I.2(a)i-vii above.
  6. In order to facilitate the auditing of CFPB’s software catalog, the Technology & Innovation office will use a source code analysis tool to index its open source assets and their respective licensing obligations.
II. Phân phối lại mã nguồn của CFPB
  1. Mã nguồn phần mềm được viết hoàn toàn từ nhân viên của CFPB, và từ các nhà thầu mà đang phát triển phần mềm nhân danh CFPB, mặc định là một tác phẩm miền công cộng.
  2. Mã nguồn phần mềm trước đó được phát hành theo một giấy phép nguồn mở và sau đó được sửa đổi từ các nhân viên của CFPB được xem là một “tác phẩm chung” (xem 17 USC § 101); nó một phần có bản quyền, một phần trong miền công cộng, và như một tổng thể được bảo vệ bằng bản quyền của các tác giả phi chính phủ và phải được phát hành theo những điều khoản của giấy phép nguồn mở gốc ban đầu.
  3. Tất cả mã nguồn được xác định trọng II.1 và II.2 ở trên phải được ghi vào trong catalog và được chia sẻ với công chúng nói chung thông qua một cộng đồng mã nguồn trực tuyến có khả năng truy cập được dễ dàng trên trực tuyến, dễ thấy để tạo thuận lợi cho việc sử dụng lại mã nguồn đó. Mã nguồn sẽ không được phát hành nếu bất kỳ điều kiện nào sau đây được đáp ứng:
    1. Tác giả của mã nguồn theo yêu cầu xác định rằng mã nguồn là quá thô để định giá trị phân phối hoặc cung cấp giá trị cho cộng đồng rộng lớn hơn.
    2. Chính phủ không có các quyền để tái sản xuất và phát hành khoản đó. Chính phủ có các quyền tung ra công khai khi phần mềm được phát triển từ nhân viên Chính phủ, khi Chính phủ nhận được “các quyền không hạn chế” trong phần mềm được phát triển từ một nhà thầu trong chi phí của Chính phủ, hoặc khi PMNM tồn tại trước đó được sửa đổi từ hoặc cho Chính phủ.
    3. Phát hành công khai điều khoản đó bị hạn chế bởi luật hoặc qui định khác, như các Qui định Hành chính Xuất khẩu hoặc Giao thương Quốc tế trong Qui định của Quân đội.
    4. Nhân viên an ninh không gian mạng của CFPB xác định rằng phát hành công khai mã nguồn như vậy có thể đặt ra một rủi ro không thể chấp nhận được cho an ninh hoạt động của CFPB.
II. Redistribution of CFPB code
  1. Software source code written entirely by CFPB staff, and by contractors who are developing software on behalf of CFPB, is by default a public domain work.
  2. Software source code previously released under an open source license and then modified by CFPB staff is considered a “joint work” (see 17 USC § 101); it is partially copyrighted, partially public domain, and as a whole is protected by the copyrights of the non-government authors and must be released according to the terms of the original open-source license.
  3. All source code as defined in II.1 and II.2 above must be catalogued and shared with the general public via a highly visible, easily accessible online source code community that facilitates the code’s reuse. Source code shall not be released if any of the following conditions are met:
    (a) The author of the code in question determines that the code is too crude to merit distribution or provide value to the broader community.
    (b) The Government does not have the rights to reproduce and release the item. The Government has public release rights when the software is developed by Government personnel, when the Government receives “unlimited rights” in software developed by a contractor at Government expense, or when pre-existing OSS is modified by or for the Government.
    (c) The public release of the item is restricted by other law or regulation, such as the Export Administration Regulations or the International Traffic in Arms Regulation.
    (d) CFPB cybersecurity staff determine that the public release of such code would pose an unacceptable risk to CFPB’s operational security.
Dịch: Lê Trung Nghĩa

Không có nhận xét nào:

Đăng nhận xét

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.