為什麼公司需要設立開源項目辦公室(OSPO)
要想軟體產品能夠成功,關鍵在於管理開源軟體的使用並降低合規風險。開源項目辦公室能幫助組織實現這一目標。讓我們一起深入了解。
開源軟體 (OSS)是構建現代軟體解決方案的重要組成部分。無論是服務於內部或是面向客戶的解決方案,如今的組織都在很大程度上依賴於開源軟體。開源軟體組件受其獨立的授權條款約束,對這些條款的不合規操作往往會使組織面臨安全和知識產權(IP)風險,這進而可能會損害公司的品牌價值。
當開發團隊正忙於發布軟體版本時,他們的主要目標是滿足項目的截止日期。因此,他們在跟蹤組件版本、庫或者引入項目的第三方代碼時,往往疏於應有的嚴格性。這意味著帶有許可限制或漏洞的開源軟體組件可能會進入代碼庫,然後交付給客戶,這對客戶和提供軟體解決方案的公司都將帶來風險。
開發人員為開源項目做出貢獻的領域也日益具有挑戰性。如果公司能夠參與,他們可以獲得多種益處,包括保持技能的最新性,挽留員工,吸引開發者為組織工作,以及提升公司形象。很多開源項目要求開發者簽署貢獻者許可協議,該協議聲明由開發者創建的知識產權屬於該項目,而非開發者本人。在這種情況下,組織需要確保那些不公開源代碼的知識產權和商業機密不會被轉讓給開源項目。
我們需要教育開發者去了解開源許可的相關問題,確定何時、如何以及在何種程度上向社區提供支持,以及哪些軟體包可能會給組織的聲譽帶來風險。通過制定一套戰略性的政策和操作流程,我們可以規範這一切。實現上述目標的一種方式就是設立一個專門處理所有開源相關事務的部門——即 開源項目辦公室 (OSPO)。
OSPO 為員工使用開源軟體創建了一個生態環境,使合規風險得到良好的控制。OSPO 的角色不僅在於監督開源軟體的使用,它還負責回饋社區,並通過積极參与各種活動以及組織網路研討會和促銷活動,來推動公司在市場上的增長。
在這篇文章里,我們將深入探討為何公司需要設立一個 OSPO,以及它是如何在開源政策和管理程序中嶄露頭角的。
為何我們需要一個開源項目辦公室(OSPO)?
由於開源軟體正廣泛地被運用,因此在產品開發周期中,為團隊對其使用的監管和維持合規性策略往往會帶來重大壓力。
開發者往往會忽略許可證責任,有時甚至管理層或各利益相關方也並未完全意識到不遵守這些開源許可證的影響。不論是用於內部還是外部目的,OSPO 能處理從開始引入開源軟體,直至交付給終端用戶的過程中的所有環節。
通過在軟體開發生命周期早期階段開始進行合規性和規章制度的檢查,OSPO 能構築堅實的基礎。這通常開始於引導和整合團隊成員,共同邁向一個能惠及組織價值觀的方向。OSPO 會設定關於開源使用的政策和流程,並在公司內部進行角色和職責的管理。
總結來說,OSPO 有助於整合所有參與產品構建的相關團隊的努力,進而提升組織更好和更有效使用開源的能力。
開源項目辦公室(OSPO)的崛起
諸如微軟、谷歌和 Netflix 等公司已經在自身組織內部設立了成熟的 OSPO。此外,像 Porsche 和 Spotify 這樣的公司也在建立自己的 OSPO,以實現開源的高效利用。
以下是一些知名公司的領導者對 OSPO 實踐的看法:
- 「對於公司來說,這是一種文化的變遷,」Jeff McAffer 解釋了他的觀點,他曾經多年負責微軟的 OSPO,並現在是 GitHub 的產品主管,致力於在企業界推動開源的發展。「很多公司並不習慣與外部團隊合作。」
- 「工程、業務、法律每一方的利益相關者都有他們各自的目標和角色,往往需要在速度、質量和風險之間做出權衡,」 Spotify 的開源主管 Remy DeCausemaker 解釋道。「 OSPO 的任務就是協調和連接這些單獨的目標,融合成一個能夠減少摩擦的全面策略。」
- Verizon Media 的 OSPO 領導 Gil Yahuda 表達了他的觀點,「我們正在尋找創造一個人才願意融入其中的工作環境。我們的工程師都知道,他們處在一個歡迎開源的環境中,他們在這裡被鼓勵與他們工作相關的開源社區合作。」
開源項目辦公室(OSPO)的職能
OSPO 的職能可能會根據組織的員工數量、OSPO 團隊的人數以及開源的運用目的不同而有所差異。組織可能只想利用開源軟體來開發產品,也可能同時計劃向社區做出貢獻。
OSPO 的角色可能會包括評估哪些開源許可證是適宜的,以及是否應讓全職員工參與開源項目等任務。為願意貢獻的開發人員制定貢獻者許可協議(CLA),並確定哪些開源組件有助於產品的快速成長和質量提升也是 OSPO 的重要職責。
OSPO 的主要職能包括但不限於:
- 建立開源合規和治理政策來降低組織的知識產權風險
- 培育開發者做出更佳決策的能力
- 制定政策規範與公司全面採用開源的工作。
- 監控組織內外開源軟體的使用情況
- 在每次軟體版本發布後組織會議,討論開源軟體合規流程的優點及改進空間
- 加快軟體開發生命周期(SDLC)
- 提高不同部門之間的透明度和協調性
- 通過簡化流程在早期階段降低風險
- 鼓勵團隊成員向上游貢獻,以享受開源項目的協作和創新優勢
- 提供包含合適補救措施和產品團隊建議的報告
- 準備合規文檔,確保滿足許可證的義務
構建開源項目辦公室(OSPO)的過程
OSPO 的組成通常包括公司內多個部門的人員。這個過程涉及了對相關部門進行開源合規基礎和使用風險的培訓與教育。OSPO 可能提供法律和技術支持,以確保達成開源的目標需求。
組織內的 OSPO 可能包括以下人員(這只是一個可能參與的人員名單,並不是詳盡無遺的清單):
- 主任/首席:主任或首席通常是 OSPO 的主要負責人。他能全方位掌控使用開源的各個方面,包括使用不同組件的影響,許可證的含義,以及開發和社區貢獻等。這些要求完全取決於公司的需求。
- 項目經理:項目經理為目標解決方案設置需求和目標。他/她將與產品和工程團隊共同工作,以協調工作流程。這包括以開發者友好的方式確保策略和工具的實施。
- 法律支持:法律支持可能來自公司外部或者內部,但他們在 OSPO 中扮演著重要角色。法律團隊將與項目經理密切合作,定義管理開源軟體使用的策略,包括每個產品允許使用的開源許可證,如何(或是否)向現有的開源項目貢獻等。
- 產品和工程團隊/開發者:工程團隊需要熟悉開源許可及其相關風險。團隊在使用任何開源組件之前,必須得到 OSPO 的批准。團隊可能需要定期接受關於開源合規基礎以及其使用的培訓。
- 首席技術官/信息官/利益相關者:公司的領導對 OSPO 策略有著巨大影響。利益相關者在任何產品解決方案的決策過程中擁有很大的決定權。因此,工程副總裁,首席技術官/信息官,或者首席合規/風險官員需要參與 OSPO 的工作。
- IT 團隊:來自 IT 部門的支持十分重要。OSPO 可能被分配實施內部工具的任務,如提高開發者效率,監控開源合規,或者設置開源安全措施等。IT 團隊在協助連接工作流程和確保以開發者友好的方式實施策略方面起著關鍵作用。
在 TODO 組織於 2021 年執行的 OSPO 調查中,得出了以下的關鍵發現:
- 教育企業理解 OSPO 如何為他們帶來益處的機會仍然巨大。
- OSPO 對其贊助方的軟體實踐有顯著的積極影響,但影響的具體效果並因組織規模的大小而異。
- 那些有意設立 OSPO 的公司,他們期望 OSPO 能提升創新,但策略設立及預算力度仍然是實現目標的主要挑戰。
- 調查參與者中近半數尚未設立 OSPO 的人認為 OSPO 將有助於他們公司的發展,然而在那些認為 OSPO 無助於公司發展的人群中,有 35% 的人還未對此事有所考慮。
- 27% 的調查參與者表示,一家公司對開源參與的程度會深刻影響他們組織的購買決策。
如今,在構建任何軟體解決方案時,對開源軟體的依賴幾乎是無法避免的。然而,開源許可證相關的潛在風險也不容忽視。因此,我們需要一套策略性的流程來有效解決使用開源組件帶來的合規性問題。
通過建立一支集中的專業團隊,OSPO 能幫助公司確立規範的開源文化,讓員工了解並熟悉與組織內開源使用相關的所有事宜。此外,OSPO 還可以發揮引導作用,吸納行業內的頂級人才,這無疑將對實現商業目標產生積極影響。
(題圖:MJ/9a3e106d-0710-4dd7-b278-ef1056c5c5ab)
via: https://www.opensourceforu.com/2022/08/why-companies-need-to-set-up-an-open-source-program-office/
作者:Sakshi Sharma 選題:lkxed 譯者:ChatGPT 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive