無論是開發(fā)人員還是Leader,盡管角色不同,但他們都不過是整個開發(fā)團(tuán)隊的一部分,他們的目標(biāo)也都一致:應(yīng)和需求、完成項目開發(fā)。他們也經(jīng)常在開發(fā)過程中遇到技術(shù)和需求之間產(chǎn)生的矛盾,那么這些矛盾該如何調(diào)解、當(dāng)需求出現(xiàn)描述模糊的時候又該怎樣處理呢?為此,記者采訪了阿里軟件研發(fā)中心總監(jiān)葉偉。
葉偉認(rèn)為技術(shù)和需要產(chǎn)生矛盾往往是因為兩種情況。一是需求不清晰(如細(xì)節(jié)未考慮)、或者提出的方案不合理。這種情況下,技術(shù)會對需求方的方案做補(bǔ)充和修繕;如果從技術(shù)角度想到更好的解決方案,也會提出來。在不影響商業(yè)價值或用戶的體驗的前提下,需求方大都會認(rèn)同,從而解決矛盾。
第二種情況是需求合理清晰,但是從技術(shù)實現(xiàn)成本過高或周期過長。這需要站在技術(shù)的角度重新考慮各種替代方案。如果替代方案既能滿足需求又沒有成本周期問題,則矛盾得以調(diào)解。比如阿里軟件開發(fā)的一款外貿(mào)軟件產(chǎn)品中,有著模糊搜索的要求。直接通過數(shù)據(jù)庫來處理,性能是非常差的;通過搜索引擎,則成本太大;但如果不提供,從需求方來說就是沒有達(dá)到要求。后來技術(shù)團(tuán)隊將多種方案綜合,通過適當(dāng)降低友好度,來實現(xiàn)這個功能的高效性。但有些時候未必能找到合適的替代方案,葉偉認(rèn)為此時應(yīng)當(dāng)從商業(yè)價值、性價比等角度來考慮‘變更需求’,而且必須提交給上級經(jīng)理或者產(chǎn)品會議作決定。
調(diào)節(jié)技術(shù)與需求之間矛盾的方法有很多種,但是原則卻是大同小異。阿里軟件研發(fā)總監(jiān)葉偉結(jié)合自己十多年的帶領(lǐng)團(tuán)隊開發(fā)經(jīng)驗總結(jié)了三個原則: 1,商業(yè)驅(qū)動。葉偉舉例說,一個業(yè)務(wù)管理郵件收發(fā)系統(tǒng),商業(yè)上要求對郵件數(shù)量進(jìn)行統(tǒng)計,但之前和版本中沒有這樣一個計數(shù)器。如果從技術(shù)實現(xiàn)的難易度來看,開發(fā)人員腦中的第一印象是對保留下來的郵件進(jìn)行統(tǒng)計。然而,由于用戶之前可能刪除了部分郵件,統(tǒng)計數(shù)目就不可能正確。所以,這個技術(shù)方案是不符合商業(yè)要求的,所以不可行,盡管它最省時。
2,需求和開發(fā)人員之間應(yīng)當(dāng)尋求共同的價值點!斑@個價值點既不是開發(fā)人員的價值點也不是需求人員的價值點,而是用戶的價值點!比~偉說。理解了真正的商業(yè)價值,技術(shù)人員和需求方也就達(dá)成了共識。
3,技術(shù)不能逾越商業(yè)決策,商業(yè)決策引導(dǎo)技術(shù)。葉偉帶領(lǐng)的阿里軟件通常是根據(jù)需求做出幾種技術(shù)方案讓需求方選擇。例如,阿里軟件的最新軟件產(chǎn)品AEP(電子商務(wù)平臺)中要提供促銷功能,一共想了三種方式:送用戶禮包/優(yōu)惠券、打折、購買返現(xiàn)金。這三種方式的技術(shù)實現(xiàn)成本和對用戶的效果都不一樣的,技術(shù)人員作出了概要的分析、比較,讓需求方來決定。需求方最后選擇了‘購買時返現(xiàn)’,由于另二個方案是互補(bǔ)的,也沒有被廢棄,列入了下二個版本。所以葉偉說,“即使某種技術(shù)方案不被選擇,它仍可以作為下一個版本或者產(chǎn)品的方案!
實際上,在產(chǎn)品開發(fā)過程中也難免會遇到描述模糊的需求,但又必須執(zhí)行的情況,這種情況怎么處理呢?葉偉表示可以從兩個大的方面來解決這個問題。
一是從方法學(xué)和流程的角度來處理,歸納為三點:
1敏捷開發(fā)方法;
2充分的版本迭代。互聯(lián)網(wǎng)軟件產(chǎn)品的版本周期大都比較短,阿里軟件的經(jīng)驗是一般定為一至二個月;每個需求會細(xì)分,并按照重要性排定ABC優(yōu)先級,再參照資源情況歸入各版本。
3產(chǎn)品會議!胺彩骂A(yù)則立、不預(yù)則廢!痹诋(dāng)前版本結(jié)束前召開下一版本的產(chǎn)品會議,提前作出產(chǎn)品規(guī)劃,確定版本功能。
二是從個人執(zhí)行的角度來處理。通過特征分解(Feature Breakdown)、格式化模板(Formatted Template)、模式化用例(Use Case Pattern)等手段,盡量讓需求人員將需求描述得清晰而規(guī)范,降低模糊度。葉偉帶領(lǐng)的阿里軟件還會在開發(fā)前專門針對需求中的模糊點、復(fù)雜點等問題召開“需求確認(rèn)會”,開發(fā)人員與QA一起補(bǔ)充和明確需求。
“這兩個方面只能在開發(fā)前使需求更加清晰明確,但不能保證完全消除需求模糊的現(xiàn)象,因為在開發(fā)過程中,經(jīng)常會遇到許多細(xì)節(jié)方面的問題,”葉偉說,所以如果在開發(fā)中遇到問題,他要求開發(fā)人員馬上去溝通,然后尋找渠道與需求方確認(rèn)。所以阿里軟件對開發(fā)人員的溝通能力有較高的要求,‘客戶第一、團(tuán)隊合作’是阿里巴巴‘六脈神劍’(價值觀)中的前二條?纯唇袢瞻⒗锇桶驮谥袊鳬T領(lǐng)域的旗手級位置,我們有理由相信葉偉的經(jīng)驗和感悟同樣會給我們更多有益的借鑒。
|