一、軟件生命周期,6大階段:
- | |
---|---|
問題的定義及規划 | 主要確定軟件的開發目的及其可行性,制訂開發計划。 |
需求分析 | 在確定軟件開發可行的情況下,對軟件要實現的各個功能進行詳細分析,明確客戶需求,輸出需求規格說明書(原型圖) |
系統設計 | 把需求分析得到的結果轉變為軟件結構和數據結構,形成系統架構。(需求形成具體架構) 概要設計:主要是架構的實現,指搭建架構、表述各模塊功能、模塊接口連接和數據傳遞的實現等項事務 詳細設計:對概要設計中表述的各模塊進行深入分析,對各模塊組合進行分析等,這一階段要達到偽代碼級別,已經把程序的具體實現的功能,現象等描述出來,其中需要包含數據庫設計說明。(偽代碼接近自然語言,體現思維) |
軟件編碼 | 按照詳細設計好的模塊功能表,編程人員編寫出計算機可運行的程序代碼。 |
軟件測試 | 在軟件設計完成后要經過嚴密的測試,以發現軟件在整個設計過程中存在的問題並加以糾正 |
運行維護 | 軟件維護是軟件生命周期中持續最長的階段。在軟件開發完成並投入使用后,由於多方面的原因,軟件不能繼續適應用戶的需求。要延續軟件的使用壽命,就必須對軟件進行維護。軟件的維護包括糾錯性維護和改進性維護兩個方面------1.修復了xxxbug 2 優化了xx的功能 3新增了**用戶體驗。1是糾錯性維護 2和3是改進性維護 |
階段1、用戶需求和軟件計划
對軟件產品進行分析,確定開發的可行性---->制定開發計划
階段2、需求分析
明確客戶的需求、輸出需求規格說明書和原型圖
階段3、軟件設計
- 包括概要設計和詳細設計
- 概要設計:軟件架構的設計;指搭建架構、表述各個功能模塊的作用,軟件UI方面的設計,輸出概要設計說明書
- 詳細設計:對整體架構進行分析,對概要設計中的各個模塊功能進行詳細分析,將程序的具體功能描述出來(這一階段要達到偽代碼的級別)、包括數據庫分析(數據庫設計說明書)
階段4、軟件編碼
- 開發人員編寫代碼
階段5、軟件測試
-
單元測試
一般由開發人員測試,測試程序代碼,保證編譯正常(如注冊)
測試技術為:白盒測試 -
集成測試
對各個單元進行組合后,測試各個單元之間的接口是否正確、數據能否正常傳遞,如:注冊單元和登錄單元是否可以互相傳遞數據。
注冊一個用戶后,可以在登錄模塊中進行登錄操作,則代表測試通過
測試技術為:灰盒測試 -
系統測試
對軟件按照軟件規格說明書的要求,測試軟件的功能和性能是否和用戶需求相符合,在系統中運行是否存在漏洞。根據測試用例,進行完整的系統測試
測試技術為:黑盒測試 -
驗收測試
微信驗 --->產品經理驗收
OA系統 ---->需求公司進行驗收
階段6、運行維護
包括糾錯性維護、改進性維護
其中比如:當一款已經上線的軟件再次發布版本是,會寫明修復了xxx的bug、優化了xxx的功能、新增了xxx的用戶體驗
二、軟件生命周期模型
1、瀑布模型、V模型、W模型、敏捷類生命周期
V模型
三、軟件測試的階段&流程
1、軟件測試的基本流程:五個階段
- | |
---|---|
測試需求分析 | 閱讀需求,理解需求,學習一些業務或者新增的業務,變更的業務等,會讓你參與需求評審,在評審階段就需要了解需求的業務流程,針對有問題或有風險的流程提出質疑或提問,讓產品經理階段,同時也需要確認需求的定版時間 |
測試計划階段 | 主要任務是編寫測試計划,參考需求的功能划分,項目總體計划,內容包括:測試范圍、進度安排、人力物力的分配,整體測試策略的制定,例如:手工測試,壓力測試,性能測試、自動化測試、和風險評估與規避措施有一個制定,一般由測試負責人編寫,當然我們也會參與相關的評審工作 |
測試設計階段 | 主要任務是編寫測試用例,參考需求及接口,三方文檔等,有不明確的地方需要及時和產品溝通、開發溝通。用例編寫完成后,最好召開用例評審工作,與產品、開發進行確認 |
測試執行階段 | 首先拿到開發提現郵件中的,先關SQL增量腳本、redis、MQ、配置等先關資料,搭建好測試環境,執行預測。(冒煙)以判定當前版本可測與否,如果預測通過,正式進入系統測試,遇到問題提交bug到缺陷管理系統展開缺陷修復跟蹤,若預測失敗,郵件報告研發,及相關負責人,報告影響主流程測試的相關缺陷並提交到缺陷管理系統,測試終止,等待下一輪提測。 |
測試評估階段 | 編寫測試報告,對整個測試的過程和版本質量做一個詳細的評估,確認是否可以上線 |
測試驗收階段 | 上線完成后,及時跟進項目線上問題的反饋,跟進問題的修復,及時發版上線修復 |
復盤階段 | 對測試過程中,上線完成后隱含未測試到的問題,進行復盤工作,報告開發、測試,出現問題時的應對過程,以及開發過程,減少線上發生類似的問題 |
2、軟件測試流程:
測試需求分析、測試計划、測試設計、測試執行、測試評估