虛構(gòu)的故事又來了兰吟。
背景與經(jīng)過
我們是個(gè)海外客戶甲的軟件外包項(xiàng)目團(tuán)隊(duì)混蔼,客戶付全職工作的錢,通過我們公司乙間接雇傭了我們這個(gè)10人團(tuán)隊(duì)惭嚣。
近期項(xiàng)目上有一個(gè)任務(wù)晚吞,在軟件主體功能之外需要一個(gè)小工具,比如說txt文本轉(zhuǎn)換成pdf文檔這樣的槽地。
隊(duì)員A在了解pdf轉(zhuǎn)換工具的需求之后,覺得這個(gè)需求其實(shí)很普遍集畅,不是甲方客戶的行業(yè)領(lǐng)域缅糟,也與當(dāng)前的軟件功能不強(qiáng)相關(guān),所以可以進(jìn)行開源赦颇,先放在個(gè)人倉庫下,后續(xù)聯(lián)系公司订讼,希望能夠加入公司的開源倉庫沪摄,就叫TPC(Text Pdf Convertor)吧纱烘。公司最近也有一個(gè)編程活動(dòng),也可以報(bào)名哄陶,在活動(dòng)上逐步完善它哺壶。
但是項(xiàng)目上也是需要這個(gè)工具,所以A把TPC直接發(fā)布到了公共包管理平臺(tái)至扰。在項(xiàng)目里资锰,使用install TPC命令安裝并繼續(xù)使用。
對(duì)于這件事我的反思是:
甲方
我付錢買了10人8小時(shí)/天的工作量直秆,現(xiàn)在項(xiàng)目依賴于開源的TPC鞭盟。那就是說,在8小時(shí)的時(shí)間里筝野,我的外包團(tuán)隊(duì)沒有能力思考并產(chǎn)出TPC的邏輯和代碼粤剧,除非我答應(yīng)TPC需要開源。如果在項(xiàng)目中使用TPC發(fā)現(xiàn)了問題途蒋,團(tuán)隊(duì)是在8小時(shí)內(nèi)維護(hù)TPC呢馋记,還是在8小時(shí)之外才能維護(hù)TPC發(fā)布新的版本呢懊烤?那我的項(xiàng)目現(xiàn)在是在給TPC做測試宽堆?你說你可以在7*24在線維護(hù)TPC, 那在外包結(jié)束之后呢壁肋?我的需求永遠(yuǎn)都會(huì)在TPC最高優(yōu)先級(jí)嗎籽慢?我的特殊需求與TPC的藍(lán)圖沖突的時(shí)候呢?
風(fēng)險(xiǎn)
添加開源軟件進(jìn)入項(xiàng)目跛锌,未得到客戶甲的書面確認(rèn)届惋。
直接依賴了公共包管理平臺(tái)的工具而沒有從源代碼構(gòu)建,項(xiàng)目直接依賴于個(gè)人對(duì)TPC的升級(jí)和維護(hù)郑藏。
TPC加入乙官方開源倉庫瘩欺,仍未有進(jìn)展,但是使用了公司電腦進(jìn)行開發(fā)筑悴,版權(quán)是屬于乙方稍途,從個(gè)人倉庫發(fā)布至公共包管理平臺(tái)是未授權(quán)操作。
從乙方到團(tuán)隊(duì)突勇,處在丟失甲方信任的風(fēng)險(xiǎn)之中坷虑。
更好的開源庫
開源本身沒有問題,沒必要重復(fù)造輪子定躏,但是應(yīng)該有更好的打開方式。
企業(yè)級(jí)開源消費(fèi)者的角度
- 所依賴的開源庫使用的協(xié)議垮抗,必須有可商用且修改發(fā)布的授權(quán)碧聪。
- 自行搭建流水線構(gòu)建開源庫,有必要時(shí)安排內(nèi)部團(tuán)隊(duì)進(jìn)行維護(hù)辞嗡。
- 盡量選擇成熟用戶多的開源庫滞造,成熟度高,缺陷相對(duì)少猎贴。
- 開源庫使用情況申請(qǐng)/走查制度蝴光,保護(hù)自己达址。
外包乙方的角度
- 作為提供專業(yè)服務(wù)的乙方沉唠,應(yīng)該幫甲方做到上面的4點(diǎn)。
- 在合作初期與甲方確認(rèn)軟件版權(quán)相關(guān)的法務(wù)問題满葛,明確合作方式。
- 確保信息安全相關(guān)培訓(xùn)切實(shí)有效地完成篇亭。
- 給予團(tuán)隊(duì)切實(shí)準(zhǔn)確的關(guān)于官方開源倉庫的指導(dǎo)锄贷。
開源開發(fā)者的角度
- 確保開源代碼的版權(quán)歸屬谊却,確保使用正確的設(shè)備和時(shí)間進(jìn)行開發(fā)維護(hù)。
- 開源只能代表自己的意愿捕透,請(qǐng)考慮團(tuán)隊(duì)和組織利益。