Black Duck Software協助企業妥善管理再利用開放原始碼軟體 智慧應用 影音
DForum0515
緯謙科技

Black Duck Software協助企業妥善管理再利用開放原始碼軟體

  • 吳怡陵台北

BDS依照軟體開發流程推出end-to-end解決方案 – Black Duck Suite OSS Logistics,讓企業可以透過「選擇(choose)」、「掃描(scan)」、「審核 (approve)」、「存放(inventory)」、「安全(secure)」與「交付(deliver)」6步驟有效因應、解決使用開放原始碼所帶來的種種問題。
BDS依照軟體開發流程推出end-to-end解決方案 – Black Duck Suite OSS Logistics,讓企業可以透過「選擇(choose)」、「掃描(scan)」、「審核 (approve)」、「存放(inventory)」、「安全(secure)」與「交付(deliver)」6步驟有效因應、解決使用開放原始碼所帶來的種種問題。

根據統計,財富雜誌發布的100家成長最快速的企業中,有27家企業採用開放原始碼軟體(Open Source Software;OSS),從產業別來看,在全球前10大軟體公司中就有7家企業採用開放原始碼軟體,其次,全球前8大手機供應商中有6家透過開放原始碼軟體進行產品研發,而且在全球前10大投資銀行中,至少有6家銀行業者導入開放原始碼軟體。

根據IDC台灣於日前釋出的「2014年CIO調查報告」顯示,有76.6%的企業表示將在2015年導入以開放原始碼軟體為核心的雲端服務,例如OpenStack 。事實上,不止OpenStack專案,包括行動應用服務、巨量資料分析、社群服務與物聯網等新科技應用都是以開放原始碼軟體為基礎進行加值開發。

Black Duck Software (BDS)亞太地區總經理陳澤輝。

Black Duck Software (BDS)亞太地區總經理陳澤輝。

「由於雲端、巨量資料分析、行動與物聯網等新應用的發展極為迅速,很難有一間公司可以單憑己力完成所有軟硬體開發動作,往往需要透過社群、開放原始碼軟體加速產品開發速度。」

Black Duck Software (BDS)亞太地區總經理陳澤輝表示,「無論是Microsoft、Oracle、SAP、SAS、Salesforce.com等軟體業者,Dell、NEC、Fujitsu與Cisco等設備業者,Siemens、John Deere、IC設計與智慧型手機等製造業者,雅虎(Yahoo!)與Viacom等多媒體業者或者是金融與服務等企業客戶,為了降低成本與進入門檻,都會使用開放原始碼軟體進行各種開發工作。」

在這個前提下,如何有效管理開放原始碼軟體,甚至是依照客戶需求提供專業的諮詢顧問服務,將變得十分重要。鑑於此,BDS除推出內含Code Center、Code Sight、Protex、Export與Open HUB等模組的開放原始碼軟體管理方案「Black Duck Suite」,以及Black Duck KnowledgeBase與SPDX(Software Package Data Exchange)等產品,更進一步提供與開放原始碼軟體有關的顧問諮詢、技術支援與維護服務。

Black Duck助企業以6步驟因應8項開放原始碼軟體採用疑慮

根據BDS最新一份調查資料顯示,在全球前2,000大企業中,至少有30%的企業在未知的狀況下採用開放原始碼軟體,因而衍生安全疑慮甚至是不得不公開產品核心程式碼等問題發生。

舉例來說,製造業者若在不注意的狀況下採用了受GPL保護的開放原始碼軟體設計硬體產品,將面臨不得不公開以這些開放原始碼為基礎的程式碼與專利,導致產品的市場競爭力下滑。除此之外,企業若是在不知情的狀況下導入外部合作夥伴混用多款開放原始碼軟體的應用系統,將會讓企業陷入安全疑慮風坡。

「以前,製造業者以為其只要確保提供的是合法授權的設備即可,程式碼的合法性問題應該由提供該程式碼的夥伴負責,但事實是,無論是上游供應商、通路平台業者還是ODM/OEM廠商都必須遵循開放原始碼軟體的授權條款,如此一來,方能有效降低被控告的風險。」

陳澤輝進一步以BDS服務全球1,400多家企業管理開放原始碼軟體的經驗指出,「企業在採用開放原始碼軟體時,常常會因為『不確定自己採用了那些開放原始碼軟體』、『不知道哪裡有開放原始碼軟體可以使用』、『不確定開放原始碼軟體的應用範圍是合法的』、『不知道該如何強化開放原始碼軟體的安全機制』、『不清楚採用開放原始碼後的權利義務』、『不想花太多時間維護開放原始碼軟體』、『不確定該如何重新再利用開放原始碼』與『不知道該如何參與開放原始碼軟體生態』等8個原因而裹足不前。」

在看到該狀況後,BDS依照軟體開發流程推出end-to-end解決方案「 Black Duck Suite OSS Logistics」,讓企業可以透過「選擇(choose)」、「掃描(scan)」、「審核 (approve)」、「存放(inventory)」、「安全(secure)」與「交付(deliver)」6步驟有效因應、解決上述8個問題。

從白名單選擇良好的開放原始碼軟體開始

在選擇(choose)這一點,BDS的作法是透過定期從全球6,000餘個開放原始碼社群蒐集與建置開放原始碼軟體資料庫「Black Duck KnowledgeBase」的方式,讓企業客戶可以輕鬆地透過該資料庫上的白名單查詢欲採用的開放原始碼軟體是否有任何安全疑慮以及該遵守那些專利授權條款等。

「為了提供給客戶最安全且即時的開放原始碼軟體動態,BDS除每天為Black Duck KnowledgeBase進行一次安全更新,平均每季都會更新兩次開放原始碼軟體,當然,若是有夥伴向BDS推薦或提供很完整的開放原始碼軟體,我們也會將之存放到Black Duck KnowledgeBase。」陳澤輝表示,截至今日,Black Duck KnowledgeBase已存放超過100萬個開放原始碼軟體專案,以及超過2,400個獨特的軟體(專利)授權條款。

除此之外,客戶亦可透過Black Duck Open Hub與開放原始碼軟體社群互動,透過Black Duck Code Sight搜尋內部程式碼、找到所需的開放原始碼軟體專案報告、追蹤開放原始碼軟體世界的最新動態,以及釋出開放原始碼軟體的開發人員動態與後續貢獻等。

透過自動掃描機制確認開放原始碼軟體來源

「值得特別注意的是,為了確保即將上線的應用程式或者是將推出的產品沒有任何未知的開放原始碼軟體於其中,可進一步透過Black Duck Suite Protex的自動掃描、發現與識別機制找出公司到底採用了那幾版開放原始碼軟體以及這些開放原始碼軟體分別被運用在那些地方,進而提升企業對每個程式碼的掌握度、確認沒有違反採用的開放原始碼軟體的(專利)授權條款,以及提高這些開放原始碼軟體的可靠度與可視性。」陳澤輝如是說道。

透過自動審核與存放機制提升開放原始碼軟體的安全性與使用率

在透過 Black Duck KnowledgeBase 與Black Duck Suite Protex掌握企業內部使用了那些開放原始碼軟體後,下一步是透過建立正確使用Black Duck Suite Code Center開放原始碼軟體的自動審核(Approve)機制降低不確定性與重工的機率、加速識別軟體元件的腳步,以及在不影響開發週期的前提下降低風險與實現無縫協同合作的可能。

接著是將已採用的開放原始碼軟體存放(Inventory)在統一的 Black Duck Suite Code Center平台中,讓所有企業員工都可以透過這個平台查詢公司採用了那些開放原始碼軟體、遭遇了哪些問題,以及最新應用情況等訊息,讓有相似需求的員工可以直接將這些資源拿去應用,不要花時間做同樣的事情。除此之外,如何透過持續監督機制確保企業採用的開放原始碼軟體沒有安全(security)疑慮也很重要。

「BDS的做法是透過Black Duck Open Source Risk Profile機制協助企業追蹤與確認已採用的開放原始碼軟體元件的安全性、在使用開放原始碼軟體的過程中是否有出現任何安全疑慮,以及應用的方式是否符合(專利)授權條款等。」陳澤輝如是說道。

最後,同時也是最重要的是,企業在發布這些以開放原始碼軟體為基礎的應用程式與產品服務時,如何對內部股東與外部客戶證明該產品服務沒有違反開放原始碼軟體(專利)授權條款將變得非常重要,因此,BDS推出SPDX (Software Package Data Exchange)服務,讓企業可以清楚列舉在應用程式(Application)、中介軟體(Middleware)、軟體平台(Software Platform/Operation System)與裝置系統(Device/System)上使用的開放原始碼軟體清單(Bill of Material;BOM),確保不會有安全疑慮或者是違反開放原始碼軟體的專利授權條款等狀況發生。

卓越的開放原始碼軟體效益

在雲端、巨量資料分析與物聯網等趨勢的帶動下,Gartner預測,截至2016年,將有99%的全球前2,000大企業會採用以開放原始碼軟體為核心的關鍵應用服務。BDS認為,開放原始碼軟體之所以會在未來幾年內被廣泛的應用在企業環境,跟開放原始碼軟體可以讓企業加速研發腳步以因應瞬息萬變的市場環境有關。

「Black Duck Software讓我們可以更快速且安全的將開放原始碼軟體內嵌在InfoPrint產品,大幅提升研發團隊的工作效率。」RICOH InfoPrint解決方案資深技術經理Mike Munger指出,透過Black Duck Suite,團隊成員不但可以清楚掌握使用了那些開放原始碼軟體,還能進一步加速審核與開放原始碼軟體有關的流程、驗證程式碼的安全性,以及確保團隊成員沒有違反開放原始碼軟體的專利授權條款等。

陳澤輝以另外一間專門製造Android行動手持裝置的製造業為例指出,為了確保團隊成員以Apache框架開發的韌體與軟體是符合專利授權條款規範,以及產品程式碼沒有誤用任何未授權或禁止商業使用的開放原始碼軟體,該製造業者決定導入Black Duck Suite Protex這套可以自動掃描、識別已使用的開放原始碼軟體來源以及確保開放原始碼軟體的使用方式是符合授權範圍地的解決方案,避免公司因為疏忽而違反了開放原始碼軟體的授權條款,並且進一步審核、掌握那些軟體元件是可以被再利用的。

「除了硬體製造商與軟體開發商,BDS還協助了不少銀行業者藉由掌握內部使用了那些開放原始碼軟體的方式降低安全疑慮與違反專利授權條款的狀況發生。」陳澤輝以香港某銀行為例指出,由於該銀行業者委託印度夥伴為其開發數百個軟體專案並且累積超過萬組程式,因而需要一套可以協助其更快速地確認程式碼安全性與相對應的授權條款,在經過一段時間評估後,該銀行業者最終決定導入Black Duck Suite Protex,透過定期掃描這些委託外部夥伴開發的程式碼等方式確認應用系統的安全性,進而極小化營運風險。

Black Duck將擴大在台夥伴計畫以優化服務能量

為提供台灣企業客戶更完善的開放原始碼軟體管理服務,BDS除將持續深化合作夥伴——倚碩(e-Soft)科技在製造業的服務能量,還會進一步針對銀行、金融與企業客戶等市場找尋適切的合作廠商。

陳澤輝指出,由於開放原碼軟體的管理動作比較不受產業智識(Domain Knowhow)影響,相反的,是受到開發工具影響,因此,BDS開發出一套名為Black Duck Suite Integration的解決方案,讓企業客戶可以在熟悉的工作環境介面下進行開放原始碼軟體管理,不需要額外學習一套管理介面。

舉例來說,透過Black Duck Suit Integration,企業客戶除可以依照開發習慣選擇以Subversion、Perforce或者是Git進行版本控管(Source Control),以Artifactory或者是Nexus管理二進位檔案庫(Binary Repository),以Eclipse、Visual Studio或Intellijidea等環境作為整合開發環境(Integrated Development Environment;IDE),還能夠視需求選擇Maven、Ivy、Msbuild、Gradle或Apache作為建構工具(Build Tool),以及透過Jenkins、Hudson、Bamboo、Teamcity或Rational Team Concert進行持續整合(continuous integration;CI)。

至於在報表製作方面,Black Duck Suite Integration則是提供企業客戶Sonarqube與Coverity等兩個選擇,而登入方式,則可以選擇單一單入(Single Sign-On )或這次整合AD(LDAP ActiveDirectory )登入。

「我們的理念很簡單,就是讓企業客戶可以最低的成本、最快的速度自動化管理開放原始碼軟體,發揮綜效。」陳澤輝指出,有鑑於台灣企業對於行動應用、雲端服務、巨量資料分析與物聯網應用的需求極高,而這些應用與開放原始碼軟體又是息息相關的。

舉例來說,講到行動應用服務就會想到Java與Apache等開放原始碼軟體、雲端服務則是OpenStack標準、而巨量資料分析則是Hodoop等開放原始碼軟體,至於物聯網,涉及的開放原始碼種類就更多了,包括AllSeen聯盟(由高通、微軟、思科、樂金電子與夏普等50餘家廠商組成)推動的AllJoyn開放原始碼軟體架構,以及英特爾、戴爾、三星電子與博通等業者合組的開放互連聯盟(Open Interconnect Consortium)所推的開放原始碼軟體架構等。

因此,如何有效管理開放原始碼軟體將是台灣企業發展這些新科技應用前必須思考的議題,鑑於此,BDS在2015年將深化以下兩個產品服務在台灣市場的推廣與銷售動作:

首先是可以協助企業在最短時間內搜尋到自行開發的應用程式碼、採用的開放原始碼軟體與第三方夥伴提供的程式碼中是否有任何相互衝突與重複元件的Black Duck Suite Portex,協助企業確認推出的產品服務沒有任何會違反公司政策與開放原始碼專利授權條款的開放原始碼軟體元件,並且加速企業審核開放原始碼軟體元件的動作。

其次是可以協助企業將審核開放原始碼軟體流程自動化的Black Duck Suite CodeCenter,並且藉由增加在白名單上被標記為「良好」的開放原始碼軟體的使用率等方式,避免企業額外花時間學習重複功能的開放原始碼軟體、降低安全漏洞、確認應用方式是在開放原始碼軟體的授權範圍內,並且給予企業最完善的技術支援服務。

由於不同產業對開放原始碼軟體的需求優先順序不大一樣,例如OEM/ODM業者比較著重於能否協助其滿足客戶對開放原始碼軟體的管理要求;而OBM業者則比較重視採用的開放原始碼軟體的授權條款、授權應用範圍,開放原始碼軟體的安全機制與是否可以重複利用這些軟體元件等。

至於銀行與金融等企業客戶則比較關注開放原始碼軟體的安全風險,期望能透過建立一套經審核通過的開放原始碼軟體清單(BOM)跟委外合作夥伴溝通軟體開發相關事宜,並且持續不斷的完善內部開放原始碼軟體的白名單與黑名單以確保其不會誤用標示為不良的開放原始碼軟體等。

「BDS除會依照台灣客戶的需求型態提供對應的產品與諮詢服務,還會進一步透過參與台灣當地的開放原始碼軟體社群活動與參加類似研討會等方式,介紹管理開放原始碼軟體的重要性。」陳澤輝如是總結。