(1) 設(shè)計(jì)先行
在做系統(tǒng)的總體設(shè)計(jì)方案時(shí),務(wù)必把好相關(guān)產(chǎn)品的選型關(guān),確保網(wǎng)絡(luò)、主機(jī)、系統(tǒng)軟件與應(yīng)用軟件之間不要存在較大的技術(shù)兼容性問題。在網(wǎng)絡(luò)平臺(tái)建設(shè)方案中,明確相關(guān)設(shè)備的技術(shù)參數(shù)和配置要求。
(2) 售前產(chǎn)品測(cè)試
在做項(xiàng)目招投標(biāo)工作時(shí),要求投標(biāo)方在售前提供產(chǎn)品兼容性測(cè)試,以避免在項(xiàng)目實(shí)施過程中才暴露技術(shù)兼容性問題。涉及應(yīng)用軟件開發(fā)的集成項(xiàng)目,要在開發(fā)工作的早期,做技術(shù)兼容性測(cè)試,以避免在項(xiàng)目開發(fā)后期才暴露技術(shù)兼容性問題。
例如,我們?cè)陂_發(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ù)庫和操作系統(tǒng)之間的技術(shù)兼容性問題,如果這些問題在系統(tǒng)實(shí)施時(shí)才暴露或處理,勢(shì)必會(huì)拖延項(xiàng)目進(jìn)度。
5、性能問題
由于先期設(shè)計(jì)不足,性能問題往往在系統(tǒng)切換或新系統(tǒng)使用一段時(shí)間后暴露。出現(xiàn)性能問題往往要進(jìn)行大量的優(yōu)化工作,甚至局部的或全面的重新設(shè)計(jì)。無論是用戶還是開發(fā)者,誰都不希望出現(xiàn)性能問題。
(1) 性能規(guī)劃
在系統(tǒng)設(shè)計(jì)時(shí),應(yīng)做好前期做性能規(guī)劃,對(duì)可能出現(xiàn)性能問題的環(huán)節(jié)做到充足的估計(jì)。在做數(shù)據(jù)庫設(shè)計(jì)時(shí),應(yīng)爭(zhēng)取DBA參與。
另外,在技術(shù)方法方面,盡可能采取一些性能優(yōu)化模式,如DTO、AJAX、延遲加載等,盡可能在開發(fā)過程中解決了性能問題。不至于到了項(xiàng)目后期才解決性能問題,既費(fèi)錢又費(fèi)時(shí)。
(2) 性能測(cè)試
在開發(fā)過程中,要重視性能測(cè)試和壓力測(cè)試,盡可能模擬現(xiàn)實(shí)使用環(huán)境,搭建測(cè)試平臺(tá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)目開發(fā)計(jì)劃中,為后期性能優(yōu)化留有余地。在對(duì)系統(tǒng)進(jìn)行性能優(yōu)化后,要進(jìn)行性能測(cè)試和壓力測(cè)試,可能還要做幾次回歸測(cè)試。因此,應(yīng)該留有充足的時(shí)間和人力。
6、倉促上線
在項(xiàng)目實(shí)施過程中,系統(tǒng)切換上線環(huán)節(jié)最容易出紕漏。項(xiàng)目好不容易開發(fā)完成了,卻在最后最后時(shí)刻功潰一匱。如果項(xiàng)目小,影響面窄倒不怎么重要;如果是影響面大的項(xiàng)目,則千萬不可出現(xiàn)問題。在系統(tǒng)切換前,應(yīng)充分考慮各種可能出現(xià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)切換過程中,用戶都存在適應(yīng)過程。除了在切換前做好操作培訓(xùn)外,還要在新舊系統(tǒng)切換過程中做好交叉培訓(xùn)。讓用戶提前一些時(shí)間上班,讓早班的用戶在交班時(shí)培訓(xùn)中班的用戶,中班的用戶培訓(xùn)晚班的用戶。做好交叉培訓(xùn)能夠讓系統(tǒng)平衡過渡。
7、可用性問題
軟件的可用性包括軟件的使用是不是高效、是否容易學(xué)習(xí)、是否容易記憶、是否令人愉快、是否不易出錯(cuò)等諸多因素。往往由于軟件的可用性差,導(dǎo)致用戶不滿意,甚至被市場(chǎng)淘汰。在項(xiàng)目開發(fā)中應(yīng)注意可用性