/*********************************************************************************** * Filename: 一線研發(fā)之聲:軟件管理 之 那些隨風(fēng)飄逝的代碼與傳承 * Author:SedateFire * E-mail:SedateFire@126.com * Version:1.1 * Modify Date: 2012-01-18 * key: 軟件管理 版本管理 設(shè)計(jì)規(guī)劃 * 本文首發(fā): 環(huán)球資源-電子工程專輯-博客: 靜心齋 ***********************************************************************************/ 時(shí)間有些晚了,講個(gè)真實(shí)的故事起個(gè)引子吧,大家可以先討論下...... 公司招來(lái)了一位新人,恰巧市場(chǎng)反饋說(shuō)三年前的一個(gè)產(chǎn)品需要進(jìn)行小功能修改,于是決定讓他接手。你猜猜接下去發(fā)生什么事情... 那個(gè)新人抱著售后給他的機(jī)器,站在辦公室的十字街頭,迷茫了 他不知道如何入手...不知道怎樣找到源代碼,對(duì)這臺(tái)機(jī)器的作用也只是大概了解。 帶他的師傅說(shuō),我也不知道這臺(tái)機(jī)器的最早創(chuàng)建者是誰(shuí),我來(lái)公司才兩年。你去問(wèn)問(wèn)研發(fā)部門經(jīng)理吧。 經(jīng)理說(shuō),哦哦,好像是那個(gè)xxx是原創(chuàng)者,那個(gè)家伙離職了。不過(guò)他的代碼放在哪里我也不大清楚,你到部門的交接文件夾找找看。 萬(wàn)幸,這個(gè)新人七搞八搞找到xxx的代碼移交,結(jié)果傻眼了,竟然1.xxx和2.xxx,3.xxx的代碼都有在使用,因?yàn)槭歉鶕?jù)不同國(guó)家的大客戶VIP版本,媽的,那我手里這臺(tái)機(jī)器載的是哪個(gè)版本的代碼。 經(jīng)理說(shuō),那我也不知道了,不然你去問(wèn)一下給你機(jī)器的那個(gè)售后,然后去問(wèn)生產(chǎn)部載的是哪個(gè)程序吧。 結(jié)果呢,生產(chǎn)部都是桀驁不馴的,不鳥(niǎo)他... 幾經(jīng)折騰,帶他的師傅幫忙問(wèn)話,終于弄到了生產(chǎn)部對(duì)應(yīng)的二進(jìn)制下載程序。 在這個(gè)過(guò)程中,新人發(fā)現(xiàn),原來(lái)硬件也是有很多版本號(hào)的,新舊版居然都在量產(chǎn),供給不同的VIP大客戶。 先不管,編譯每個(gè)源碼進(jìn)行二進(jìn)制程序比對(duì)匹配。結(jié)果結(jié)果,竟然找不到源代碼了,所有程序編譯出來(lái)的二進(jìn)制檔和生產(chǎn)的比對(duì)結(jié)果都不一樣。 這下子新人不蛋定了,源碼都“丟失”了,程序里面一堆編譯條件,也不知道哪個(gè)和哪個(gè)的組合才能夠得到和生產(chǎn)部相同的二進(jìn)制檔。 這些才只是悲催的開(kāi)始,更為悲催的是程序即使找到了,也沒(méi)有說(shuō)明文檔。 怎么辦,從main開(kāi)始看唄,邊摸索使用機(jī)器,邊看代碼 啃了源代碼三四天,邊看邊自己注釋,好不容易才艱難地適應(yīng)了原創(chuàng)者的代碼風(fēng)格,剛剛要找到線索時(shí),老板急了,怎么一個(gè)小功能改到現(xiàn)在還沒(méi)好,他用懷疑的眼神看著你...... 怎么辦,加班吧 有的時(shí)候,是真正的連源代碼都找不到了,因?yàn)槿耸庐悇?dòng)頻繁,電腦更換,硬盤損壞等等原因,再也無(wú)法找到那些代碼了。那就哭吧,只好跟客戶推脫說(shuō)這個(gè)產(chǎn)品,因?yàn)閍bc原因,無(wú)法升級(jí)。 當(dāng)然,可以預(yù)見(jiàn)的是,新人走了,一聲不吭,永不回頭?蛻魺o(wú)法忍受維護(hù)周期越來(lái)越長(zhǎng),忍痛更換了整套系統(tǒng),用別的公司產(chǎn)品。 |