三、概要設(shè)計
確定影響系統(tǒng)設(shè)計的約束因素:本系統(tǒng)應(yīng)當(dāng)遵循的標準或規(guī)范、軟件、硬件環(huán)境(包括運行環(huán)境和開發(fā)環(huán)境)的約束、接口/協(xié)議的約束、軟件質(zhì)量的約束、隱含約束等。
確定設(shè)計策略:擴展策略、復(fù)用策略、折衷策略。
系統(tǒng)分解與設(shè)計:將系統(tǒng)分解為若干子系統(tǒng),確定每個子系統(tǒng)的功能以及子系統(tǒng)之間的關(guān)系;將子系統(tǒng)分解為若干模塊,確定每個模塊的功能以及模塊之間的關(guān)系。
數(shù)據(jù)庫概要設(shè)計。
輸出文檔:
產(chǎn)品概要設(shè)計說明書、數(shù)據(jù)概要設(shè)計模型(CDM)
四、詳細設(shè)計
確定功能模塊的參與者、數(shù)據(jù)庫表、輸入?yún)?shù)說明、前置條件、基本流程、異常流程、日志等信息。
各層次結(jié)構(gòu)的接口定義
數(shù)據(jù)庫設(shè)計:邏輯設(shè)計—>物理設(shè)計->安全性設(shè)計->優(yōu)化
實施建議:
先對系統(tǒng)設(shè)計人員進行“專題”培訓(xùn),讓他們掌握必要的系統(tǒng)設(shè)計技能。
由于國內(nèi)絕大多數(shù)的大學(xué)不開設(shè)“用戶界面設(shè)計課程”,這導(dǎo)致大部分軟件開發(fā)人員不善于設(shè)計用戶界面。項目開發(fā)小組應(yīng)當(dāng)設(shè)法邀請用戶界面設(shè)計專家參與(或指導(dǎo))本軟件的 界面設(shè)計。
對系統(tǒng)設(shè)計過程中產(chǎn)生的所有有價值的文檔進行配置管理。
輸出文檔:
產(chǎn)品詳細設(shè)計說明書、數(shù)據(jù)物理設(shè)計模型(PDM)、自定義數(shù)據(jù)類型及BO數(shù)據(jù)類型文件、數(shù)據(jù)字典、系統(tǒng)測試用例、對象模型(OOM)
五、Coding
軟件編碼,各接口的實現(xiàn)。
單元測試。
實施建議:
對開發(fā)人員進行“高質(zhì)量程序設(shè)計”培訓(xùn),讓他們掌握編寫高質(zhì)量程序的技能。
對開發(fā)人員進行“版本控制、代碼審查、測試、改錯”等方面的培訓(xùn),提高他們的工作效率。
開發(fā)小組根據(jù)項目的資源、時間等限制因素,可以適當(dāng)?shù)販p少測試的工作量。
對實現(xiàn)與測試過程中產(chǎn)生的所有代碼和有價值的文檔進行配置管理。
輸出:
單元測試報告、代碼評審報告
六、集成測試
根據(jù)系統(tǒng)測試用例測試系統(tǒng)的功能性需求,保證系統(tǒng)的正常功能處理及異常處理是否正確。
用戶界面測試,重點是測試軟件系統(tǒng)的易用性和視覺效果等。
健壯性測試,測試軟件系統(tǒng)在異常情況下能否正常運行的能力。(容錯能力和恢復(fù)能力)
安全性測試(這種測試一般能通過建行的fortify 軟件評測即可)
如果產(chǎn)品需要安裝,那么還得經(jīng)過安裝與反安裝測試
實施建議:
對系統(tǒng)測試人員進行必要的培訓(xùn),提高他們的測試效率。
項目經(jīng)理和測試小組根據(jù)項目的資源、時間等限制因素,設(shè)法合理地減少測試的工作量,例如減少“冗余或無效”的測試。
系統(tǒng)測試小組根據(jù)產(chǎn)品的特征,可以適當(dāng)?shù)匦薷谋疽?guī)范的各種文檔模板。
對系統(tǒng)測試過程中產(chǎn)生的所有代碼和有價值的文檔進行配置管理。
為了調(diào)動測試者的積極性,建議企業(yè)或項目設(shè)立獎勵機制,例如:根據(jù)缺陷的危害程度把獎金分等級,每個新缺陷對應(yīng)一份獎金,把獎金發(fā)給第一個發(fā)現(xiàn)該缺陷的人。
輸出:
系統(tǒng)測試報告、缺陷管理報告、操作手冊