摘自http://www.csdn.net/article/2014-10-13/2822067
一個(gè)軟件產(chǎn)品做出來之后栖茉,并不是說永遠(yuǎn)都不用變了裆甩¢晃停基于以下的種種原因瓦盛,我們需要對(duì)原軟件產(chǎn)品進(jìn)行升級(jí):
用戶對(duì)軟件功能提出了新的要求延柠,現(xiàn)在運(yùn)行的軟件不能滿足用戶的新需求祸挪。
原軟件存在bug,用升級(jí)的方式來修補(bǔ)這些bug贞间。
對(duì)原軟件的程序進(jìn)行了優(yōu)化贿条,新的程序在執(zhí)行效率雹仿、性能等方面有所提升。
自主開發(fā)了一些能夠提升用戶體驗(yàn)的新功能整以。
對(duì)于一般的軟件產(chǎn)品來說胧辽,升級(jí)是一項(xiàng)浩大的工程,其中牽涉到很多的人員公黑,包括:市場(chǎng)人員邑商、開發(fā)人員、測(cè)試人員凡蚜、技術(shù)支持人員等人断。
軟件產(chǎn)品的通用升級(jí)流程如下所示:
軟件產(chǎn)品的通用升級(jí)流程
下面對(duì)升級(jí)流程中的各個(gè)步驟進(jìn)行詳細(xì)的說明。
1. 項(xiàng)目研發(fā)經(jīng)理(或項(xiàng)目負(fù)責(zé)人)下達(dá)升級(jí)任務(wù)書
基于客戶的要求或軟件功能的改變朝蜘,項(xiàng)目研發(fā)經(jīng)理(或項(xiàng)目負(fù)責(zé)人)會(huì)向本軟件的開發(fā)小組下達(dá)升級(jí)任務(wù)書恶迈,讓他們安排時(shí)間按照升級(jí)任務(wù)書中的內(nèi)容來制作軟件升級(jí)包。
升級(jí)任務(wù)書中大致包括了以下內(nèi)容:
升級(jí)任務(wù)的下達(dá)時(shí)間和要求完成升級(jí)的時(shí)間谱醇。
現(xiàn)場(chǎng)的設(shè)備情況和當(dāng)前軟件版本暇仲。
本次升級(jí)的目標(biāo)(即升級(jí)是要解決什么問題)和需要升級(jí)到的軟件目標(biāo)版本。
本次升級(jí)的計(jì)劃進(jìn)度及參與的人員副渴。
2. 開發(fā)工程師按照升級(jí)任務(wù)書的要求制作軟件升級(jí)包
升級(jí)任務(wù)書下達(dá)之后奈附,開發(fā)工程師就要按照里面的內(nèi)容來制作軟件升級(jí)包。
軟件升級(jí)包的制作流程如下所示:
軟件升級(jí)包的制作流程
在軟件升級(jí)包的制作過程中佳晶,要注意以下事項(xiàng):
在制作之前桅狠,要詳細(xì)閱讀升級(jí)任務(wù)書,特別要搞清楚現(xiàn)場(chǎng)的當(dāng)前軟件版本是什么轿秧?要升級(jí)到哪個(gè)版本中跌?
對(duì)于某些軟件,部署比較的復(fù)雜菇篡,牽扯到的模塊也比較多漩符。為了了解現(xiàn)場(chǎng)的部署情況,我們可能需要現(xiàn)場(chǎng)人員將該軟件的相關(guān)信息返回來驱还,這些信息包括:軟件版本嗜暴、配置文件、數(shù)據(jù)庫腳本等议蟆。我們對(duì)現(xiàn)場(chǎng)的了解越多闷沥,制作升級(jí)包出錯(cuò)的概率就會(huì)越小。
在制作升級(jí)包的過程中咐容,如果有任何疑問舆逃,一定要向相關(guān)人員求教,不能就放在那里就不管了。軟件的升級(jí)很重要路狮,一個(gè)小小的問題就可能會(huì)導(dǎo)致升級(jí)的失敗虫啥。
在升級(jí)包制作完成之后,開發(fā)人員一定要先行自測(cè)奄妨,待自測(cè)無誤之后再提交測(cè)試工程師驗(yàn)證涂籽。軟件自測(cè)的相關(guān)環(huán)境可以叫測(cè)試工程師提供。
如果軟件的升級(jí)包中涉及到數(shù)據(jù)庫腳本的升級(jí)砸抛,一定要讓現(xiàn)場(chǎng)人員導(dǎo)回現(xiàn)場(chǎng)所用數(shù)據(jù)庫中的數(shù)據(jù)來驗(yàn)證评雌,以確保腳本處理的正確性。因?yàn)楹芏鄶?shù)據(jù)庫腳本會(huì)對(duì)用戶的數(shù)據(jù)進(jìn)行處理直焙,一旦處理不當(dāng)柳骄,會(huì)造成用戶數(shù)據(jù)的丟失或錯(cuò)誤修改。
在制作升級(jí)包的過程中箕般,開發(fā)工程師還要編寫升級(jí)指導(dǎo)書,用以指導(dǎo)現(xiàn)場(chǎng)人員按照步驟進(jìn)行升級(jí)操作舔清。該文檔非常重要丝里,要保證內(nèi)容的嚴(yán)謹(jǐn)性及正確性。一般說來体谒,該文檔包括以下內(nèi)容:
在新版本中新增加的功能或要解決舊版本中的相關(guān)問題杯聚。
升級(jí)前后,軟件的版本號(hào)抒痒。
本升級(jí)包中所包含的內(nèi)容幌绍,如程序、數(shù)據(jù)庫腳本和文檔等故响。
升級(jí)前的準(zhǔn)備工作傀广,如備份文件和數(shù)據(jù)等。
軟件升級(jí)的詳細(xì)步驟及注意事項(xiàng)彩届。
升級(jí)失敗后的處理步驟伪冰。
升級(jí)成功后要驗(yàn)證的功能。
3. 測(cè)試工程師對(duì)升級(jí)包進(jìn)行詳細(xì)驗(yàn)證
開發(fā)工程師對(duì)升級(jí)包的自測(cè)通過之后樟蠕,接下來就到了測(cè)試工程師的“show time”了贮聂。他們會(huì)對(duì)升級(jí)包進(jìn)行嚴(yán)格的驗(yàn)證,以確闭纾現(xiàn)場(chǎng)升級(jí)能夠一次搞定吓懈。
如果在驗(yàn)證的過程中出現(xiàn)問題,他們會(huì)及時(shí)聯(lián)系升級(jí)包的制作人員靡狞,讓制作人員對(duì)相關(guān)的問題進(jìn)行修改耻警。這樣一個(gè)不斷循環(huán)的過程,直到驗(yàn)證無誤為止。
4. 研發(fā)經(jīng)理(或項(xiàng)目負(fù)責(zé)人)將驗(yàn)證通過后的軟件升級(jí)包發(fā)布到現(xiàn)場(chǎng)
在升級(jí)包驗(yàn)證通過之后榕栏,研發(fā)經(jīng)理(或項(xiàng)目負(fù)責(zé)人)就會(huì)將它發(fā)布到現(xiàn)場(chǎng)畔勤,并讓現(xiàn)場(chǎng)支持人員與客戶約定好軟件升級(jí)的時(shí)間。
軟件升級(jí)時(shí)間確定好之后扒磁,研發(fā)經(jīng)理(或項(xiàng)目負(fù)責(zé)人)會(huì)通知相關(guān)的開發(fā)人員和測(cè)試人員做好支持工作庆揪,以應(yīng)對(duì)升級(jí)過程中突發(fā)的情況。
5. 對(duì)現(xiàn)場(chǎng)的升級(jí)工作進(jìn)行支持
在軟件升級(jí)的過程中妨托,相關(guān)的開發(fā)人員和測(cè)試人員需要隨時(shí)保持通訊的暢通缸榛,即:手機(jī)要開機(jī)、即時(shí)通訊工具要打開兰伤、郵箱要登陸内颗。如果升級(jí)中出現(xiàn)問題,現(xiàn)場(chǎng)人員會(huì)及時(shí)與開發(fā)人員和測(cè)試人員取得聯(lián)系敦腔,讓他們幫忙解決均澳。他們會(huì)將現(xiàn)場(chǎng)出現(xiàn)的情況、日志等信息反饋回來符衔,以供分析找前。
順便說一下,因?yàn)榕掠绊懹脩舻恼J褂门凶澹蛘呤菚r(shí)區(qū)的問題躺盛,很多的軟件升級(jí)被安排到深夜執(zhí)行,這就要求開發(fā)人員和測(cè)試人員盡量配合一下形帮,等升級(jí)成功之后再休息槽惫。
以上五步是一個(gè)完整的升級(jí)流程,不同的軟件產(chǎn)品可能會(huì)略有區(qū)別辩撑〗缧保總的說來,軟件升級(jí)是一個(gè)系統(tǒng)的工程槐臀,要確保每一步都做到很完美锄蹂。
隨著軟件原有功能的不斷完善和新功能的層出不窮,對(duì)其進(jìn)行升級(jí)是在所難免的水慨,軟件的成功升級(jí)是廣大軟件從業(yè)者的共同愿望得糜。軟件的每一次成功升級(jí),都是售前售后晰洒、開發(fā)測(cè)試等人員通力合作的結(jié)果朝抖,都是大家用辛苦勞動(dòng)換來的。不過谍珊,當(dāng)聽到新的軟件功能被客戶嘖嘖稱贊的時(shí)候治宣,大家都會(huì)覺得非常的欣慰,覺得付出總會(huì)有回報(bào)的。