上篇主要講個(gè)人發(fā)展,本篇談?wù)勎覍γ艚蓍_發(fā)的認(rèn)識。現(xiàn)在很多新員工一上來就是敏捷開發(fā)的方式,形式上是有了,可能理解上還有不到位的地方,希望能對這些人有所收獲。最后結(jié)合兩個(gè)段子,解釋一下我是如何適應(yīng)環(huán)境的。
1 為什么采用敏捷開發(fā)
首先給出一個(gè)不言自證的結(jié)論:世間的物質(zhì)都在進(jìn)化成越來越復(fù)雜的東西。項(xiàng)目,團(tuán)隊(duì)也是如此。想想你的團(tuán)隊(duì)或產(chǎn)品,是否越來越大,越來越復(fù)雜。
同時(shí),軟件行業(yè)有一個(gè)很有意思的現(xiàn)象,大項(xiàng)目通常表現(xiàn)平平,小項(xiàng)目小團(tuán)隊(duì)往往更容易成功。到底是什么原因?qū)е麓箜?xiàng)目難以成功呢?《人月神話》中巴比倫塔的例子說明,在人手,時(shí)間,資源和技術(shù)都不是問題的情況下,一個(gè)大項(xiàng)目還是會失敗,所欠缺的就是兩個(gè)方面:交流和交流的結(jié)果---組織。
《人月神話》中的焦油坑
軟件開發(fā)中最大的風(fēng)險(xiǎn)往往不是技術(shù)的缺陷,而是缺少溝通。當(dāng)團(tuán)隊(duì)的所有成員多到不能同時(shí)坐在一張餐桌旁,交流上的開銷問題就開始嚴(yán)重了。用一個(gè)形象的比喻,因?yàn)樽笫植恢烙沂衷诟墒裁?,所以?xiàng)目很難順利開展,而此時(shí)單純的人員增加也無法解決問題,《人月神話》中的焦油坑也很好的解釋了這個(gè)現(xiàn)象。
胚胎分裂中也遇到了類似的問題,分裂成各個(gè)器官和系統(tǒng),最終形成人體,通過大腦的神經(jīng)系統(tǒng),構(gòu)建了一個(gè)管理體系。軟件開發(fā)也是這種分而治之的思路,我們把大系統(tǒng)中各個(gè)小項(xiàng)目之間存在的關(guān)系理順,規(guī)范項(xiàng)目之間的接口,這樣我們不必關(guān)心接口之外的東西。
瀑布式開發(fā)采用這種方式來解決交流問題,大問題變成小問題,把一個(gè)十分的難題分解是十個(gè)一分的問題。但這還是存在兩點(diǎn)不足:第一,開銷還在,只是變成了整潔的文檔和漂亮的圖表;第二,隨著體系的復(fù)雜,系統(tǒng)控制了一切,人也要遵從它。換句話說,我們找到了解決問題的辦法,但問題并沒有簡化,而且每個(gè)人的工作很容易變得枯燥,重復(fù),沒有成就感,簡單說,就是工作不開心。
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26