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