袁斌:敏捷開(kāi)發(fā)在項(xiàng)目中的解決方案
原創(chuàng)【51CTO專稿】敏捷開(kāi)發(fā)方法的流行正是因?yàn)榇蠹野l(fā)現(xiàn)了傳統(tǒng)瀑布方式無(wú)法適應(yīng)從改變,革新而驅(qū)動(dòng)企業(yè)的動(dòng)態(tài)管理。如何在項(xiàng)目開(kāi)發(fā)中能持續(xù)滿足不斷變化的用戶需求讓越來(lái)越多的開(kāi)發(fā)和管理者受到了重視。敏捷開(kāi)發(fā)成為了眾多團(tuán)隊(duì)的制勝之道。下面,我們專訪了北京迅思威爾科技有限公司的資深敏捷教練袁斌老師給網(wǎng)友們分享了敏捷在項(xiàng)目實(shí)踐中的一些經(jīng)驗(yàn)。
袁斌,工學(xué)碩士、MBA, Scrum、AUP、Agile modeling、XP、kanban等資深實(shí)踐者,資深敏捷教練。近20年中就職于全球性公司從事軟件和產(chǎn)品的開(kāi)發(fā)。曾任Anoto產(chǎn)品和Mino產(chǎn)品中國(guó)區(qū)軟件開(kāi)發(fā)總監(jiān),利用Agile & Lean實(shí)現(xiàn)產(chǎn)品快速交付,應(yīng)對(duì)變化的需求。超過(guò)8年敏捷開(kāi)發(fā)&精益開(kāi)發(fā)的實(shí)踐過(guò)程中,在電信行業(yè)、外包團(tuán)隊(duì)、互聯(lián)網(wǎng)產(chǎn)品等多個(gè)行業(yè)積累了豐富的經(jīng)驗(yàn)。
以下是視頻采訪文字實(shí)錄:
記者:51CTO的網(wǎng)友大家好,今天我們請(qǐng)到的嘉賓是北京迅思威爾科技有限公司的資深敏捷教練袁斌老師。跟我們講解敏捷開(kāi)發(fā)項(xiàng)目實(shí)踐中一些主要問(wèn)題,以及對(duì)未來(lái)幾年敏捷發(fā)展這一塊的一些看法進(jìn)行分享。首先請(qǐng)?jiān)蠋煾W(wǎng)友們做一下自我介紹。
袁斌:大家好,我是袁斌,來(lái)自迅思威爾,我自己有超過(guò)八年的敏捷的實(shí)踐經(jīng)驗(yàn),所以我對(duì)自己的定位是一個(gè)資深的敏捷實(shí)踐者。OK,謝謝。
記者:那么在敏捷當(dāng)中,很多人都看到了它的成本控制,它能夠降低項(xiàng)目開(kāi)發(fā)中的一些浪費(fèi)。但是往往適得其反,不但沒(méi)有降低,反而增加了開(kāi)發(fā)成本。在開(kāi)發(fā)成本控制這一塊,你怎么去理解?
袁斌:其實(shí)對(duì)于成本來(lái)言,每一種新的方法一定會(huì)有它的學(xué)習(xí)曲線和學(xué)習(xí)成本,往往在開(kāi)始的時(shí)候,它的結(jié)果會(huì)比現(xiàn)有的情況還要糟糕,它會(huì)有一個(gè)U形的曲線。所以這里面更多的是怎么樣降低你的學(xué)習(xí)成本和學(xué)習(xí)曲線。如果在最開(kāi)始使用敏捷的時(shí)候全盤(pán)采用整個(gè)敏捷開(kāi)發(fā)實(shí)踐集合,較高的學(xué)習(xí)成本和學(xué)習(xí)曲線會(huì)使實(shí)施敏捷的效果大打折扣。所以我這里的建議是,對(duì)成本控制而言,首先找你在研發(fā)過(guò)程中間最大的痛點(diǎn),在痛點(diǎn)的基礎(chǔ)上,然后在敏捷開(kāi)發(fā)的眾多實(shí)踐里面去找針對(duì)這個(gè)痛點(diǎn)的實(shí)踐集合。這個(gè)實(shí)踐集合的原則就是學(xué)習(xí)成本要低,而且它能夠持續(xù)改進(jìn),對(duì)你的痛點(diǎn)起的效用最好。這樣的話,不斷地改進(jìn),持續(xù)控制成本,就可以獲得讓人滿意的投資回報(bào)率。
記者:在敏捷實(shí)踐過(guò)程當(dāng)中,是否使用到一些敏捷工具,能否推薦一些比較好的工具?
袁斌:敏捷工具是這樣考量的:看你產(chǎn)品的周期,如果你產(chǎn)品周期相對(duì)比較短,比如說(shuō)你兩三個(gè)月,那么我個(gè)人并不建議用敏捷工具來(lái)考量、管理你的敏捷開(kāi)發(fā)的過(guò)程。如果是周期比較長(zhǎng)的話,我是建議用敏捷管理工具。因?yàn)樵蛑饕谟?,第一,你要去積累很多數(shù)據(jù),這些數(shù)據(jù)會(huì)有利于分析你的過(guò)程中間,哪些是好的?哪些是不好的?,然后有針對(duì)性的改進(jìn);第二,對(duì)于整體的需求管理,包括你一些技術(shù)方案的管理,需要一個(gè)工具能把它整體管理起來(lái)。
記者:在項(xiàng)目當(dāng)中,敏捷測(cè)試人員的職責(zé)和一些技能的要求是什么樣的?
袁斌:我覺(jué)得在敏捷的開(kāi)發(fā)過(guò)程中間,測(cè)試人員更多的是能夠幫助團(tuán)隊(duì),幫助團(tuán)隊(duì)最后的交付能夠有一個(gè)保證。所以說(shuō)敏捷的測(cè)試人員首先應(yīng)該是盡早測(cè)試,更早地在測(cè)試周期的前面進(jìn)入。比如說(shuō)在一個(gè)迭代開(kāi)始的時(shí)候,在計(jì)劃會(huì)議他就能夠介入,他給出很多從用戶層面對(duì)需求的看法,能夠幫助團(tuán)隊(duì)更好的了解需求。同時(shí)通過(guò)把握測(cè)試的風(fēng)險(xiǎn),盡早的給研發(fā)團(tuán)隊(duì)“bug出現(xiàn)風(fēng)險(xiǎn)高”以及“用戶使用頻率高”兩個(gè)層面的用例,幫助團(tuán)隊(duì)控制研發(fā)過(guò)程中間的風(fēng)險(xiǎn)。
我覺(jué)得還有一個(gè)很重要的是持續(xù)地測(cè)試,能夠去幫助團(tuán)隊(duì),特別是研發(fā)團(tuán)隊(duì),不但是說(shuō)我能夠盡早,而且不斷地持續(xù)地進(jìn)行這些測(cè)試,及時(shí)的把風(fēng)險(xiǎn)反饋給研發(fā)團(tuán)隊(duì)。
記者:據(jù)我了解,很多朋友說(shuō)你在測(cè)試這一塊,好像是他們不需要專門的測(cè)試人員,你覺(jué)得這樣的公司對(duì)于開(kāi)發(fā)一個(gè)項(xiàng)目的時(shí)候,有沒(méi)有什么影響?
袁斌:有一些公司會(huì)有,比如說(shuō)像Facebook,它會(huì)說(shuō)我沒(méi)有專職的測(cè)試人員,它是工程師文化。但我個(gè)人認(rèn)為在我看到的很多項(xiàng)目里面,測(cè)試人員是必要的。我說(shuō)一下我的觀點(diǎn),我覺(jué)得如果沒(méi)有測(cè)試人員對(duì)工程師的要求非常高,因?yàn)樗袚?dān)專業(yè)測(cè)試人員的技能。
記者:對(duì)他個(gè)人的一些技能,什么要求都會(huì)高。
袁斌:對(duì),我覺(jué)得術(shù)業(yè)有專攻,測(cè)試人員更多的從用戶的場(chǎng)景對(duì)產(chǎn)品進(jìn)行測(cè)試,特別在非功能性需求的測(cè)試,這方面的專業(yè)技能要求也是很高的。
記者:做到敏捷開(kāi)發(fā),每個(gè)團(tuán)隊(duì)都要經(jīng)歷一個(gè)轉(zhuǎn)型期,在轉(zhuǎn)型期還需要每個(gè)團(tuán)隊(duì)根據(jù)自身的不同找出合理有效的解決方法,一般是如何處理這個(gè)問(wèn)題?
袁斌:團(tuán)隊(duì)在做轉(zhuǎn)型的時(shí)候,我們看到的很多團(tuán)隊(duì),包括我們自己的客戶,最大的問(wèn)題在于,敏捷開(kāi)發(fā)有很多的實(shí)踐,如果把所有的實(shí)踐都拿過(guò)來(lái)。然后全部用在團(tuán)隊(duì)中間,但是每個(gè)實(shí)踐都有學(xué)習(xí)成本。所以說(shuō)都拿過(guò)來(lái)以后,團(tuán)隊(duì)很抵觸,而且也不能解決團(tuán)隊(duì)的實(shí)際問(wèn)題。因?yàn)樘嗔藢?shí)踐以后,大家覺(jué)得很疲憊,有時(shí)候適得其反。我個(gè)人的建議是這樣子,在轉(zhuǎn)型期的時(shí)候,用痛點(diǎn)驅(qū)動(dòng)的方法。所謂痛點(diǎn)驅(qū)動(dòng)就是,找到團(tuán)隊(duì)目前一個(gè)很嚴(yán)重的痛點(diǎn),在敏捷實(shí)踐中間,找一些實(shí)踐集合,不要全都找,是找一些實(shí)踐集合,去把痛點(diǎn)解決掉。然后再看下一個(gè)迭代的時(shí)候,繼續(xù)找目前最大的痛點(diǎn),然后再用一些實(shí)踐集合把它解決掉。你不斷地這樣去做的時(shí)候,團(tuán)隊(duì)抵觸很小,他覺(jué)得OK,把我的實(shí)際問(wèn)題解決掉了,他會(huì)很愿意采納敏捷。
記者:您剛才說(shuō)痛點(diǎn)驅(qū)動(dòng),能否解釋一下?
袁斌:所謂痛點(diǎn)驅(qū)動(dòng),痛點(diǎn)其實(shí)就是最大的問(wèn)題,是我在研發(fā)過(guò)程中間碰到的最大問(wèn)題。比如說(shuō)我可能在這個(gè)過(guò)程中間,我最大的問(wèn)題是迭代交付延期。
記者:延期?
袁斌:對(duì),我延期了,也有可能最大的問(wèn)題是對(duì)需求了解很差,或者說(shuō)人員流動(dòng)是一個(gè)最大的問(wèn)題。那么比如說(shuō)人員流動(dòng)是一個(gè)很大的問(wèn)題,這個(gè)時(shí)候敏捷實(shí)踐里面,你不見(jiàn)得非要用測(cè)試驅(qū)動(dòng)開(kāi)發(fā),要用用戶故事描述需求,可能是結(jié)對(duì)編程,可能是團(tuán)隊(duì)的代碼負(fù)責(zé)會(huì)更有效。也可以強(qiáng)調(diào)計(jì)劃會(huì)議里面整個(gè)團(tuán)隊(duì)都要參加討論,減少學(xué)習(xí)債務(wù)。這些實(shí)踐可能是對(duì)你當(dāng)下的痛點(diǎn)會(huì)有更大的幫助,建議首先采用這些實(shí)踐,我的觀點(diǎn)是這樣的。
記者:敏捷過(guò)程當(dāng)中,我認(rèn)為最重要的是一個(gè)需求、拆分與分工,你能談?wù)勅绾芜M(jìn)行它需求合理地拆分,以及分工嗎?
袁斌:我的觀點(diǎn)是,如果是需求的話,盡量采用一種拉的方式,所謂拉的方式是說(shuō),我們研發(fā)的流程就是從需求分析、再到設(shè)計(jì)、編碼測(cè)試、然后交付客戶。我的觀點(diǎn)是,我們應(yīng)該是從客戶這一端開(kāi)始,客戶這邊認(rèn)為,他最需要的是哪些需求,然后對(duì)這些需求做比較詳細(xì)地拆分。所以這樣在Scrum里面,它有一個(gè)叫做Product Backlog,翻譯過(guò)來(lái)叫需求列表。
這個(gè)需求列表里面高優(yōu)先級(jí),一定是客戶最想要的,所以需求拆分我建議從高優(yōu)先級(jí)的,對(duì)用戶價(jià)值最大的需求拆分會(huì)比較好一點(diǎn)。
記者:在敏捷開(kāi)發(fā)過(guò)程當(dāng)中,Scrum和XP,也就是說(shuō)我們說(shuō)的直線編程,在國(guó)內(nèi)據(jù)我了解,使用Scrum占了大部分。
袁斌:沒(méi)錯(cuò)。
記者:你能介紹一下Scrum和其他幾件方法最大區(qū)別在哪里?如果是Scrum,它的優(yōu)勢(shì)在哪里?
袁斌:其實(shí)Scrum最主要的特點(diǎn)在于說(shuō),它是個(gè)輕量級(jí)的框架,通過(guò)短周期的迭代,交付最有價(jià)值的產(chǎn)品,可以從容應(yīng)對(duì)變化的需求。它最大優(yōu)點(diǎn)我認(rèn)為是,它沒(méi)有介紹很多的實(shí)現(xiàn)細(xì)節(jié),具體要做到怎么樣去交付一個(gè)很有價(jià)值的東西,它沒(méi)有想洗介紹。我認(rèn)為這可能是它最大的缺點(diǎn),也是最大的優(yōu)點(diǎn)。它可以包容很多其他的方法,比如說(shuō)像極限編程(XP)。它可以把XP里面很多的工程實(shí)踐融進(jìn)來(lái),幫助它提高交付質(zhì)量,而且它可以包容像精益軟件開(kāi)發(fā),消除研發(fā)過(guò)程中的浪費(fèi)。所以Scrum,我認(rèn)為它最大的優(yōu)點(diǎn),是個(gè)輕量級(jí)的框架,易于包容。而且從另一個(gè)方面說(shuō),在國(guó)內(nèi)能夠很好地流行得益于它是一個(gè)管理型的方法。其實(shí)Scrum是偏向于敏捷的項(xiàng)目管理,項(xiàng)目管理在國(guó)內(nèi)很容易獲得認(rèn)可。所以我覺(jué)得它在國(guó)內(nèi)能推的比較好,這兩點(diǎn)是比較重要的。
記者:極限編程比較注重細(xì)節(jié)方面的一些問(wèn)題,可以這么說(shuō)嗎?
袁斌:極限編程中的工程實(shí)踐很有借鑒性,但是對(duì)于工程師本身的要求相對(duì)比較高。Scrum相對(duì)而言對(duì)工程師的要求沒(méi)有那么高。
記者:就是說(shuō)一般我們國(guó)內(nèi)一些創(chuàng)業(yè)型的公司,它的項(xiàng)目都可以用Scrum的方式。
袁斌:一般而言是可行的。同時(shí)Scrum不但用在軟件產(chǎn)品的開(kāi)發(fā),還有很多其它的行業(yè)都可以用Scrum。
記者:就是說(shuō)不僅僅限制在軟件開(kāi)發(fā)這個(gè)行業(yè)里面?
袁斌:沒(méi)錯(cuò),是這樣的。
記者:那么如果能得到準(zhǔn)確的數(shù)據(jù)支持,敏捷實(shí)施能夠更好地發(fā)展下去,敏捷實(shí)踐下的員工,程序員的工作指標(biāo)如何衡量?
袁斌:我明白你的意思。我們的實(shí)踐中間是這樣子,把程序員的工作指標(biāo)分為兩個(gè)部分,一個(gè)部分是團(tuán)隊(duì),我們首先不關(guān)心每一個(gè)人工作量多大,我們想要關(guān)心這個(gè)團(tuán)隊(duì)的每次交付,是不是可以接受?這樣大家會(huì)有一個(gè)團(tuán)隊(duì)的概念,整體的概念。另一個(gè)部分,我們需要關(guān)注個(gè)人,關(guān)心個(gè)人的時(shí)候,一般會(huì)關(guān)注四個(gè)層面,第一個(gè)是工作質(zhì)量;第二個(gè)是工作量;第三個(gè)是主動(dòng)性,因?yàn)槊艚蓍_(kāi)發(fā)里面,短周期的迭代,對(duì)風(fēng)險(xiǎn)地控制要非常高,要求主動(dòng)溝通的意愿要很強(qiáng),有助于風(fēng)險(xiǎn)前移;第四個(gè)我們認(rèn)為是幫助,就是幫助團(tuán)隊(duì),
記者:當(dāng)一個(gè)敏捷團(tuán)隊(duì)工作時(shí),有時(shí)候他的項(xiàng)目流程會(huì)暴露出來(lái),也就是我們常說(shuō)的項(xiàng)目透明化,這是不是可以稱為敏捷開(kāi)發(fā)流程的一個(gè)過(guò)失,或者是說(shuō)你對(duì)于項(xiàng)目透明化有什么見(jiàn)解?
袁斌:首先項(xiàng)目的透明化在敏捷開(kāi)發(fā)里面,他要求的非常高,在我們的實(shí)踐中間會(huì)發(fā)現(xiàn),如果你把這個(gè)項(xiàng)目透明了,你會(huì)減少很多溝通的成本和障礙,現(xiàn)在我們能看到的項(xiàng)目透明化方式更多的是白板。
無(wú)論是物理白板還是電子白板,大家把這個(gè)項(xiàng)目放在透明的環(huán)境里。很多的團(tuán)隊(duì)會(huì)做一個(gè)項(xiàng)目墻、任務(wù)墻,把所有的狀態(tài)在墻上布置下來(lái)。還有一種方式就是電子白板,電子白板有很多的工具。
這兩種方式都可以把你的項(xiàng)目風(fēng)險(xiǎn)暴露出來(lái),項(xiàng)目透明化以后,其感興趣的項(xiàng)目干系人都會(huì)來(lái)幫助我們這個(gè)團(tuán)隊(duì),發(fā)現(xiàn)項(xiàng)目可能潛在的風(fēng)險(xiǎn),同時(shí)會(huì)幫你解決掉。
記者:對(duì),在Scrum會(huì)議的實(shí)踐實(shí)際上是實(shí)踐控制當(dāng)中最重要的一件事件。
袁斌:沒(méi)錯(cuò)。
記者:這更是團(tuán)隊(duì)做改進(jìn)最佳的時(shí)機(jī),那您認(rèn)為Scrum會(huì)議在團(tuán)隊(duì)當(dāng)中如何建立起來(lái)?在Scrum這塊非常看重它有一個(gè)回顧會(huì)議,這個(gè)如何進(jìn)行?
袁斌:回顧會(huì)議其實(shí)在Scrum里面起到了持續(xù)改進(jìn)的最用,敏捷非常強(qiáng)調(diào)持續(xù)改進(jìn)。
回顧會(huì)議在Scrum里面是持續(xù)改進(jìn)的一個(gè)非常好的機(jī)會(huì)。但是現(xiàn)在能看到的是,回顧會(huì)議有很多時(shí)候團(tuán)隊(duì)流于形式了,覺(jué)得開(kāi)的沒(méi)有必要。更多的情況下我認(rèn)為是,這時(shí)候回顧會(huì)議沒(méi)有起到應(yīng)有的作用。我認(rèn)為一個(gè)回顧會(huì)議開(kāi)的比較好首先是數(shù)據(jù)驅(qū)動(dòng),所謂數(shù)據(jù)驅(qū)動(dòng)就是,我們通過(guò)數(shù)據(jù)去得到這個(gè)迭代里面哪些是最大的問(wèn)題。找到問(wèn)題以后,團(tuán)隊(duì)去分析它的根本原因,再去找到它的解決方案。然后把兩三個(gè)好的解決方案,在下一個(gè)迭代里面去把它固化?;仡檿?huì)議最核心的是根本問(wèn)題的發(fā)現(xiàn),所以我個(gè)人很推薦使用數(shù)據(jù)的方式。比如說(shuō)Bug分類,計(jì)劃和實(shí)際的偏差。比如說(shuō)你每天八個(gè)小時(shí)的工作時(shí)間,你是三個(gè)小時(shí)有效工作,其他的五個(gè)小時(shí)我們可能會(huì)分析浪費(fèi)在哪里?這些點(diǎn)都會(huì)把問(wèn)題暴露出來(lái)。
記者:在Scrum會(huì)議中,除了回顧會(huì)議以外,還有沒(méi)有其他的一些會(huì)議?
袁斌:就是Scrum里面?
記者:對(duì),Scrum里面。
袁斌:Scrum里面其實(shí)有幾個(gè)比較重要的會(huì)議,第一就是它的計(jì)劃會(huì)議。在一個(gè)迭代開(kāi)始的時(shí)候進(jìn)行。計(jì)劃會(huì)議是怎么樣保證在迭代過(guò)程中間能夠把所承諾的東西高質(zhì)量的交付。第二個(gè)推薦的會(huì)議是每天早上的一個(gè)站立會(huì)議,15分鐘。這個(gè)站立會(huì)議可以和我們前面你提到的白板一起使用,做到項(xiàng)目透明化。站立會(huì)議如果想開(kāi)的好,最好所有成員在白板前面來(lái)開(kāi)。這時(shí)候每一個(gè)成員都會(huì)把各自的工作狀態(tài)和風(fēng)險(xiǎn)在白板上暴露出來(lái)。
還有一個(gè)會(huì)議是評(píng)審會(huì),在迭代要結(jié)束的時(shí)候,我們來(lái)看這個(gè)迭代的交付是否能夠滿足迭代最開(kāi)始的目標(biāo)。然后就是回顧會(huì)議,回顧會(huì)議是最后我們要看哪些做的不好?哪些做的好?在下個(gè)階段如何改進(jìn)。
記者:在目前國(guó)內(nèi)出現(xiàn)很多敏捷教練這個(gè)角色,您是一位資深敏捷教練,你認(rèn)為敏捷教練在一個(gè)團(tuán)隊(duì)中,他主要的工作有哪些?而且敏捷教練在Scrum工作中建立起一個(gè)角色的轉(zhuǎn)換。
袁斌:我覺(jué)得是這樣,一個(gè)教練在一個(gè)團(tuán)隊(duì)里面,他最關(guān)鍵的是隨時(shí)能夠幫助敏捷在團(tuán)隊(duì)里面能夠落地,包括敏捷的思想,敏捷的實(shí)踐,能夠讓它落地。如果再細(xì)里說(shuō)的話,它是能夠幫助團(tuán)隊(duì),通過(guò)敏捷的思想和實(shí)踐解決團(tuán)隊(duì)現(xiàn)有的問(wèn)題,這個(gè)也是我自己實(shí)際中的做法。也就是說(shuō),敏捷教練和團(tuán)隊(duì)一起來(lái)工作,通過(guò)敏捷的一些實(shí)踐,也包括其它開(kāi)發(fā)模式的優(yōu)秀開(kāi)發(fā)實(shí)踐,來(lái)幫助團(tuán)隊(duì)解決問(wèn)題。這時(shí)我認(rèn)為敏捷教練最應(yīng)該做的。
記者:在項(xiàng)目中他是一個(gè)不斷持續(xù)改進(jìn)地過(guò)程,不能按部就班地說(shuō),敏捷是怎么樣就怎么樣去要求他們這么做。
袁斌:對(duì),因?yàn)楹芏嗝艚輰?shí)踐背后是有假設(shè)的,它假設(shè)團(tuán)隊(duì)成員的技能達(dá)到什么程度,假設(shè)公司的文化會(huì)如何支持尊重、平等,但是這樣的假設(shè)如果在項(xiàng)目中并不存在,如果我們把這些實(shí)踐照搬過(guò)來(lái),一定會(huì)有很多的沖突。
記者:在對(duì)未來(lái)幾年敏捷開(kāi)發(fā)的發(fā)展希望看到哪一些方向?
袁斌:我覺(jué)得未來(lái)幾年,我的希望是,敏捷可以來(lái)落地,它可以真正幫助團(tuán)隊(duì)解決實(shí)際問(wèn)題,提高他的質(zhì)量,提高他的效率,提高他交付的商業(yè)價(jià)值,這是希望看到的。第二個(gè)就是說(shuō),我非常希望大家忽略敏捷這個(gè)詞,不再是說(shuō),我用敏捷了,或者說(shuō)我沒(méi)用敏捷,而是說(shuō)把敏捷這些實(shí)踐和它的思想,甚至于說(shuō),我們基于它的思想,同時(shí)基于我們這個(gè)團(tuán)隊(duì)的現(xiàn)狀,做一些定制化,形成我們自己企業(yè)和團(tuán)隊(duì)的一套方法。然后我把它落地了,給團(tuán)隊(duì)帶來(lái)實(shí)際的好處,我們不再談是否敏捷,而是實(shí)實(shí)在在地在持續(xù)改進(jìn)。
記者:好了,我們今天的采訪就到這里,今天非常感謝袁斌老師跟網(wǎng)友們進(jìn)行分享了一些,敏捷開(kāi)發(fā)在項(xiàng)目實(shí)踐過(guò)程當(dāng)中的一些主要問(wèn)題。謝謝袁斌老師。
袁斌:謝謝師授,也謝謝51CTO這個(gè)平臺(tái)。