Khi
sự tham gia của các tập đoàn trong nguồn mở gia tăng,
nhiều công ty đang phát hiện ra những ưu điểm của việc
phát hành các công nghệ sở hữu độc quyền trước kia
của họ như là nguồn mở. Tại
Việt Nam hiện nay, một số công ty thực sự có mong muốn
mở mã nguồn các sản phẩm nguồn đóng của mình với
mong muốn tận dụng được sức mạnh của cả cộng đồng
từ bên ngoài công ty. Làm cách nào để hiện thực hóa
điều này thuận lợi và có hiệu quả nhất cho công ty
là câu hỏi được đặt ra ...
GIỚI THIỆU
Sự
tham gia của các tập đoàn trong nguồn mở đã là cao ở
mọi thời điểm, và tiếp tục tăng trưởng khi các công
ty nhận thức được giá trị của việc sử dụng và
đóng góp cho các dự án nguồn mở. Bản chất tự nhiên
sự tham gia của các tập đoàn cũng tiếp tục tiến bộ,
khi các công ty ngày càng phát hiện ra rằng việc mở
nguồn các công nghệ sở hữu độc quyền có thể dẫn
tới các nguồn giá trị mới và các hệ sinh thái mạnh
hơn cho sản phẩm.
Đối
với các công ty có kế hoạch mở mã sở hữu độc quyền
như một dự án nguồn mở đứng riêng biệt, thì tài
liệu này đưa ra sự khái quát mức cao về qui trình và
đưa ra một danh sách ví dụ các nhiệm vụ có thể giúp
đảm bảo rằng tất cả các nhiệm vụ được nắm bắt
và thực thi một cách phù hợp.
Đây
là bài thứ 5 trong loạt bài nói về sự tham gia của các
tập đoàn trong nguồn mở. Những bài trước về chủ đề
này bao gồm: (1)
Tìm
hiểu mô hình phát triển PMTDNM;
(2)
Vòng
đời tính năng và những đặc tính của mô hình phát
triển nguồn mở;
(3)
Phát
triển PMTDNM - Ngược lên dòng trên để về đích sớm;
(4) Thiết
lập chiến lược PMTDNM: Nhân tố cốt lõi và khuyến cáo
chiến thuật.
QUI TRÌNH MỨC CAO CHO VIỆC MỞ
NGUỒN CÁC MÃ SỞ HỮU ĐỘC QUYỀN
Việc
mở nguồn cho một công nghệ sở hữu độc quyền có
liên quan tới rất nhiều điều hơn là chỉ làm cho mã
nguồn sẵn sàng. Có nhiều cách thức có khả năng cho
việc xây dựng hoặc ra nhập các cộng đồng sẽ sử
dụng và giúp duy trì dự án, điều này giải thích vì
sao nên là một qui trình được sắp xếp tốt và có cân
nhắc thận trọng. Hình 1 minh họa qui trình cơ bản cho
việc mở nguồn công nghệ sở hữu độc quyền. Trong các
phần sau đó, chúng ta sẽ thảo luận về một loạt các
nhiệm vụ có liên quan tới từng hoạt động được chỉ
ra trong hình này.
Hình
1: Mô hình cơ bản, mức cao cho việc mở nguồn công nghệ
sở hữu độc quyền.
MỞ NGUỒN VÌ NHỮNG LÝ DO ĐÚNG
Khi
mở nguồn công nghệ sở hữu độc quyền, điều quan
trọng phải đánh giá tỉ mỉ những lý do cho sự biến
đổi đó, và sắp đặt những động lực và các tính
toán nội bộ một cách phù hợp. Mở nguồn vì những lý
do sai trái có thể có tác động ngược so với mong đợi
ban đầu. Hãy xem xét những lựa chọn thay thế bổ sung
trước khi tạo một dự án mới hoàn toàn, như việc ra
nhập một dự án nguồn mở đang tồn tại, hoặc cộng
tác với các đối tác kinh doanh hiện hành để cùng cộng
tác tạo ra một dự án nguồn mở mới. Những nhiệm vụ
cơ bản đề cập tới trong giai đoạn sớm này bao gồm:
- Đánh giá khả năng tham gia vào một dự án nguồn mở đang tồn tại
- Đánh giá khả năng của công ty khởi xướng và duy trì dự án có sử dụng mô hình nguồn mở
- Đánh giá khả năng các công ty khác có thể tham gia dự án từ đầu
- Đánh giá các yếu tố thành công và thiết lập các đo đếm phù hợp cho dự án nguồn mở
NHỮNG CHUẨN BỊ NỘI BỘ
Khi
chuẩn bị mở nguồn cho mã nội bộ, có 4 sự rà soát
lại chính nên xảy ra đồng thời: pháp lý, kỹ thuật,
nghiệp vụ và marketing.
- Rà soát lại về pháp lý đảm bảo rằng sở hữu trí tuệ chứa đựng trong mã nguồn sẽ được phát hành theo một qui trình sạch sẽ và có kỷ luật. Nên kiểm tra tính hợp lệ xem công ty có quyền phát hành tất cả các mã hay không, và nên bao gồm thương hiệu. Những nhiệm vụ cơ bản trong quá trình rà soát lại về pháp lý bao gồm:
- Cân nhắc tác động của việc mở nguồn đối với sở hữu trí tuệ của công ty bạn
- Đảm bảo tuân thủ đầy đủ với các giấy phép nguồn mở
- Lựa chọn một giấy phép nguồn mở cho mã nguồn sẽ được phát hành
- Quyết định liệu bạn có cần một Thỏa thuận của những Người đóng góp hay không
- Quyết định về bất kỳ cân nhắc nào có liên quan tới thương hiệu
- Rà soát lại về kỹ thuật để kiểm tra tính hợp lệ rằng mã nguồn đưa ra công khai có thể vận hành mà không có những lệ thuộc vào mã nguồn nội bộ hoặc các thực tiễn phát triển khác, và rằng nó không bao gồm mã nguồn của các bên thứ 3 mà công ty không thể phát hành. Nó nên bao gồm sự kiểm tra tính hợp lệ tất cả các lưu ý về giấy phép và bản quyền, và những bình luận mã riêng nên được bỏ đi.
- Loại bỏ những lệ thuộc sống còn vào các thành phần không công khai
- Cung cấp tài liệu và các ví dụ trường hợp điển hình (use case)
- Loại bỏ các bình luận nội bộ, các tham chiếu tới mã nguồn nội bộ khác, …
- Đảm bảo kiểu lập trình là nhất quán
- Cập nhật những lưu ý bản quyền trong các tệp mã nguồn
- Bổ sung lưu ý giấy phép trong các tệp mã nguồn
- Bổ sung văn bản giấy phép như một tệp trong thư mục gốc
- Rà soát lại về nghiệp vụ để đảm bảo rằng dự án được cấp vốn và có trách nhiệm đỡ đầu đầy đủ, ít nhất cho tới khi nó bắt đầu tự duy trì được. Những nhiệm vụ trong quá trình rà soát lại về nghiệp vụ bao gồm:
- Đảm bảo có một nhà vô địch doanh nghiệp cho dự án
- Đảm bảo có sự cam kết về các tài nguyên (những người duy trì và người phát triển)
- Đảm bảo có sự cam kết cho việc cấp vốn cho hạ tầng của dự án nguồn mở
- Rà soát lại về marketing thiết lập các chỉ dẫn cho việc xây dựng thương hiệu. Điều này là đặc biệt quan trọng, khi nó giúp đảm bảo cho một thông điệp nhất quán trong thị trường. Những nhiệm vụ cơ bản trong quá trình rà soát lại về marketing bao gồm:
- Thiết kế logo, sơ đồ màu, website, các việc phụ khác của dự án, …
- Chính thức hóa những chỉ dẫn xây dựng thương hiệu
- Đăng ký các tài khoản phương tiện xã hội cho dự án (Twitter, Facebook, LindedIn, …)
- Đăng ký các tên miền cho dự án
XÁC ĐỊNH SỰ ĐIỀU HÀNH VÀ
CÁC QUI TRÌNH CỦA DỰ ÁN
Điều
hành là qui trình theo đó dự án tiến hành ra các quyết
định về chiến lược, các phát hành, đường lối và
các ưu tiên phát triển. Việc ra quyết định nên là công
khai và mở, để giúp đảm bảo rằng tất cả những
người tham gia nhận thức được về những thay đổi đối
với dự án và để duy trì sự minh bạch. Điều quan
trọng phải quyết định sớm những tiêu chí nào phải
được đáp ứng để tham gia trong đơn vị điều hành dự
án.
Ở
giai đoạn này, những quyết định nên được chính thức
hóa về cách mà những tính năng và các lỗi sẽ được
theo dõi, cách mà mã nguồn sẽ được đệ trình, và ai
sẽ quản lý qui trình phát hành.
- Quyết định về điều hành dự án
- Chính thức hóa các qui trình đệ trình mã nguồn, các bản vá, các ý tưởng về tính năng, ...
- Thiết lập đội và qui trình quản lý phát hành
THIẾT LẬP HẠ TẦNG DỰ ÁN
Cộng
đồng nguồn mở đã phát triển và thích nghi rộng rãi
một tập hợp các công cụ cộng tác phân tán và quản
lý mã nguồn chất lượng cao. Khi tạo ra một dự án mới,
điều quan trọng phải sử dụng các công cụ đó, vì
chúng là tự do cho những người đóng góp và được các
lập trình viên hiểu tốt.
- Hệ thống kho mã nguồn
- Hệ thống theo dõi lỗi
- Website
- Các danh sách thư
- Wiki cho tài liệu cộng tác
- Các kênh IRC (chat) cho các cuộc thảo luận sống động (live)
- Môi trường xây dựng được tự động hóa, nếu có khả năng
KHAI TRƯƠNG VÀ DUY TRÌ
Công
việc với các đối tác kinh doanh chủ chốt, và tóm tắt
có liên quan tới các dự án nguồn mở để đảm bảo sự
hỗ trợ mạnh khi dự án chính thức khai trương. Đảm
bảo rằng hạ tầng, mã nguồn, mô hình điều hành, thông
tin giấy phép và các đội phát triển nội bộ ban đầu
của dự án tất cả được chính thức hóa trước khi
khai trương.
Khi
dự án được công bố, hãy biết trước rằng một số
lập trình viên nguồn mở đáng kể sẽ tải về mã nguồn
và hình thành những ấn tượng đầu tiên (và lâu dài)
về dự án.
Những
nhiệm vụ cơ bản trước khi khai trương bao gồm:
- Tóm tắt trước cho các đối tác khai trương
- Đảm bảo là tất cả hạ tầng của dự án đang chạy, có an ninh và khả năng mở rộng về phạm vi
- Đảm bảo các lập trình viên nội bộ tham gia và tiếp tục giám sát kênh IRC, các danh sách thư, ...
- Phát hành mã nguồn tuân theo mô hình phát triển nguồn mở
PHÁT TRIỂN CỘNG ĐỒNG CÁC
LẬP TRÌNH VIÊN
Sau
khi dự án được khai trương, điều cơ bản phải giám
sát khả năng tồn tại lâu dài của cộng đồng bên
ngoài.
Việc
xây dựng cộng đồng không xảy ra một cách tự động.
Trong những giai đoạn sớm của dự án, có thể cần
thiết phải tổ chức các sự kiện của các lập trình
viên hoặc các cuộc gặp với các nhà tài trợ tại các
hội nghị chính để xây dựng xung lượng.
Bổ
sung thêm, cực kỳ quan trọng phải quản lý những mong
đợi và làm thỏa mãn những bổn phận trách nhiệm đối
với sự điều hành và sự minh bạch của dự án.
Những
hoạt động cơ bản diễn ra bao gồm:
- Chỉ định một người quản lý cộng đồng hoặc bảo vệ cộng đồng
- Đảm bảo bất kỳ những thay đổi nào về đường hướng hoặc sự điều hành sẽ được giao tiếp một cách rõ ràng
- Tuân theo những thực tiễn tốt nhất của các cộng đồng tương tự khác
- Khuyến khích và cung cấp các cơ hội cho việc xây dựng cộng đồng mặt đối mặt
KẾT LUẬN
Có
nhiều cách thức để mở nguồn thành công cho công nghệ
sở hữu độc quyền. Danh sách các nhiệm vụ đưa ra tổng
quan mức cao qui trình đó, và có thể được sử dụng
như là cơ sở cho một kế hoạch nội bộ chi tiết hơn
của qui trình. Trong khi qui trình này có thể xem là phức
tạp, thì nhiều công ty đã thành công tuân theo những thủ
tục tương tự để mang mã nguồn nội bộ tới thị
trường như một dự án nguồn mở.
Chúng
ta đã đi hết các nội dung xung quanh mô hình phát triển
phần mềm tự do nguồn mở và cách thức mở mã nguồn
cho một phần mềm nguồn đóng. Tất cả những nội dung
này đều dựa vào các tài liệu mà Quỹ Linux phát hành
trong giai đoạn cuối năm 2011, đầu năm 2012. Để có thêm
thông tin về những tài liệu đó, hãy tới thăm website
của Quỹ Linux tại: http://www.linuxfoundation.org.
Trần
Lê
Bài
đăng trên tạp chí “Tin học và Đời sống” số tháng
07/2012, trang 62-64.
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.