1.瀑布模型
它是軟件開發的第一個也是最基本的技術。這是一個簡單的模型,易於使用和理解。執行按順序進行,這意味著一個步驟的輸出等於下一個步驟的輸入。由於這個原因,它也被稱為線性順序生命周期模型。
為了避免許多階段的關注點重疊,每個步驟都應該在進入下一個步驟之前完成。瀑布模型的每個階段都包括將前一個階段的可交付成果(如需求)轉移到設計階段、從設計到開發,等等。當我們有生命關鍵(醫院應用)和機器關鍵(軍事項目)需求時,瀑布方法將經常被使用。
- 需求收集
- 可行性研究
- 設計
- 編碼
- 測試
- 安裝
- 維護
需求收集
瀑布模型的第一個階段是需求收集,在這個階段中,業務分析人員將所有客戶信息或業務需求編譯成一個需求
文檔。此外,本文件應簡明易懂,並適當說明所有需求。
SRS文檔使用軟件需求規範[SRS]、客戶需求規範[CRS]和業務需求規範[BRS]來創建。這份SRS文件包含了所有需要建造和設計的東西。
功能性需求的特征
- 它應該用一種更簡單的語言編寫,這樣更容易理解。
- 規範應該在適當的流程中。
- 需求應該是可數的。
可行性研究
可行性研究基於項目的需求,它涉及許多專業人員(人力資源、業務分析師和架構師),以確定項目是否可以完成。要創建一個成功的項目,我們必須堅持以下品質,這是基於客戶的需求:
方麵 |
描述 |
法律 |
公司是否有能力根據網絡法律和其他監控協議管理項目? |
技術 |
檢查可用的機器是否支持該軟件。 |
操作可行性 |
難道公司不應該按照客戶的要求來運作嗎? |
經濟 |
公司是否有能力在預算範圍內完成產品? |
時間表 |
這個項目能否按時完成是有爭議的。 |
設計
一旦可行性研究完成,我們將進入下一個階段,即設計階段。我們將使用各種技術設計產品的體係結構,包括軟件和硬件的混合,多種編程語言(PHP、Java、。Net等)和一個數據庫(MySQL, Oracle)。在此之後,設計師為應用程序準備了一個計劃,該計劃可以分為兩個部分:
- 高級設計
- 低級設計
高層設計:
設計師將隻關注決策樹、流程圖、決策表、流程圖和數據字典等模型,而架構師將處理其他一切。
低級設計:
設計人員將專注於用戶界麵(UI)等組件,而開發人員管理人員將處理其餘的工作。
編碼
在完成設計階段之後,我們現在就可以開始開發應用程序了。為此,開發人員將開始使用他們的編程語言技能開發代碼,這些語言可能包括Python、C、Java、c#、c++和其他語言。後端開發人員將根據所需的操作編寫後端代碼,而前端開發人員將創建吸引人的用戶界麵。
測試
在代碼編譯完成後,它將被發送給相關的測試工程師。然後,測試工程師將根據客戶的需求開始測試應用程序的功能。
在測試程序時,他們可能會注意到一些缺陷或問題(沒有按照客戶的需求操作),並根據適當的理由將它們報告給開發人員。開發人員將檢查報告的錯誤是否為真。如果它是正確的,開發人員將更正它並用新的替換它。在此之後,測試人員將重新測試它,以查看錯誤是否已修複。
安裝
一旦應用程序經過徹底的測試(安裝),我們將進入下一階段。這個過程將以這種方式繼續下去,直到軟件穩定、沒有bug並滿足客戶的所有需求。當程序達到穩定狀態時,它將被安裝在客戶的環境中供他們使用。
客戶收到課程後,會進行一輪測試,以確保課程符合他們的要求。如果他們遇到錯誤,他們將通知開發團隊,開發團隊將針對特定的應用程序解決問題。一旦所有問題得到解決,該程序將部署給最終用戶使用。
維護
在成功地完成瀑布模型的六個階段之後,我們將進入最後一個階段(維護)。該過程將一直持續到軟件完成為止,此時最終用戶將開始使用應用程序,並且可能會遇到必須測試和解決的某些問題。維護是指不時地維護產品的過程,包括對硬件和軟件進行更改,以保持操作效率和提高性能。
瀑布模型的例子
以前,它被用於人力資源管理[HRM]、供應鏈管理係統、客戶關係管理[CRM]和零售連鎖店等應用程序。
軟件測試是一項廣泛使用的技術,因為在部署之前必須對每個軟件進行評估。
本手動測試教程包括與測試相關的所有主題,如黑盒測試、白盒測試、灰盒測試等方法。單元測試、集成測試、回歸測試等級別。
讓我們開始吧……
什麼是軟件測試
軟件測試是一個更簡單的過程,通過考慮可靠性、可伸縮性、可移植性、可重用性、可用性等屬性,並衡量軟件組件的執行,以發現軟件錯誤或缺陷,從而確定軟件的正確性。測試是必要的,因為如果由於缺乏測試而導致軟件在任何時候都不成功,這將是一個危險的情況,因此,沒有測試的軟件就不能部署給最終用戶。