How to choose open source solution

From LemonWiki共筆
Jump to navigation Jump to search

如何選擇開放原始碼、自由軟體的軟體方案

方案選擇的指標

  1. 釐清需求:清楚與定義自身需求,作為方案選擇的比較基準
  2. 版本更新和專案開發的活躍度:
    • 最近 (數個月內) 有更新軟體版本,而不是數年前才做最後一次更新。沒有人維護的專案,代表功能不會更新丶錯誤不會修正,也同時代表未來有資安的隱憂。
    • 以 GitHub 專案為例,點選專頁首頁 (1) 查看 「Changelog」 作者寫的版本更新、或者是 (2) 查看 「commits」檔案更新、(3) 觀察開發活躍度 e.g.: Contributors to NuCivic/dkan
    • 程式語言版本的支援程度: 例如該專案程式語言使用 PHP 撰寫,則可比對目前 PHP 版本的支援程度( PHP: Supported Versions)。當 PHP 核心開發團隊不支援 A 版,而該專案仍然使用該版本,則代表有 A 版本的漏洞問題。
    • 軟體測試: 專案有無單元測試(unit test)、測試覆蓋率報告(test coverage report)
  3. 問題回覆:使用者遇到問題時,有人協助回覆。
    • 查看郵件列表 (mailing list) 的討論頻率。
    • 以 GitHub 專案為例,點選「issues」查看使用者提出的問題,同時觀察是否有人協助回覆和解決問題。
  4. 多人在用(Popularity):
    • 有比較多使用者,代表遇到問題時,可以從網路上 (例如問答服務) 找到比較多的支援文件。
    • 以 GitHub 專案為例,則可根據被收藏/星星數 (star) 的數量,作為熱門度的衡量指標 e.g. Stargazers · jackmoore/colorbox · GitHub
  5. 授權議題:如果想將開放原始碼的軟體方案,整合在公司的商業服務內,需考慮著作權授權與商業應用是否相容。
  6. 維護或轉換方案的成本:
    • 選擇免費的開放原始碼的軟體方案,不代表不需要任何維護費用。
    • 該方案所需要的安裝與執行環境
    • 要轉換到別的方案的成本:(1) 使用者資料是否允許匯出? 例如 Google takeout 資料工具、 (2) 是否允許匯出成自由檔案格式(open file format),而非強迫使用者必須使用舊軟體方案才能開啟的專屬檔案格式。
  7. 中文議題:可以使用繁體中文、多國語言 (unicode)
  8. (選擇性考慮的問題) 使用新或穩定的技術:例如試用 demo 版本功能、或查看截圖,確認軟體方案使用的技術或是否支援行動裝置。

延伸閱讀

開放原始碼新聞

相關新聞聯播
Failed to load RSS feed from https://news.google.com.tw/news/feeds?pz=1&cf=all&ned=tw&hl=zh-TW&q=%E9%96%8B%E6%94%BE%E5%8E%9F%E5%A7%8B%E7%A2%BC&cf=all&scoring=n&output=rss: Error parsing XML for RSS

Powered by Google News