同任何事物類似,軟體也有乙個從生到死的過程,這個過程一般稱為軟體生存週期或生命週期(software development life cycle,sdlc)。一般地,軟體生存週期可劃分為定義、開發和執行3個時期,每個時期又細分為若干個階段。把整個軟體生存週期劃分為若干階段,使得每個階段有明確的任務,使規模大、結構複雜和管理複雜的軟體開發變得容易控制和管理。
通常,軟體生存週期包括問題的定義與可行性分析、專案計畫、需求分析、軟體設計、編碼與測試、執行與維護等階段,每個階段又包含一系列的活動,可以將這些活動以適當的方式分配到不同的階段去完成。軟體產品經歷了從開始到結束的整個開發周期後,新一代產品將通過開發周期的重複而發展。即使開發階段重複進行,它們也不一定與開發周期最初的那些階段相同。
軟體生存週期的基本理念是把開發過程中複雜的問題趨於簡單化,從而有效地控制和管理的方法學。對軟體開發過程的研究,實際就是對軟體生存週期方法學的研究,所以,軟體生存週期方法學是軟體工程方法學的核心內容。
軟體生存週期的6個階段如下。
問題的定義與可行性分析。在此階段,軟體開發人員與客戶進行溝通,確定軟體的開發目標、範圍、規模等,以及專案的可行性。
專案計畫。專案計畫階段根據專案的問題、範圍、規模制訂初步的開發計畫,包括人員組織、專案過程、專案預算投入、專案風險管理、進度安排等。
需求分析。在確定軟體開發可行的情況下,對軟體需要實現的各個功能進行詳細分析。需求分析階段是乙個很重要的階段,這一階段做得好,將為整個軟體開發專案的成功打下良好的基礎。同樣,需求也是在整個軟體開發過程中不斷變化和深入的,因此我們必須制訂需求變更計畫來應付這種變化,以保證整個專案的順利進行。
軟體設計。此階段主要根據需求分析的結果,對整個軟體系統進行設計,如系統框架結構設計、元件設計、資料庫設計等。軟體設計一般分為總體設計和詳細設計。好的軟體設計將為軟體程式編寫打下良好的基礎。
編碼與測試。此階段是將軟體設計的結果轉換成計算機可執行的程式**。在程式編碼中必須要制定統
一、符合標準的編寫規範,以保證程式的可讀性、易維護性,提高程式的執行效率。在軟體設計完成後要經過嚴密的測試,以發現軟體在整個設計過程中存在的問題並加以糾正。整個測試過程分單元測試、組裝測試以及系統測試3個階段進行。在測試過程中需要建立詳細的測試計畫並嚴格按照測試計畫進行測試,以減少測試的隨意性。
執行與維護。軟體維護是軟體生存週期中持續時間最長的階段。在軟體開發完成並投入使用後,由於多方面的原因,軟體不能繼續適應使用者的要求。要延續軟體的使用壽命,就必須對軟體進行維護。
《軟體工程方法與實踐》 2 5 軟體工程活動
在軟體工程的概念被提出來之前,開發人員錯誤地認為,軟體就是開發活動,或者極端地認為其就是編碼,至於分析和設計等都是次要的。隨著軟體規模的不斷增大,軟體開發活動中暴露出很多問題。軟體工程是為克服這些問題而被提出,並在實踐中不斷地探索它的原理 技術和方法。軟體工程的工程化思想讓開發人員看到,軟體工程活動...
軟體工程 軟體生存週期
與任何事物一樣,軟體也有乙個孕育 誕生 成長 成熟 衰亡的過程,這個過程稱為軟體生存週期 軟體生命週期 詳細的劃分如下圖 它們的主要任務如下 制定規劃 可行性分析 確定要開發軟體系統的總目標,給出它的功能 效能 可靠性以及介面等方面的要求。由系統分析員和使用者合作,研究該項任務的可行性,解決問題的可...
軟體工程 理論 方法與實踐
第一章 概述 軟體是電腦程式 規程以及計算機系統可能需要的相關文件和資料。軟體一般分為通用和定製軟體。軟體的特性 1 軟體是複雜的 2 軟體是不可見的 3 軟體是不斷變化的 4 大多數軟體是定製的,而不是通過已有的構件組裝的。軟體工程師為了經濟的獲得能夠在實際機器上高效執行的可靠軟體而建立和使用的一...