054.1 Bài 1
Chứng chỉ: |
Open Source Essentials |
---|---|
Phiên bản: |
1.0 |
Chủ đề: |
054 Mô hình kinh doanh Mã nguồn Mở |
Mục tiêu: |
054.1 Mô hình kinh doanh Phát triển Phần mềm |
Bài học: |
1 trên 1 |
Giới thiệu
Theo truyền thống, các công ty phân phối phần mềm độc quyền (hay còn được gọi là phần mềm mã nguồn đóng) có mô hình kinh doanh tương đối đơn giản: họ bán giấy phép sử dụng phần mềm dưới dạng trar phí một lần hoặc liên tục theo mô hình đăng ký.
Tuy nhiên khi trải qua nhiều thập kỷ, thị trường phần mềm đã thay đổi hoàn toàn và khách hàng ngày nay chỉ muốn trả một vài đô la cho một ứng dụng để nhận được các bản cập nhật miễn phí trọn đời.
Kết quả là cách tiếp cận cũ của phần mềm độc quyền không còn mang lại lợi nhuận nữa, và ngay cả các công ty từng xây dựng toàn bộ mô hình kinh doanh của mình dựa trên việc bán giấy phép phần mềm cũng đã đa dạng hóa mô hình kinh doanh của họ bằng cách tích hợp nhà cung cấp, hỗ trợ, dịch vụ, phần mềm dưới dạng dịch vụ (SaaS), dịch vụ lưu trữ đám mây/ảo hoá và các sản phẩm phần cứng chạy phần mềm (điện thoại, máy tính xách tay, máy chủ, máy in, ô tô, đồng hồ thông minh, v.v.).
Ngược lại, giấy phép phần mềm mã nguồn mở và tự do trao cho tất cả mọi người quyền sử dụng, nghiên cứu, sửa đổi và tái phân phối phần mềm mà không phải trả phí. Vì vậy, các doanh nghiệp dựa trên mã nguồn mở chưa bao giờ có lựa chọn kinh doanh trên giấy phép sử dụng phần mềm. Người dùng không thể mong chờ việc lấy tác phẩm của người khác từ một dự án mã nguồn mở và kiếm được lợi nhuận khổng lồ bằng cách cung cấp sản phẩm mang phạm vi công cộng đó cho khách hàng của mình; lý do là bởi khách hàng cũng có thể nhận được phần mềm tương tự mà không phải trả phí trực tiếp từ dự án. Thay vào đó, các công ty cung cấp phần mềm mã nguồn mở và tự do sử dụng các mô hình kinh doanh thay thế. Các mô hình kinh doanh phần mềm thành công nhất thường kết hợp nhiều dạng giá trị khách hàng.
Trong bài học này, chúng ta sẽ cùng xem xét lý do tại sao một công ty lại chọn một số mô hình kinh doanh phần mềm này cho các phần mềm mã nguồn mở cũng như những gì họ phải đánh đổi cho những lựa chọn này.
Mục tiêu và lý do phát hành Phần mềm hoặc Nội dung tuân theo Giấy phép mở
Có nhiều lý do khiến các nhà phát triển chọn xây dựng doanh nghiệp dựa trên mã nguồn mở: phần mềm có thể đáp ứng một nhu cầu, giải quyết một vấn đề hoặc cung cấp một số tính năng mà nhà phát triển cung cấp cho khách hàng. Một công ty có thể tiết kiệm rất nhiều thời gian và tiền bạc bằng cách chia sẻ công việc trên phần mềm với các nhà phát triển khác thay vì viết lại từ đầu cùng một phần mềm. Việc tham gia vào dự án là một khoản đầu tư được kỳ vọng sẽ mang lại kết quả là các phần mềm có thể sử dụng được, ổn định, đáng tin cậy, an toàn và được bảo trì tốt.
Nhiều nhà phát triển mã nguồn mở có kỳ vọng sẽ nhận được các bản sửa lỗi từ khách hàng của họ. Một số khách hàng thậm chí còn đưa những đóng góp của họ lên một tầm cao hơn bằng cách thêm các tính năng mới, chuyển phần mềm sang một môi trường mới hoặc thực hiện những cải tiến quan trọng khác. Cả việc sửa lỗi và cải tiến ở cấp độ cao hơn đều sẽ nâng cao phần mềm gốc. Nếu khách hàng đóng góp những thay đổi đó lại cho các nhà phát triển ban đầu thì những thay đổi này có thể khiến mã trở nên càng thu hút các khách hàng tiềm năng khác hơn, ngoài ra còn khuyến khích việc ứng dụng mã.
Nhưng một công ty không thể mong chờ nhận được sự đóng góp và chú ý chỉ bằng cách đưa mã của mình lên các trang như GitHub hoặc GitLab. Khuyến khích các nhà phát triển tham gia dự án là một chuyện, nhưng giữ cho họ nhiệt tình với dự án lại là chuyện khác — vì vậy, đừng đánh giá thấp khối lượng công việc để có được sự đóng góp từ cộng đồng. Một công ty cần nỗ lực tuyển dụng các nhà phát triển, cố vấn cho họ, động viên họ và kiểm tra lỗi trong mã của họ.
Một lý do khác để mở mã là tạo ra một tiêu chuẩn ngành. Việc chia sẻ mã mở có thể mang lại khả năng tương tác tốt hơn cũng như các lợi ích khác. Nhóm phát triển mã có kiến thức chuyên môn cao có thể cho phép họ định hướng tương lai của dự án và được trả tiền để hỗ trợ những người khác sử dụng mã.
Một số công ty mở mã của họ để nhằm tạo niềm tin cho khách hàng. Trước hết, khách hàng biết rằng họ có thể tiếp tục sử dụng và cải tiến mã nếu công ty thất bại hoặc quyết định thâm nhập một thị trường khác và từ bỏ mã. Thứ hai, khách hàng có thể tự mình kiểm tra chất lượng và tính bảo mật của mã hoặc nhờ một chuyên gia độc lập thực hiện rà soát; điều này thường không thể thực hiện được đối với phần mềm độc quyền đóng.
Cuối cùng, một công ty có thể đã áp dụng một cơ sở mã đã là mã nguồn mở sẵn và lên kế hoạch xây dựng hoạt động kinh doanh thương mại dựa trên đó. Giấy phép có thể sẽ yêu cầu công ty phân phối mã nguồn của các thay đổi cho bất kỳ người dùng cuối nào của chương trình.
Tóm lại, một số lý do nên để mở mã của một công ty là:
-
Xây dựng dựa trên một dự án phần mềm tự do sẵn có
-
Hưởng lợi từ sự đổi mới và đóng góp của khách hàng
-
Tạo niềm tin nơi khách hàng
-
Quảng bá mã theo một tiêu chuẩn ngành
Các Mô hình Kinh doanh phổ biến và Dòng doanh thu
Trong nhiều thập kỷ qua, ngành công nghiệp phần mềm đã phát hiện ra nhiều mô hình kinh doanh thích hợp cho các doanh nghiệp độc quyền cũng như mã nguồn mở. Ở phần này, chúng ta sẽ tập trung vào những mô hình phổ biến nhất được sử dụng hiện nay trong số các nhà phát triển mã nguồn mở.
Một mô hình kinh doanh phổ biến trong cả phần mềm độc quyền và mã nguồn mở là tính phí hỗ trợ. Khách hàng có thể sẽ gặp khó khăn khi cài đặt và định cấu hình phần mềm, sửa lỗi, cần thêm các tính năng mới để sử dụng riêng và quản lý hệ thống của họ. Nhân viên phát triển phần mềm là một nguồn lực hỗ trợ tuyệt vời. Trên thực tế, nhân viên này có thể đã cung cấp nhiều hỗ trợ miễn phí trên các diễn đàn thảo luận về phần mềm.
Do đó, trong mô hình hỗ trợ, khách hàng sẽ trả tiền cho nhà cung cấp để cài đặt phần mềm mã nguồn mở trên phần cứng của khách hàng (được gọi là phân phối tự lưu trữ) hoặc có quyền truy cập vào phần mềm trên phần cứng của nhà cung cấp (mô hình dựa trên đám mây). Hợp đồng hỗ trợ đảm bảo rằng khách hàng sẽ nhận được sự trợ giúp kịp thời từ công ty cho những nhu cầu phức tạp của họ. Các công ty sử dụng mô hình này thường cung cấp dịch vụ trả trước và khách hàng sẽ phải trả tiền định kỳ.
Một mô hình kinh doanh khác dành cho phần mềm độc quyền — thực ra là một tập hợp các mô hình chồng chéo — được gọi là freemium - một thuật ngữ được phổ biến rộng rãi vào năm 2009 bởi tác giả kiêm biên tập viên Chris Anderson; nó dựa trên một mô hình kinh doanh cũ hơn nhiều được gọi là dao cạo và lưỡi dao (razor and blades). Trong mô hình dao cạo và lưỡi dao, khách hàng sẽ trả rất ít tiền cho sản phẩm cơ bản (ví dụ như một chiếc dao cạo râu hoặc máy in) và sau đó trả thêm tiền cho các bộ phận cần thiết được thiết kế dễ hao mòn (lưỡi dao cạo hay hộp mực cho máy in).
Trong mô hình freemium, khách hàng có thể sử dụng miễn phí một sản phẩm ở một mức độ nhất định và được khuyến khích trả tiền cho nhiều tính năng hơn nếu họ thấy sản phẩm đó hữu ích. Chúng ta có thể đã biết đến các trang tin tức trực tuyến cung cấp một số lượng bài báo miễn phí nhất định và yêu cầu độc giả đăng ký theo dõi để có được toàn quyền truy cập vào trang web của họ. Đây là một ví dụ điển hình về mô hình freemium. Một ví dụ khác là một nền tảng trò chơi cung cấp trò chơi cơ bản miễn phí nhưng sẽ tính tiền cho các tính năng phụ cụ thể.
Nhiều công ty phần mềm độc quyền khác lại căn cứ mô hình freemium của họ theo thời gian: dùng thử phần mềm miễn phí trong ba tháng và sau đó trả tiền để tiếp tục sử dụng phần mềm đó.
Các công ty phần mềm độc quyền đôi khi sẽ sử dụng một phiên bản khác của mô hình freemium được gọi là lõi mở (open core). Trong mô hình lõi mở, một số tính năng cơ bản nhất định ("lõi" của sản phẩm) sẽ là nguồn mở và các tính năng độc quyền bổ sung sẽ có giấy phép.
Thông thường, phần mở sẽ có đầy đủ chức năng nhưng sẽ phù hợp nhất cho các nhà nghiên cứu hoặc người dùng cá nhân và có thể trở nên khó quản lý khi có nhiều người chia sẻ nó trong toàn doanh nghiệp. Do đó, các tính năng độc quyền có thể bao gồm các giao diện web thuận tiện cho việc quản trị, các công cụ kế toán và cộng tác cũng như những yếu tố đặc biệt quan trọng khác đối với các trang web lớn.
Mặc dù các mô hình kinh doanh lõi mở sử dụng một số phần mềm mã nguồn mở nhưng khách hàng vẫn đủ thông minh để nhận ra rằng thực chất toàn bộ sản phẩm vẫn là độc quyền. Vì vậy, trong khi lõi mở có thể có lợi thế trong việc xây dựng dự án dựa trên mã nguồn mở hiện có, nó lại không cung cấp bất kỳ lợi thế nào khác của phần mềm mã nguồn mở. Mô hình kinh doanh lõi mở không tạo dựng được niềm tin với khách hàng, không truyền cảm hứng cho họ đóng góp vào phần mềm cơ sở, không cung cấp cho khách hàng quyền truy cập để kiểm tra mã, xây dựng mạng lưới các nhà phát triển lành nghề bên ngoài công ty chính hoặc làm việc theo tiêu chuẩn ngành. Tệ hơn nữa, mô hình phát triển lõi mở có cùng chi phí phát triển mà không có những lợi ích để khiến nó trở nên đáng giá. Các công ty thử nghiệm mô hình kinh doanh lõi mở thường thất vọng về kết quả và nhiều công ty sau đó đã chuyển sang mô hình độc quyền thuần túy.
Các công ty cũng có thể xây dựng một dịch vụ web dựa trên cơ sở mã nguồn mở hoặc độc quyền trong mô hình Phần mềm dưới dạng dịch vụ (SaaS). Khách hàng sẽ thanh toán theo tháng hoặc theo năm.
Nhiều công ty điều hành dịch vụ web SaaS hoặc cung cấp ứng dụng di động sẽ kiếm tiền thông qua quảng cáo. Một số công ty cũng thu thập dữ liệu về người dùng thông qua dịch vụ hoặc ứng dụng và bán dữ liệu này cho các bên thứ ba mong muốn sử dụng dữ liệu đó để quảng cáo. Tuy nhiên, quảng cáo có thể dễ gây khó chịu. Việc bán dữ liệu hiện đang gây tranh cãi và một số quốc gia đã đặt ra các hạn chế trong việc thu thập dữ liệu.
Cuối cùng, các công ty có thể phát triển và phát hành phần mềm mã nguồn mở mà không cần cố gắng thu lại bất kỳ một loại doanh thu nào từ nó. Mô hình này dành cho các công ty có doanh thu từ những thứ khác ngoài phần mềm. Ví dụ: các công ty ô tô sẽ hợp tác để tạo ra một lượng lớn các phần mềm miễn phí để chạy trên ô tô của họ (ngày nay đã được vi tính hóa hoàn toàn).
Các công ty phần mềm lớn có được doanh thu từ các dịch vụ độc quyền như Google và Amazon đôi khi sẽ phát hành phần mềm quản trị hoặc các công cụ hữu ích khác dưới dạng mã nguồn mở vì những công cụ này không phải là trọng tâm trong hoạt động kinh doanh cốt lõi của họ. Các tổ chức phát hành mã theo giấy phép mở được hưởng lợi từ phản hồi, báo cáo lỗi và các cải tiến tính năng do cộng đồng mã nguồn mở cung cấp.
Sử dụng Phần mềm Mã nguồn Mở trong các Công nghệ và Dịch vụ khác
Có rất nhiều công ty kết hợp phần mềm mã nguồn mở vào sản phẩm hoặc nền tảng web của họ. Suy cho cùng, phần mềm mã nguồn mở chính là phần mềm miễn phí! Nhưng đó không phải là lý do quan trọng nhất (và có lẽ thậm chí không phải là lý do chính đáng) để ứng dụng chúng. Quan trọng hơn, phần lớn các phần mềm này đều có chất lượng cao (mặc dù các nhóm phát triển nên xem xét cẩn thận trước khi ứng dụng) và thậm chí có thể trở thành một tiêu chuẩn ngành.
Một ưu điểm khác của phần mềm mã nguồn mở là nó vẫn sẽ sẵn có nếu các nhà phát triển hoặc cộng đồng xung quanh nó rời đi.
Tuy nhiên, phần mềm mã nguồn mở và tự do cũng đi kèm với trách nhiệm. Phần này sẽ nhanh chóng liệt kê các vấn đề chính cần được xem xét trước khi ứng dụng chúng.
Vấn đề đầu tiên áp dụng cho bất kỳ phần mềm hoặc công cụ nào của bên thứ ba đang được xem xét áp dụng: liệu nó có đáp ứng được nhu cầu của người dùng hiện tại và khi công ty phát triển hay không? Phần mềm có được hỗ trợ bởi một cộng đồng mạnh mẽ có thể cung cấp hỗ trợ kỹ thuật và tiếp tục phát triển phần mềm không? Phần mềm có lỗ hổng bảo mật nghiêm trọng nào không?
Tiếp theo, các nhà quản lý sẽ phải xem xét trách nhiệm của công ty khi họ kết hợp một dự án mã nguồn mở vào phần mềm của mình. Nếu các nhà phát triển xây dựng mã mới dựa trên một mã nguồn mở, họ nên kiểm tra xem mình được yêu cầu phải làm gì theo như giấy phép của phần mềm mã nguồn mở đó. Một số giấy phép sẽ yêu cầu nhà phát triển phân phối mã nguồn của những thay đổi của chính họ cho người dùng cuối theo cùng giấy phép tự do giống như cơ sở mã gốc.
Ngay cả khi một nhà phát triển không bắt buộc phải phân phối mã nguồn đã qua sửa đổi của họ và đang tạo ra một sản phẩm độc quyền dựa trên mã nguồn mở, nhà phát triển đó có thể sẽ muốn đóng góp lại một số thứ nhất định, chẳng hạn như các bản sửa lỗi hay cải tiến mã. Bằng cách đóng góp những bản sửa lỗi và cải tiến này, nhà phát triển đóng góp đã cho phép dự án kết hợp các đóng góp (nếu các nhà phát triển lõi lựa chọn như vậy) và duy trì chúng. Các nhà phát triển không có đóng góp có thể sẽ phải áp dụng lại các bản sửa lỗi và cải tiến mỗi khi họ nâng cấp lên một phiên bản mới của mã gốc.
Vì sự phụ thuộc này cũng như một số các lý do khác, các nhân viên công ty nên cân nhắc việc trở thành thành viên tích cực của cộng đồng phát triển mã. Các nhà phát triển có thể tìm hiểu thêm về mã bằng cách tham gia và từ đó có thể giúp đặt ra định hướng phát triển trong tương lai. Tất nhiên, tổ chức sẽ phải trả tiền cho thời gian mà các nhà phát triển dành cho các hoạt động cộng đồng. Đối với một công ty nghiêm túc trong việc sử dụng phần mềm tự do (free), việc này lại không hề miễn phí (free).
Những cân nhắc về Phần mềm Mã nguồn Mở từ góc độ của Khách hàng
Việc mở mã rất có lợi cho khách hàng vì nhiều lý do, nhưng nó cũng ám chỉ một mối quan hệ khác giữa công ty và khách hàng. Khách hàng nên hiểu rõ lợi ích cũng như ý nghĩa của mối quan hệ này.
Lợi ích chính đối với khách hàng (đã được đề cập tới trước đó trong bài học này) là họ có thể tin tưởng hơn vào phần mềm. Họ biết rằng nó sẽ không biến mất. Nhiều công ty độc quyền khi đóng cửa hoặc đột ngột chuyển sang một hướng đi mới sẽ buộc khách hàng của họ gấp rút chuyển sang một sản phẩm khác mà thậm chí có thể không thật sự tương thích với nhu cầu của khách hàng. Trái với đó, phần mềm mã nguồn mở không phụ thuộc vào bất kỳ một tổ chức nào. Nếu đó là một dự án quan trọng, những thành viên khác trong cộng đồng sẽ tiếp tục dự án khi các nhà phát triển ban đầu rời đi.
Khách hàng cũng có thể kiểm tra chất lượng và tính bảo mật của phần mềm mã nguồn mở. Họ có thể tự xác định xem việc thêm các tính năng của riêng mình hoặc chuyển sang một môi trường mới có dễ dàng hay không.
Vì mã nguồn trong một dự án mã nguồn mở được mở cho tất cả mọi người nên nhiều nhà phát triển có thể tự mình làm quen với nó. Đối với một dự án sở hữu một cộng đồng đông đảo đứng đằng sau, sẽ có rất nhiều người cung cấp hỗ trợ trên diễn đàn. Thông thường, việc thuê người hỗ trợ phần mềm hoặc quản lý và sử dụng nó trong công ty sẽ tương đối dễ dàng vì các nhân viên mới đều đã biết về mã.
Khách hàng là những người phụ thuộc vào mã để làm việc hàng ngày; họ sẽ rất yên tâm khi biết rằng mình có thể tự sửa lỗi hoặc thuê ai đó làm việc này. Một lỗi lạ chỉ ảnh hưởng đến một số khách hàng có thể sẽ phải mất rất nhiều năm mới được nhóm phát triển cốt lõi khắc phục; điều này thường xuyên khiến cho người sử dụng phần mềm độc quyền rất khó chịu. Ngoài ra, khi có sẵn mã nguồn, chúng ta có thể xác định được lỗi và đề xuất cách khắc phục sớm hơn.
Còn mối quan hệ giữa công ty và khách hàng thì sao? Công ty có thể chọn thiết lập một mối quan hệ giống hệt với một mối quan hệ được cung cấp bởi một công ty phần mềm độc quyền điển hình: cung cấp cho khách hàng các bản cập nhật thường xuyên và một hợp đồng hỗ trợ. Khách hàng sẽ không bao giờ phải xem tới mã nguồn hoặc tham gia các diễn đàn cộng đồng.
Tuy nhiên, hầu hết khách hàng sẽ được hưởng lợi từ những cơ hội mà chỉ các dự án mã nguồn mở mới có thể mang lại. Họ có thể cho phép các nhà phát triển của riêng họ đóng góp cả thông tin lẫn mã. Những sự đóng góp và tham gia như vậy sẽ giúp nhân viên hiểu sâu hơn, giúp họ tuyển dụng nhân viên mới hiệu quả hơn và mang lại cho họ tiếng nói trong sự phát triển ở tương lai.
Cơ cấu Chi phí và Đầu tư
Nhu cầu về lập trình viên hiện đang tăng cao; vì vậy, bất kỳ một nỗ lực phát triển phần mềm nào cũng sẽ rất tốn kém. Nhu cầu về những người biết rõ về các dự án mã nguồn mở lớn thậm chí còn cao hơn vì những cơ sở mã đó được sử dụng rất rộng rãi.
Một dự án mã nguồn mở có thể mang lại các tiềm năng về mặt tiết kiệm chi phí vì các tổ chức và cá nhân khác nhau có thể cùng kết hợp trong một cơ sở mã chung. Nhưng việc thực hiện một dự án như vậy lại sẽ gây ra những chi phí mới.
Nếu một công ty mở một dự án được phát triển nội bộ, công ty đó sẽ phải đầu tư nhắm tới mục đích phục vụ một cộng đồng lớn hơn (có thể là trên toàn thế giới). Một số chức năng đáp ứng nhu cầu kinh doanh hạn hẹp của công ty có thể sẽ phải được xem xét lại để chúng cũng có thể phục vụ các hoạt động kinh doanh khác.
Nếu chất lượng của mã thấp hoặc khó xử lý, có khả năng công ty không nên mở mã đó vì những cộng tác viên cũng như các khách hàng tiềm năng sẽ quan ngại về vấn đề chất lượng. Dù sao thì các nhà phát triển cũng cần phải khắc phục những sự cố này vì phần mềm được mã hóa kém rất dễ hỏng hóc: khó cập nhật các tính năng mới và có xu hướng phát triển ra các lỗi phức tạp khó sửa. Những vấn đề này được gọi là món nợ kỹ thuật và chúng nên được khắc phục càng sớm sẽ càng tốt cho tất cả mọi người dùng.
Cuối cùng, chúng ta sẽ phải ngạc nhiên khi biết một công ty có thể thường xuyên nhúng các bí mật thương mại, mật khẩu, tài liệu tham khảo cá nhân của các cá nhân hoặc thông tin nhạy cảm khác vào mã nguồn. Các nhà phát triển sẽ phải đầu tư thời gian để loại bỏ những lỗ hổng như vậy. Dù thế nào thì mật khẩu, khóa API, chứng chỉ và thông tin xác thực để truy cập đám mây không bao giờ nên nằm ở trong mã; chúng phải được quản lý bên ngoài thông qua một dịch vụ an toàn.
Giả sử một công ty đã mở mã của mình và hy vọng sẽ thu được lợi ích từ những đóng góp từ bên ngoài. Một số khách hàng sẽ trả tiền cho việc bảo trì cũng như các tính năng mới. Những khách hàng khác có thể sẽ đưa các nhà phát triển của riêng họ vào dự án, nhưng nhóm phát triển cốt lõi cũng sẽ phải phân bổ thời gian để hỗ trợ họ. Nhóm phát triển cốt lõi cần hướng dẫn những người ở bên ngoài về mã và các tiêu chuẩn mã hóa liên quan. Nhóm này cũng nên hướng dẫn những nhà phát triển đóng góp bên ngoài về những gì cần thêm vào và nơi để gửi lại nhận xét của họ về mã.
Hãy để mắt tới những người có năng lực ở bên ngoài nhóm phát triển. Những cá nhân này có thể là những tân binh đáng giá cho đội ngũ nòng cốt. Họ có thể sở hữu một lượng kiến thức đáng kể và sẽ muốn tham gia vào nhóm.
Khi một nhóm nhà phát triển được trả tiền trong khi những người khác đang tình nguyện cống hiến thời gian của họ, các tình nguyện viên này có thể sẽ cảm thấy mình đang bị lợi dụng hoặc đặt ra câu hỏi về lý do tại sao họ nên đóng góp. Mỗi một nhà phát triển đóng góp, dù là cá nhân tình nguyện hay tổ chức, đều phải trải qua những kiểu suy nghĩ tương tự để quyết định lý do tại sao họ lại đóng góp.
Mã tự do không hề miễn phí, ngay cả khi nó không mang chi phí cấp phép. Nó chỉ đơn giản là một mô hình phát triển khác biệt.
Bài tập Hướng dẫn
-
Mã nguồn mở cải thiện niềm tin của khách hàng vào phần mềm như thế nào?
-
Tại sao các công ty bị cám dỗ bởi việc sử dụng một mô hình kinh doanh lõi mở, và tại sao mô hình đó lại không mang lại các lợi ích của phần mềm mã nguồn mở?
-
Phân phối tự lưu trữ là gì?
-
Những loại trợ giúp điển hình mà các nhà phát triển cung cấp cho những nhà phát triển đóng góp bên ngoài của các dự án mã nguồn mở của họ là gì?
Bài tập Mở rộng
-
Bạn đang xem xét việc xây dựng một sản phẩm độc quyền dựa trên một dự án mã nguồn mở. Bạn sẽ xem xét những yếu tố nào để đưa ra quyết định?
-
Bạn đã xây dựng một số sản phẩm tính phí đăng ký dựa trên một dự án mã nguồn mở. Bạn sẽ làm gì nếu giấy phép mã nguồn mở yêu cầu bạn đóng góp toàn bộ mã của mình lại cho dự án? Ngoài ra, bạn đã thêm hỗ trợ cho một số giao thức truyền thông mới vào dự án mã nguồn mở để hỗ trợ các nhu cầu độc quyền của mình. Nếu được lựa chọn, bạn có yêu cầu dự án mã nguồn mở tích hợp hỗ trợ giao thức này vào mã lõi của họ không?
Tóm tắt
Trong bài học này, chúng ta đã học được giá trị của việc mở mã nguồn. Chúng ta đã xem xét các mô hình kinh doanh phổ biến được sử dụng ngày nay và tầm quan trọng của việc hiểu về ảnh hưởng của giấy phép mã. Chúng ta cũng đã tìm hiểu về các vấn đề cần cân nhắc khi kết hợp mã nguồn mở vào doanh nghiệp của mình cũng như việc mã nguồn mở mang lại lợi ích như thế nào cho khách hàng của mình. Chúng ta cũng đã học về việc chi phí phát triển mã nguồn mở khác với chi phí phát triển phần mềm độc quyền như thế nào.
Đáp án Bài tập Hướng dẫn
-
Mã nguồn mở cải thiện niềm tin của khách hàng vào phần mềm như thế nào?
Khách hàng có thể kiểm tra chất lượng và tính bảo mật của mã. Họ cũng có thể chắc chắn rằng mình vẫn có thể tiếp tục sử dụng mã nếu các nhà phát triển ban đầu ngừng hỗ trợ mã đó.
-
Tại sao các công ty bị cám dỗ bởi việc sử dụng một mô hình kinh doanh lõi mở, và tại sao mô hình đó lại không mang lại các lợi ích của phần mềm mã nguồn mở?
Thoạt nhìn, lõi mở có vẻ như sẽ cung cấp tất cả mọi lợi ích của phần mềm mã nguồn mở, đồng thời cho phép một công ty vẫn sử dụng mô hình kinh doanh độc quyền bán giấy phép sử dụng phần mềm. Trên thực tế, mô hình kinh doanh lõi mở không mang lại được những lợi thế của mã nguồn mở trong khi vẫn phải chịu tất cả các chi phí gia tăng của việc phát triển mã mở.
-
Phân phối tự lưu trữ là gì?
Phân phối tự lưu trữ có nghĩa là một phiên bản phần mềm có thể chạy trên thiết bị của chính khách hàng.
-
Những loại trợ giúp điển hình mà các nhà phát triển cung cấp cho những nhà phát triển đóng góp bên ngoài của các dự án mã nguồn mở của họ là gì?
Các nhà phát triển của một dự án thường đào tạo và cố vấn cho những nhà phát triển đóng góp bên ngoài, cũng như kiểm tra xem những đóng góp của họ có đáp ứng các tiêu chuẩn về chất lượng và mã hóa của nhóm hay không.
Đáp án Bài tập Mở rộng
-
Bạn đang xem xét việc xây dựng một sản phẩm độc quyền dựa trên một dự án mã nguồn mở. Bạn sẽ xem xét những yếu tố nào để đưa ra quyết định?
Đầu tiên, hãy quyết định xem phần mềm mã nguồn mở có đáp ứng được nhu cầu của bạn hay không. Hãy kiểm tra chất lượng của nó, các lỗi bảo mật đã được báo cáo công khai và tiềm lực của cộng đồng xung quanh nó. Hãy kiểm tra giấy phép cẩn thận để xem liệu nó có yêu cầu bạn chia sẻ các sửa đổi của mình trên mã hay không. Hãy xác định mức độ mà bạn mong muốn tham gia vào cộng đồng của dự án mã nguồn mở cũng như vai trò của các nhà phát triển của bạn trong cộng đồng đó.
-
Bạn đã xây dựng một số sản phẩm tính phí đăng ký dựa trên một dự án mã nguồn mở. Bạn sẽ làm gì nếu giấy phép mã nguồn mở yêu cầu bạn đóng góp toàn bộ mã của mình lại cho dự án? Ngoài ra, bạn đã thêm hỗ trợ cho một số giao thức truyền thông mới vào dự án mã nguồn mở để hỗ trợ các nhu cầu độc quyền của mình. Nếu được lựa chọn, bạn có yêu cầu dự án mã nguồn mở tích hợp hỗ trợ giao thức này vào mã lõi của họ không?
Nếu dự án không yêu cầu bạn chia sẻ những thay đổi về mã, có lẽ bạn sẽ không chia sẻ để có thể tính phí đăng ký dễ dàng hơn cho một sản phẩm độc quyền. Nếu bạn phải chia sẻ mã của mình, hãy cung cấp tính năng đăng ký cho một bản phân phối tự lưu trữ. Ngay cả khi bạn không cần chia sẻ mã của mình, bạn có thể sẽ muốn yêu cầu dự án tích hợp hỗ trợ của bạn cho các giao thức truyền thông để bạn không phải triển khai lại phần hỗ trợ đó mỗi khi cài đặt một bản phát hành mới của mã nguồn.