2. 預(yù)測和適應(yīng)
2.1 不到最后時刻镜豹,不輕易做決定
對于需求或設(shè)計复凳,計劃驅(qū)動的順序開發(fā)方式要求在當前階段就做出重要的決策并進行審批甸昏。
Scrum 認為蛤迎,不該單單因為通用過程要求此時作出決定,我們就做出不成熟的決定觅彰。他們傾向于“不輕易做決定”這個策略吩蔑。這個原則通常稱“最后責任時刻”。
2.2 承認無法一開始就把事情做對
計劃驅(qū)動的過程不僅要求有完整的需求和全面的計劃填抬,還想當然地認為事先就能“把事情做對”烛芬。
在 Scrum 中,我們承認自己不可能事先確定所有需求或計劃痴奏。
2.3 偏好適應(yīng)性蛀骇、探索性的方法
使用現(xiàn)在已知的東西并對未知的東西進行預(yù)測,這是計劃驅(qū)動的順序過程關(guān)注的終點读拆。
Scrum 更傾向于恰當運用探索式方法擅憔,在此基礎(chǔ)上采用適應(yīng)性的試錯法。
探索指的是通過某些活動來獲得知識檐晕。換句話說暑诸,面對不確定,我們通過探索來獲取更多可用信息辟灰。
2.4 用經(jīng)濟合理的方法積極主動接受變化
使用順序開發(fā)方式時个榕,后期變更成本比早期變更成本高很多。為避免后期變更芥喇,順序開發(fā)過程的做法是設(shè)法提高預(yù)測的準確度西采,澄清系統(tǒng)需求及其實現(xiàn)過程,再加以嚴格控制继控,力求最小化需求和設(shè)計變更械馆。
在 Scrum 中,我們認為變更是很正常的武通。必須準備好主動迎接變更霹崎,只是在變更出現(xiàn)時,我們希望能比傳統(tǒng)開發(fā)更經(jīng)濟的方式來處理冶忱。因此尾菇,我們的目標是要讓變更成本曲線盡可能長期保持平穩(wěn)——即使在后期接受變更,開銷也是經(jīng)濟合理的。
我們可以通過對 WIP 數(shù)量和工作流進行管理來實現(xiàn)這個目標派诬。
2.5 在預(yù)測性的事前工作和適應(yīng)性的適時工作之間做出平衡
計劃驅(qū)動開發(fā)有一個基本的理念:事先得到詳細需求和計劃是至關(guān)重要的劳淆,并且做事情要有先后。
在 Scrum 中千埃,我們相信前期工作有幫助憔儿,但不宜過度。要找平衡點放可,即取得平衡預(yù)測性的前期工作和適應(yīng)性的剛好及時工作的平衡。
究竟怎樣才算平衡朝刊?這在一定程度上由幾個因素推動:所建產(chǎn)品的類型耀里、待建產(chǎn)品(結(jié)果不確定性)和產(chǎn)品構(gòu)建方式(方法不確定性)的不確定程度以及開發(fā)中的限制。