本章的內(nèi)容相當(dāng)繁雜,涉及社群軟件開發(fā)過程中的方方面面(除了架構(gòu)設(shè)計(jì))。和本書中的其他章一樣,都是在反思中感悟,在批判中立論。對于程序員來說,我推薦他們閱讀前兩節(jié),對于管理者來說,我推薦他們閱讀后三節(jié)。 在這一章中,我們充分關(guān)注了以人為本的思想。我們希望軟件生產(chǎn)的參與者是簡單的、快樂的、積極的、負(fù)責(zé)的。為了做到這些,我們還需要制度和文化。軟件生產(chǎn)是一項(xiàng)系統(tǒng)工程,這需要我們不斷完善自己的思想體系。機(jī)械地運(yùn)用某些技術(shù)方案是無法真正解決問題的。
社群軟件開發(fā)實(shí)現(xiàn)的實(shí)踐場景兩周后。當(dāng)林峰正在和王蓉討論問題時,李小兵走了過來。“快下班了,什么時候走?”李小兵打斷了他們的談話。今天是周末,他和林峰約好了幾個同事晚上到陽天KTV去Happy的?!翱炝恕O掳嗑妥甙?。”林峰頭也沒回地說。“在忙什么呢?看你們討論了一下午。”李小兵沒有要離開的意思,他坐到了林峰的身邊,看了看電腦屏幕?!敖Y(jié)對開發(fā),呵呵?!绷址逍Φ溃骸癛alph說,要把我們的數(shù)據(jù)模型和ACORD標(biāo)準(zhǔn)之間做個映射。”李小兵看了看林峰,又看了看王蓉,有點(diǎn)納悶地說:“你們也可以結(jié)對?”“照Ralph的說法,兩個人一起做事就是結(jié)對。”“Ralph說,我看你已經(jīng)被洗過腦了,哈哈?!崩钚”蛉さ馈!拔梗任覀冇懻撏炅?,你們再聊好不好?!蓖跞赜悬c(diǎn)不耐煩了。
李小兵扭身跑掉了??兹缰隽艘粋€大膽的決定。在TFC項(xiàng)目中,將使用ACORD標(biāo)準(zhǔn)作為領(lǐng)域模型。這意味著,核心系統(tǒng)的數(shù)據(jù)模型被拋棄了。而為了繼續(xù)使用核心系統(tǒng)提供的各項(xiàng)功能,必須在這兩個模型間做一個映射。孔如之和林峰做了大量的溝通。起初在林峰看來,這件事是多此一舉,不但增加了工作量,而且降低了程序的性能。另外,這是一件枯燥乏味的事情,要了解兩個模型的業(yè)務(wù)含義,還要考慮業(yè)務(wù)含義上的差異。林峰對此一點(diǎn)興趣也沒有?!昂诵南到y(tǒng)的數(shù)據(jù)模型不能滿足TFC項(xiàng)目的要求,所以將來的變化會很頻繁?!笨兹缰沁@樣解釋的:“相比而言,ACORD是一個標(biāo)準(zhǔn),它已經(jīng)經(jīng)過了很多領(lǐng)域?qū)<液蛯?shí)踐的檢驗(yàn)。這是其一。
社群軟件開發(fā)標(biāo)準(zhǔn)的領(lǐng)域問題抽象比核心系統(tǒng)的數(shù)據(jù)模型更加靈活和全面,標(biāo)準(zhǔn)本身也提供了擴(kuò)展能力。這是其二。我們在ACORD標(biāo)準(zhǔn)上的努力更有可能成為有價值的知識積累。這是其三。最后,管理軟件開發(fā)標(biāo)準(zhǔn)總是更有利于我們進(jìn)行數(shù)據(jù)交換,無論是企業(yè)內(nèi)部還是企業(yè)之間。”