日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
討論:敏捷開發(fā)真的對架構設計不利嗎?

目前有很多程序開發(fā)人員都認為敏捷開發(fā)會幫助項目更快的完成,但是本次討論卻要從反方向來進行探討。希望這些對大家有所幫助。

增量迭代開發(fā)(敏捷實踐之一,它意味著每次迭代的產(chǎn)出只是本次迭代范圍內(nèi)的需求)真的不利于產(chǎn)生好的設計嗎?Scrum真的提倡“忽視架構問題”嗎?如果沒有敏捷技術實踐的話,架構設計能有效的演化嗎?測試先行式的開發(fā)真會產(chǎn)生優(yōu)雅的設計嗎?在紅綠條提示下的重構循環(huán)只在局部小范圍內(nèi)有效嗎?

來自Net Objectives的Alan Shalloway就利用Scrum構建應用的經(jīng)驗向ScrumDevelopment yahoo group的成員提出一些問題,問題之一就是“他們是否找到代碼質(zhì)量是依靠什么來保證的?”

當我在課程中或在那些討論“向已建系統(tǒng)中追加新特性”的會議中提出這個問題時,每個人都認為這屬于集成成本。我想,這是因為大多數(shù)人不會編寫那些融入了很多設計模式的具有良好的擴展性、足夠靈活并且易維護的代碼。這些人中,大部分也沒有使用過Scrum。

Shalloway隨后詳細解釋了他的觀點:

……正如Scrum所告訴我們的,他們(指在Scrum團隊中的開發(fā)者)根據(jù)客戶價值一次只開發(fā)系統(tǒng)的一小部分,如果團隊中有高級架構師的話,就會組織得更好。很多開發(fā)者有一種很好的意識,即他們會回頭看一下是否應該做一些改動,使架構更合理。但更多的人并不知道,假如代碼是通過拷貝、粘貼并修改(甚至改得面目全非)得來的,那么這會帶來很多冗余。此時,Template Method可能是一個比較好的解決方案。

也許我悲觀了一些,但我的感覺是,假如你沒有注意熵的話,就意味著它們會達到你不期望的地步。在你的案例中,你正在使用Scrum來改善很多團隊忽視的東西。所以,我的問題是:

大家忽視它了嗎?

如果真是這樣,它會引來問題嗎?

到目前為止,這些反應都表明很多使用Scrum的團隊有這個問題,甚至那些堅持寫測試和進行重構的團隊也有同樣的問題。那些沒有使用多少有些變化的敏捷技術實踐的團隊,可能會有更大的麻煩。(請記?。篠crum 與開發(fā)技術沒有必然的聯(lián)系,你可以使用傳統(tǒng)方法開發(fā)軟件,也可以用XP,或者其它技術實踐,只要你在Scrum的框架之內(nèi)使用就可以了)

接下來,讓我們討論一下現(xiàn)實中,Red-Green-Refactor loop是如何發(fā)揮作用的?一個團隊在寫測試和重構方面深有心得,就會有一個好的設計嗎?Paul Jones 的blog中有一篇關于TDD如何創(chuàng)建了混沌代碼(Ravioli Code),宣稱用TDD開發(fā)出來的代碼是低耦合的代碼:

我想,很多TDD和測試先行的理想主義者和宣傳者寫出了的確經(jīng)過充分測試的代碼,但還是很難理解。

Jones并不想撼動TDD,因為與其測試目的相比,TDD實際上更關注于設計。但這還是會帶來一個有趣的事情。在使用這些實踐的敏捷社區(qū)中,好在哪里呢?隨著社區(qū)的成長,這些實踐帶來的麻煩比其帶來的好處還多嗎?與傳統(tǒng)開發(fā)技術相比,這些工具被不正確的使用是否更危險?

最后,讓我們假設:我們正在恰當?shù)厥褂肧crum和TDD。畢竟,象Ron Jeffries 在《We Tried Baseball and It Didn't Work》一文中所呈現(xiàn)的,我們不能因為自己沒有正確地使用它而將不好的結果強加給它。TDD會產(chǎn)生好的設計嗎?對于使用Red-Green-Refactor loop的做法,重構可以說是一種局部優(yōu)化技術。我們優(yōu)化局部的設計。本質(zhì)上,這等同于steepest descent algorithm,也就意味著重構幾乎總是會帶來次優(yōu)設計,就象使用TDD來做“數(shù)獨游戲”一樣。

現(xiàn)在是我們用批判的眼光來重新審視我們的這些實踐的時候了嗎?


當前標題:討論:敏捷開發(fā)真的對架構設計不利嗎?
標題鏈接:http://m.5511xx.com/article/cdsepip.html