軟體工程 軟體生存週期

2021-09-21 02:27:21 字數 1410 閱讀 2542

與任何事物一樣,軟體也有乙個孕育、誕生、成長、成熟、衰亡的過程,這個過程稱為軟體生存週期(軟體生命週期)。詳細的劃分如下圖:

它們的主要任務如下:

制定規劃(可行性分析)

確定要開發軟體系統的總目標,給出它的功能、效能、可靠性以及介面等方面的要求。由系統分析員和使用者合作,研究該項任務的可行性,**解決問題的可能方案。並對可利用資源(硬體、軟體、人力等)、成本、效益、開發進度等作出估計,制定開發任務的實施計畫,連同可行性報告一同提交管理部門評審。

通常可行性分析與規劃制定的過程由使用者、專案負責人和系統分析師共同進行,這個階段主要產生文件:可行性分析報告、專案開發計畫

系統與軟體需求分析(定義)

與客戶合作,獲取待開發軟體的功能、效能、可靠性、介面以及其它質量需求,並進行需求分析與建模,從而得到待開發軟體的詳細定義。基於獲得的文件與模型,編寫系統和軟體需求規格說明,提交管理部門評審。

這個過程的任務不是具體地解決問題,而是準確地確定軟體系統必須做什麼,確定軟體系統的功能、效能、資料、介面等要求,從而確定乙個系統的邏輯模型。

軟體設計

把各項需求轉換為相應的體系結構,包括資料的、系統的及軟體的。每一組成部分都應是意義明確的模組,每個模組都和需求相對應,也即是概要設計/高層設計。進而對模組進行具體的描述,為編寫源**打下基礎,即是詳細設計。所有設計都應以設計規格說明形式形成文件,以便後續使用並提交評審。

概要設計主要由系統分析師和軟體設計師參加,主要產生概要設計書。而詳細設計階段主要由軟體設計師和程式設計師參加,將概要設計的理念進一步細化,產生詳細設計文件

程式設計與單元測試

把上述設計轉換為電腦程式即實現和單元測試。對於編寫出的源程式必須進行單元測試,查詢各模組在功能和結構上存在的問題並糾正。這一步必須注意程式設計風格,源程式應該是結構良好、清晰、易讀的,並與設計一致。

整合與系統測試

測試是保證質量的重要手段,主要方式是在設計測試用例的基礎上檢驗軟體的各部分。把已測試過的模組按一定順序組裝起來,最後按規定的需求,逐項進行系統的確認測試,確定軟體是否滿足需求規格,能否交付。

測試階段通常會由另乙個部門的軟體設計師或系統分析師參加(為了避免自我產生的盲區),一般來說還會產生軟體測試計畫、測試用例、軟體測試報告

執行與維護

自軟體投入使用則進入執行階段,軟體在執行中可能由於多方面的原因需要修改,主要目的均為維護軟體正常使用。

軟體工程(二)軟體生存週期與軟體過程

乙個軟體從開始立項起,到廢棄不用為止,統稱軟體的生存週期。典型的軟體生存週期的主要活動包括 需求分析 明確使用者需要解決的問題,分析員根據對問題的理解提出關於系統目標與範圍的說明,從使用者視角對需求進行定義和分析,用需求模型的形式準確地表達出來 軟體分析 在需求模型的基礎上,從開發人員視角對軟體需求...

軟體工程 7 生存週期過程和軟體生存週期模型

軟體生存週期 軟體生存週期 software life circle 又稱軟體生命期,生存期。它是指從形成軟體開發概念開始,到軟體投入使用,再到軟體失去價值而消亡的整個過程。軟體生存週期過程 軟體生存週期過程,是規定了獲取,開發,操作和維護軟體時,要實施的過程,活動和任務。它旨在提供乙個公共的框架,...

《軟體工程方法與實踐》 2 4 軟體生存週期

同任何事物類似,軟體也有乙個從生到死的過程,這個過程一般稱為軟體生存週期或生命週期 software development life cycle,sdlc 一般地,軟體生存週期可劃分為定義 開發和執行3個時期,每個時期又細分為若干個階段。把整個軟體生存週期劃分為若干階段,使得每個階段有明確的任務,...