在做項(xiàng)目招投標(biāo)工作時(shí),要求投標(biāo)方在售前提供產(chǎn)品兼容性測(cè)試,以避免在項(xiàng)目實(shí)施過(guò)程中才暴露技術(shù)兼容性問(wèn)題。涉及應(yīng)用軟件開(kāi)發(fā)的集成項(xiàng)目,要在開(kāi)發(fā)工作的早期,做技術(shù)兼容性測(cè)試,以避免在項(xiàng)目開(kāi)發(fā)后期才暴露技術(shù)兼容性問(wèn)題。
例如,我們?cè)陂_(kāi)發(fā)深圳市汽車客運(yùn)站售票及站務(wù)聯(lián)網(wǎng)調(diào)度系統(tǒng)時(shí),為了確保技術(shù)兼容,在做硬件招標(biāo)時(shí)要求小型機(jī)設(shè)備廠商提供售前技術(shù)兼容性測(cè)試工作,并將測(cè)試結(jié)果做為評(píng)標(biāo)指標(biāo)。在深圳市軟件測(cè)試中心對(duì)IBM、SUN、HP三家公司提供的小型機(jī)進(jìn)行測(cè)試時(shí),暴露了許多應(yīng)用軟件、應(yīng)用服務(wù)器、數(shù)據(jù)庫(kù)和操作系統(tǒng)之間的技術(shù)兼容性問(wèn)題,如果這些問(wèn)題在系統(tǒng)實(shí)施時(shí)才暴露或處理,勢(shì)必會(huì)拖延項(xiàng)目進(jìn)度。
6. 性能問(wèn)題
由于先期設(shè)計(jì)不足,性能問(wèn)題往往在系統(tǒng)切換或新系統(tǒng)使用一段時(shí)間后暴露。出現(xiàn)性能問(wèn)題往往要進(jìn)行大量的優(yōu)化工作,甚至局部的或全面的重新設(shè)計(jì)。無(wú)論是用戶還是開(kāi)發(fā)者,誰(shuí)都不希望出現(xiàn)性能問(wèn)題。
(1) 性能規(guī)劃
在系統(tǒng)設(shè)計(jì)時(shí),應(yīng)做好前期做性能規(guī)劃,對(duì)可能出現(xiàn)性能問(wèn)題的環(huán)節(jié)做到充足的估計(jì)。在做數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí),應(yīng)爭(zhēng)取DBA參與。
另外,在技術(shù)方法方面,盡可能采取一些性能優(yōu)化模式,如DTO、 AJAX、延遲加載等,盡可能在開(kāi)發(fā)過(guò)程中解決了性能問(wèn)題。不至于到了項(xiàng)目后期才解決性能問(wèn)題,既費(fèi)錢又費(fèi)時(shí)。
(2) 性能測(cè)試
在開(kāi)發(fā)過(guò)程中,要重視性能測(cè)試和壓力測(cè)試,盡可能模擬現(xiàn)實(shí)使用環(huán)境,搭建測(cè)試平臺(tái)。另外,由于開(kāi)發(fā)環(huán)境的計(jì)算機(jī)往往比生產(chǎn)環(huán)境的計(jì)算機(jī)配置高,在做測(cè)試時(shí)應(yīng)盡量找一些配置低的機(jī)器、較小的網(wǎng)絡(luò)帶寬進(jìn)行測(cè)試。
(3) 充足的調(diào)試時(shí)間
在項(xiàng)目開(kāi)發(fā)計(jì)劃中,為后期性能優(yōu)化留有余地。在對(duì)系統(tǒng)進(jìn)行性能優(yōu)化后,要進(jìn)行性能測(cè)試和壓力測(cè)試,可能還要做幾次回歸測(cè)試。因此,應(yīng)該留有充足的時(shí)間和人力。
7.倉(cāng)促上線
在項(xiàng)目實(shí)施過(guò)程中,系統(tǒng)切換上線環(huán)節(jié)最容易出紕漏。項(xiàng)目好不容易開(kāi)發(fā)完成了,卻在最后最后時(shí)刻功潰一匱。如果項(xiàng)目小,影響面窄倒不怎么重要;如果是影響面大的項(xiàng)目,則千萬(wàn)不可出現(xiàn)問(wèn)題。在系統(tǒng)切換前,應(yīng)充分考慮各種可能出現(xiàn)的問(wèn)題,做好風(fēng)險(xiǎn)對(duì)策。
(1) 應(yīng)急預(yù)案
面對(duì)各種不可預(yù)知的風(fēng)險(xiǎn),要做好應(yīng)急預(yù)案。正常運(yùn)行的車站售票系統(tǒng)在春運(yùn)、旅游黃金周,都會(huì)做好應(yīng)急預(yù)案。新系統(tǒng)切換時(shí),更應(yīng)該做好應(yīng)急預(yù)案。應(yīng)急預(yù)案中應(yīng)做好最壞的打算,售票系統(tǒng)不能正常工作時(shí),準(zhǔn)備手工票就是最壞的打算。
(2) 分步切換
為了減少風(fēng)險(xiǎn)的影響,可以做系統(tǒng)分步切換的方案。例如:售票系統(tǒng)在切換時(shí),往往用新系統(tǒng)售預(yù)售票,或者是用新系統(tǒng)售長(zhǎng)途車站,用舊系統(tǒng)暫時(shí)售短程票。待新系統(tǒng)運(yùn)行穩(wěn)定后,再全面切換到新系統(tǒng)。針對(duì)多個(gè)用戶單位的系統(tǒng)切換,也可分單位進(jìn)行。
(3) 交叉培訓(xùn)
新舊系統(tǒng)切換過(guò)程中,用戶都存在適應(yīng)過(guò)程。除了在切換前做好操作培訓(xùn)外,還要在新舊系統(tǒng)切換過(guò)程中做好交叉培訓(xùn)。讓用戶提前一些時(shí)間上班,讓早班的用戶在交班時(shí)培訓(xùn)中班的用戶,中班的用戶培訓(xùn)晚班的用戶。做好交叉培訓(xùn)能夠讓系統(tǒng)平衡過(guò)渡。
8.可用性問(wèn)題
軟件的可用性包括軟件的使用是不是高效、是否容易學(xué)習(xí)、是否容易記憶、是否令人愉快、是否不易出錯(cuò)等諸多因素。往往由于軟件的可用性差,導(dǎo)致用戶不滿意,甚至被市場(chǎng)淘汰。在項(xiàng)目開(kāi)發(fā)中應(yīng)注意可用性問(wèn)題,避免軟件出現(xiàn)可用性方面的風(fēng)險(xiǎn)。
(1) 了解用戶
到用戶工作現(xiàn)場(chǎng),了解目標(biāo)用戶使用軟件的真實(shí)目的,從用戶的角度、從用戶的立場(chǎng)出發(fā),了解如何通過(guò)軟件系統(tǒng)替代用戶的業(yè)務(wù)處理流程中,最繁瑣、最容易出問(wèn)題、或者是大量重復(fù)勞動(dòng)的環(huán)節(jié),讓軟件提高用戶的工作效能和效率。例如:售票系統(tǒng)中,使用頻度最高的界面是售票界面,售票員最關(guān)心的