DevOps宣言 翻譯
原文鏈接
BY ERNEST MUELLER | OCTOBER 15, 2010 邵棟 翻譯 2017.5.22
最近大家在討論曾經(jīng)在德國(guó)漢堡的DevOpsDays上討論的DevOps宣言换团,我在想监嗜,現(xiàn)有的敏捷軟件開發(fā)宣言有什么問題?我們不能把這個(gè)作為統(tǒng)一的指導(dǎo)原則嗎绘趋?
讓我們看一下敏捷軟件開發(fā)宣言的價(jià)值觀和原則刨疼。如果不是從純代碼開發(fā)者的觀點(diǎn)悉默,而是從系統(tǒng)的角度來看這份宣言應(yīng)該是怎么樣的间螟?下面是我的一個(gè)嘗試:
DevOps宣言
我們一直在實(shí)踐中探尋更好的運(yùn)行系統(tǒng)的方法纤垂,身體力行的同時(shí)也幫助他人夕晓。由此我們建立了如下價(jià)值觀:
個(gè)體和互動(dòng) 高于 流程和工具
工作的系統(tǒng) 高于 詳盡的文檔
客戶以及程序員合作 高于 合同談判
響應(yīng)變化 高于 遵循計(jì)劃
也就是說宛乃,盡管右項(xiàng)有其價(jià)值,我們更重視左項(xiàng)的價(jià)值蒸辆。
這沒有很大的不同征炼。在我看來,我們可以毫無保留地接受一些條款躬贡。作為一個(gè)以系統(tǒng)管理為工作的人谆奥,我對(duì)個(gè)體和互動(dòng)高于流程和工具感到緊張(這是否會(huì)促進(jìn)牛仔心態(tài)?) - 但這并不是說自動(dòng)化和工具不好拂玻,事實(shí)上它是必要的(看看敏捷軟件開發(fā)實(shí)踐酸些,有明確的過程和工具),但是參與的人應(yīng)該永遠(yuǎn)是主要關(guān)注點(diǎn)檐蚜。 我的觀點(diǎn)是敏捷宣言與開發(fā)魄懂、運(yùn)維或業(yè)務(wù)無關(guān),這是一個(gè)通用的合作模板闯第。而對(duì)于Ops vs Dev而言市栗,“DevOps”有非常不同的觀點(diǎn)嗎?不是很多咳短。
我們還有敏捷軟件開發(fā)的十二條原則填帽, 仍然是抽象度很高的內(nèi)容,但這里是我認(rèn)為我們開始在現(xiàn)有列表之外有更多獨(dú)特的問題咙好。
DevOps宣言背后的原則
我們遵循這些原則:
- 我們最重要的目標(biāo)篡腌,是通過持續(xù)不斷地及早交付有價(jià)值的功能使客戶滿意。 (比“軟件”更通用)
- 軟件功能只有在完整的系統(tǒng)交付給客戶后才能實(shí)現(xiàn)勾效。對(duì)于用戶來說哀蘑,非功能性需求與功能性需求一樣重要诚卸。(新:為什么系統(tǒng)很重要)
- 基礎(chǔ)設(shè)施是代碼,應(yīng)該同樣進(jìn)行開發(fā)和管理绘迁。 (新合溺。)
- 欣然面對(duì)需求變化,即使在開發(fā)后期也一樣缀台。為了客戶的競(jìng)爭(zhēng)優(yōu)勢(shì)棠赛,敏捷過程掌控變化。(相同膛腐。)
- 經(jīng)常地交付可工作的功能睛约,相隔幾星期或一兩個(gè)月,傾向于采取較短的周期哲身。(軟件 - >功能)
- 業(yè)務(wù)人員辩涝、開發(fā)人員和運(yùn)維人員必須相互合作,項(xiàng)目中的每一天都不例外勘天。 (添加運(yùn)維人員怔揩。)
- 激發(fā)個(gè)體的斗志,以他們?yōu)楹诵拇罱?xiàng)目脯丝。提供所需的環(huán)境和支援商膊,輔以信任,從而達(dá)成目標(biāo)宠进。 (相同晕拆。)
- 不論團(tuán)隊(duì)內(nèi)外,傳遞信息效果最好效率也最高的方式是面對(duì)面的交談材蹬。 (相同实幕。)
- 可工作的軟件并進(jìn)行完整交付是進(jìn)度的首要度量標(biāo)準(zhǔn)。(添加系統(tǒng)堤器。)
- 敏捷過程倡導(dǎo)可持續(xù)開發(fā)茬缩。責(zé)任人、開發(fā)人員吼旧、運(yùn)維人員和用戶要能夠共同維持其步調(diào)穩(wěn)定延續(xù)凰锡。 (添加運(yùn)維人員。)
- 堅(jiān)持不懈地追求技術(shù)卓越和良好設(shè)計(jì)圈暗,敏捷能力由此增強(qiáng)掂为。 (相同。)
- 以簡(jiǎn)潔為本员串,它是極力減少不必要工作量的藝術(shù)勇哗。(相同 - KISS原則)
- 最好的架構(gòu)、需求和設(shè)計(jì)出自自組織團(tuán)隊(duì)寸齐。(相同欲诺。)
- 團(tuán)隊(duì)定期地反思如何能提高成效抄谐,并依此調(diào)整自身的舉止表現(xiàn)。 (相同扰法。)
這是一個(gè)極簡(jiǎn)集蛹含。
這聽起來像是仍然把軟件放在第一位嗎?是塞颁。這是合適的浦箱。系統(tǒng)是向用戶傳達(dá)軟件功能的,它們獨(dú)立存在沒有任何價(jià)值祠锣,我是作為一個(gè)系統(tǒng)管理人員說這句話的酷窥。然而,我在幾個(gè)地方將“軟件”改為“功能” - 使用系統(tǒng)和現(xiàn)有軟件(開源伴网,COTS等)蓬推,您可以為用戶提供有價(jià)值的功能,而無需您的團(tuán)隊(duì)編寫代碼澡腾。
無論如何沸伏,我喜歡將自己將運(yùn)維工作內(nèi)容插入到現(xiàn)有的敏捷過程中的想法,而不是另起爐灶的“DevOps宣言”蛋铆,那樣會(huì)不得不回答很多原始敏捷宣言已經(jīng)回答的問題(例如“業(yè)務(wù)怎么樣馋评?”) 放接。我認(rèn)為DevOps的要點(diǎn)之一就是“嗨刺啦,敏捷背后的概念是完整的,但是我們忘了在合作中包括我們的運(yùn)維人員纠脾,可以理解玛瘸,因?yàn)?0年前,大多數(shù)應(yīng)用程序都是桌面軟件苟蹈,但是現(xiàn)在許多(大多數(shù))是服務(wù)糊渊,我們是創(chuàng)建和交付應(yīng)用程序的重要組成部分』弁眩“
大家的想法是渺绒?