軟體開發生命週期(SDLC)是一個建立軟體開發結構的過程。SDLC中有不同的階段,每個階段都有自己不同的活動。它使開發團隊能夠設計,建立和交付高品質的產品。
SDLC描述了軟體開發的各個階段和階段的執行順序。每個階段都需要在軟體開發的生命週期中從前一階段交付。需求轉化為設計,設計轉化為開發和開發成測試,經過測試後提供給客戶。
軟體開發週期的不同階段如下所示:
這是開發團隊和專案經理的軟體開發生命週期中最關鍵的階段。在此階段,客戶說明要求,規格,期望以及與產品或軟體相關的任何其他特殊要求。所有這些都是由業務經理或專案經理或服務提供公司的分析師收集的。
要求包括如何使用產品以及誰將使用產品來確定操作的負載。從此階段收集的所有資訊對於根據客戶要求開發產品至關重要。
設計階段包括根據需求階段對新軟體的詳細分析。這是系統開發生命週期中的高優先順序階段,因為系統的邏輯設計轉換為物理設計。需求階段的輸出是所需事物的集合,設計階段為實現這些需求提供了方法。所有必需的基本工具的決定,如Java,.NET,PHP等程式設計語言; 資料庫,如Oracle,MySQL,硬體和軟體的組合,提供了一個平台,軟體可以在這個平台上執行而沒有任何問題。
有幾種技術和工具,如資料流圖,流程圖,決策表和決策樹,資料字典和結構化字典用於描述系統設計。
在成功完成需求和設計階段之後,下一步是將設計實現到軟體系統的開發中。在這個階段,工作分成小單元,編碼由開發團隊根據前一階段討論的設計開始,並根據需求階段討論的客戶要求產生所需的結果。
前端開發人員開發簡單且有吸引力的GUI和必要的介面,以便與後端操作進行互動,後端開發人員根據所需的操作進行後端編碼。所有這些都是根據專案經理演示的程式和指南完成的。
由於這是編碼階段,因此在軟體開發生命週期中,開發人員需要花費最長時間和更集中的方法。
測試是完成軟體系統的最後一步。在此階段,在獲得開發的GUI和後端組合之後,將根據需求階段中的要求對其進行測試。測試確定軟體是否實際按照需求階段中的要求提供結果。開發團隊制定測試計劃以開始測試。該測試計劃包括所有型別的基本測試,例如整合測試,單元測試,驗收測試和系統測試。在此階段也進行了非功能性測試。
如果軟體中存在任何缺陷,或者它沒有按預期工作,那麼測試團隊會向開發團隊提供有關該問題的詳細資訊。如果它是一個有效的缺陷或值得理清,它將被修復,開發團隊將其替換為新的,並且還需要進行驗證。
當軟體測試完成且結果令人滿意,並且軟體工作中沒有餘留問題時,就可以將它交付給客戶供其使用。
當客戶收到產品,建議他們首先進行beta測試。在beta測試中,客戶可以要求軟體中沒有但在需求文件或任何其他GUI更改中提及的任何更改,以使其更加使用者友好。除此之外,如果客戶使用該軟體時遇到任何型別的缺陷; 它將通知該特定軟體的開發團隊以解決問題。如果這是一個嚴重的問題,那麼開發團隊會在短時間內解決它,否則,如果它不那麼嚴重,那麼它將等待下一個版本。
在解決了所有型別的錯誤和變更後,軟體最終部署到終端使用者。
維護階段是SDLC的最後和持久階段,因為它是一直持續到軟體生命週期結束的過程。當客戶開始使用軟體時,實際問題就開始發生,那時需要解決這些問題。此階段還包括對硬體和軟體進行更改以維持其運營效率,例如:提高其效能,增強安全功能以及根據客戶的要求和即將到來的時間。這個不時處理產品的過程稱為維護。
「因此,所有這些都是軟體開發生命週期(SDLC)的六個階段,在這個階段,軟體開發過程發生。所有這些都是強制階段,沒有任何一個開發是不可能的,因為開發在軟體的生命週期中持續進行維護」。