軟件開發生命周期(SDLC)
SDLC是創建軟件開發結構的過程。 SDLC內有不同的階段,每個階段都有其不同的活動。 它使開發團隊能夠設計,創建和交付高質量的產品。
需求轉化為設計,設計轉化為開發,開發轉化為測試; 經過測試,將其提供給客戶端。
1.Requirement Phase 需求階段
對於開發團隊和項目經理來說,這是軟件開發生命周期中最關鍵的階段。 在此階段,客戶陳述要求,規格,期望以及與產品或軟件有關的任何其他特殊要求。 所有這些都是由服務提供公司的業務經理或項目經理或分析師收集的。
要求包括如何使用產品以及誰將使用產品來確定操作負荷。 從此階段收集的所有信息對於根據客戶要求開發產品至關重要。
2. Design Phase 設計階段
設計階段包括根據需求階段對新軟件的詳細分析。 這是系統開發生命周期中的高優先級階段,因為系統的邏輯設計已轉換為物理設計。 需求階段的輸出是所需要的東西的集合,設計階段提供了實現這些需求的方式。 在此階段,將決定所有必需的必要工具,例如Java,.NET,PHP等編程語言,Oracle,MySQL等數據庫,硬件和軟件的組合,以提供一個可以在其上運行軟件而不會出現任何問題的平台。
有幾種技術和工具,例如數據流程圖,流程圖,決策表和決策樹,數據字典和結構化字典用於描述系統設計。
3. Build /Development Phase 構建/開發階段
在成功完成需求和設計階段之后,下一步就是將設計實施到軟件系統的開發中。 在此階段中,工作被分為小部分,由開發團隊根據上一階段中討論的設計並根據需求階段中討論的客戶的需求開始編碼,以產生期望的結果。
前端開發人員開發易於使用且具有吸引力的GUI和與后端操作進行交互的必要界面,並且后端開發人員根據所需操作進行后端編碼。 所有操作均按照項目經理演示的程序和指南進行。
由於這是編碼階段,因此在軟件開發生命周期中,對於開發人員而言,它需要花費最長的時間並且需要更多的針對性方法。
4. Testing Phase 測試階段
測試是完成軟件系統的最后一步。 在此階段中,在獲得開發的GUI和后端組合之后,將根據需求階段中所述的需求對其進行測試。 測試確定軟件是否實際上根據需求階段中提出的需求給出結果。 開發團隊制定了測試計划以開始測試。 該測試計划包括所有類型的基本測試,例如集成測試,單元測試,驗收測試和系統測試。 在此階段也將執行非功能測試。
如果軟件中存在任何缺陷或無法按預期工作,則測試團隊將向開發團隊詳細提供有關該問題的信息。 如果是有效缺陷或值得解決,則將其修復,開發團隊將其替換為新缺陷,並且還需要進行驗證。
5. Deployment/ Deliver Phase 部署/交付階段
當軟件測試完成並獲得令人滿意的結果時,並且在軟件的工作中沒有余下的問題,該軟件將交付給客戶使用。客戶收到產品后,建議他們首先進行Beta測試(驗收測試)。 在Beta測試中,客戶可以要求軟件中不存在但要求文檔中提到的任何更改,或進行任何其他GUI更改以使其更加用戶友好。 除此之外,如果客戶在使用軟件時遇到任何類型的缺陷; 它將被告知該特定軟件的開發團隊以解決問題。 如果這是一個嚴重的問題,那么開發團隊會在很短的時間內解決它; 否則,如果不太嚴重,它將等待下一個版本。
解決了所有類型的錯誤和更改后,該軟件最終部署到了最終用戶。
6. Maintenance 維護
維護階段是SDLC的最后一個持久階段,因為它一直持續到軟件生命周期結束為止。 當客戶開始使用軟件時,就會出現實際問題,並且那時需要解決這些問題。 此階段還包括更改硬件和軟件,以保持其運行效率,如改善其性能,增強安全功能並根據客戶的需求在即將到來的時間進行。 這個不時照顧產品的過程稱為維護。
軟件開發生命周期(SDLC)模型
這里有各種軟件開發模型或方法:
- Waterfall model 瀑布模型
- Spiral model 螺旋式模型
- Verification and validation model 驗證和驗證模型
- Prototype model 原型模型
- Hybrid model 混合模型
Waterfall model 瀑布模型
這是第一個順序線性模型,因為一個階段的輸出是下一個階段的輸入。 它簡單易懂,用於一個小型項目。
瀑布模型的各個階段如下:
- Requirement analysis 需求分析
- Feasibility study 可行性研究
- Design 設計
- Coding 編碼
- Testing 測試
- Installation 安裝
- Maintenance 維護保養
Spiral model 螺旋式模型
它是中級項目的最佳套件模型。 它也稱為 循環和迭代 模型。 只要模塊相互依賴,我們就采用這種模型。 在這里,我們明智地開發應用程序模型,然后移交給客戶。 螺旋模型的不同階段如下:
- 需求收集
- 設計
- 編碼
- 測驗
Prototype model 原型模型
從早期模型中客戶拒絕率較高的時候開始,由於客戶拒絕率降低了,因此我們選擇此模型。 而且,它還允許我們在流程的早期階段准備樣品(原型),我們可以向客戶展示該樣品(原型)並獲得他們的認可,然后開始着手進行原始項目。 該模型是指創建應用程序原型的操作。
Verification and validation model 驗證和驗證模型
它是瀑布模型的擴展版本。 它將分兩個階段實施,其中第一階段,我們將執行驗證過程,當應用程序准備就緒時,我們將執行驗證過程。 在此模型中,實現以V形發生,這意味着在向下流程中完成的驗證過程和在向上流程中完成的驗證過程。