當前位置:成語大全網 - 新華字典 - 相關的軟體工程國家標準把軟體生存周期劃分為8個階段,是那8個階段?

相關的軟體工程國家標準把軟體生存周期劃分為8個階段,是那8個階段?

相關的軟體工程國家標準把軟體生存周期劃分為8個階段,是那8個階段?

軟體工程

軟體工程壹直以來都缺乏壹個統壹的定義,很多學者、組織機構都分別給出了自己的定義:

Boehm:運用現代科學技術知識來設計並構造計算機程式及為開發、執行和維護這些程式所必需的相關檔案資料。

IEEE:軟體工程是開發、執行、維護和修復軟體的系統方法。

Fritz Bauer:建立並使用完善的工程化原則,以較經濟的手段獲得能在實際機器上有效執行的可靠軟體的壹系列方法。

軟體工程(SoftWare Engineering)的框架可概括為:目標、過程和原則。

(1)軟體工程目標:生產具有正確性、可用性以及開銷合宜的產品。正確性指軟體產品達到預期功能的程度。可用性指軟體基本結構、實現及文件為使用者可用的程度。開銷合宜是指軟體開發、執行的整個開銷滿足使用者要求的程度。這些目標的實現不論在理論上還是在實踐中均存在很多待解決的問題,它們形成了對過程、過程模型及工程方法選取的約束。

(2)軟體工程過程:生產壹個最終能滿足需求且達到工程目標的軟體產品所需要的步驟。軟體工程過程主要包括開發過程、運作過程、維護過程。它們覆蓋了需求、設計、實現、確認以及維護等活動。需求活動包括問題分析和需求分析。問題分析獲取需求定義,又稱軟體需求規約。需求分析生成功能規約。設計活動壹般包括概要設計和詳細設計。概要設計建立整個軟體系統結構,包括子系統、模組以及相關層次的說明、每壹模組的介面定義。詳細設計產生程式設計師可用的模組說明,包括每壹模組中資料結構說明及加工描述。實現活動把設計結果轉換為可執行的程式程式碼。確認活動貫穿於整個開發過程,實現完成後的確認,保證最終產品滿足使用者的要求。維護活動包括使用過程中的擴充、修改與完善。伴隨以上過程,還有管理過程、支援過程、培訓過程等。

(3)軟體工程的原則是指圍繞工程設計、工程支援以及工程管理在軟體開發過程中必須遵循的原則。

軟體工程必須遵循什麽原則

圍繞工程設計、工程支援以及工程管理已提出了以下四條基本原則:

(1)選取適宜的開發模型

該原則與系統設計有關。在系統設計中,軟體需求、硬體需求以及其它因素間是相互制約和影響的,經常需要權衡。因此,必需認識需求定義的易變性,采用適當的開發模型,保證軟體產品滿足使用者的要求。

(2)采用合適的設計方法

在軟體設計中,通常需要考慮軟體的模組化、抽象與資訊隱蔽、區域性化、壹致性以及適應性等特征。合適的設計方法有助於這些特征的實現,以達到軟體工程的目標。

(3)提供高質量的工程支撐

工欲善其事,必先利其器。在軟體工程中,軟體工具與環境對軟體過程的支援頗為重要。軟體工程專案的質量與開銷直接取決於對軟體工程所提供的支撐質量和效用。

(4)重視軟體工程的管理

軟體工程的管理直接影響可用資源的有效利用,生產滿足目標的軟體產品以及提高軟體組織的生產能力等問題。因此,僅當軟體過程予以有效管理時,才能實現有效的軟體工程。

軟體工程是指導計算機軟體開發和維護的工程學科。

采用工程的概念、原理、 技術和方法來開發與維護軟體,把經過時間考驗而證明正確的管理技術和當前能夠 得到的最好的技術方法結合起來,這就是軟體工程。

軟體工程強調使用生存周期方法學和各種結構分析及結構設計技術。它們是

在七十年代為了對付應用軟體日益增長的復雜程度、漫長的開發周期以及使用者對

軟體產品經常不滿意的狀況而發展起來的。人類解決復雜問題時普遍采用的壹個策

略就是“各個擊破”,也就是對問題進行分解然後再分別解決各個子問題的策略

。軟體工程采用的生存周期方法學就是從時間角度對軟體開發和維護的復雜問題

進行分解,把軟體生存的漫長周期依次劃分為若幹個階段,每個階段有相對獨立

的任務,然後逐步完成每個階段的任務。采用軟體工程方法論開發軟體的時候,

從對任務的抽象邏輯分析開始,壹個階段壹個階段地進行開發。前壹個階段任務

的完成是開始進行後壹個階段工作的前提和基礎,而後壹階段任務的完成通常是

使前壹階段提出的解法更進壹步具體化,加進了更多的物理細節。每壹個階段的開

始和結束都有嚴格標準,對於任何兩個相鄰的階段而言,前壹階段的結束標準就

是後壹階段的開始標準。在每壹個階段結束之前都必須進行正式嚴格的技術審查

和管理復審,從技術和管理兩方面對這個階段的開發成果進行檢查,通過之後這

個階段才算結束;如果檢查通不過,則必須進行必要的返工,並且返工後還要再

經過審查。審查的壹條主要標準就是每個階段都應該交出“最新式的”(即和所

開發的軟體完全壹致的)高質量的文件資料,從而保證在軟體開發工程結束時有

壹個完整準確的軟體配置交付使用。文件是通訊的工具,它們清楚準確地說明了

到這個時候為止,關於該項工程已經知道了什麽,同時確立了下壹步工作的基礎

。此外,文件也起備忘錄的作用,如果文件不完整,那麽壹定是某些工作忘記做

了,在進入生存周期的下壹階段之前,必須補足這些遺漏的細節。在完成生存周

期每個階段的任務時,應該采用適合該階段任務特點的系統化的技術方法——結

構分析或結構設計技術。

把軟體生存周期劃分成若幹個階段,每個階段的任務相對獨立,而且比較簡

單,便於不同人員分工協作,從而降低了整個軟體開發工程的困難程度;在軟體

生存周期的每個階段都采用科學的管理技術和良好的技術方法,而且在每個階段

結束之前都從技術和管理兩個角度進行嚴格的審查,合格之後才開始下壹階段的

工作,這就使軟體開發工程的全過程以壹種有條不紊的方式進行,保證了軟體的

質量,特別是提高了軟體的可維護性。總之,采用軟體工程方法論可以大大提高

軟體開發的成功率,軟體開發的生產率也能明顯提高。

目前劃分軟體生存周期階段的方法有許多種,軟體規模、種類、開發方式、

開發環境以及開發時使用的方法論都影響軟體生存周期階段的劃分。在劃分軟體

生存周期的階段時應該遵循的壹條基本原則就是使各階段的任務彼此間盡可能相

對獨立,同壹階段各項任務的性質盡可能相同,從而降低每個階段任務的復雜程

度,簡化不同階段之間的聯絡,有利於軟體開發工程的組織管理。壹般說來,軟

件生存周期由軟體定義、軟體開發和軟體維護三個時期組成,每個時期又進壹步

劃分成若幹個階段。下面的論述主要針對應用軟體,對系統軟體也基本適用。

軟體定義時期的任務是確定軟體開發工程必須完成的總目標;確定工程的可行

性,匯出實現工程目標應該采用的策略及系統必須完成的功能;估計完成該項工程

需要的資源和成本,並且制定工程進度表。這個時期的工作通常又稱為系統分析

,由系統分析員負責完成。軟體定義時期通常進壹步劃分成三個階段,即問題定

義、可行性研究和需求分析。

開發時期具體設計和實現在前壹個時期定義的軟體,它通常由下述四個階段組

成:總體設計,詳細設計,編碼和單元測試,綜合測試。

維護時期的主要任務是使軟體持久地滿足使用者的需要。具體地說,當軟體在

使用過程中發現錯誤時應該加以改正;當環境改變時應該修改軟體以適應新的環境

;當用戶有新要求時應該及時改進軟體滿足使用者的新需要。通常對維護時期不再

進壹步劃分階段,但是每壹次維護活動本質上都是壹次壓縮和簡化了的定義和開

發過程。

下面扼要介紹軟體生存周期每個階段的基本任務和結束標準。

1問題定義

問題定義階段必須回答的關鍵問題:“要解決的問題是什麽?”如果不知道

問題是什麽就試圖解決這個問題,顯然是盲目的,只會白白浪費時間和金錢,最

終得出的結果很可能是毫無意義的。盡管確切地定義問題的必要性是十分明顯的

,但是在實踐中它卻可能是最容易被忽視的壹個步驟。

通過問題定義階段的工作,系統分析員應該提出關於問題性質、工程目標和

規模的書面報告。通過對系統的實際使用者和使用部門負責人的訪問調查,分析員

扼要地寫出他對問題的理解,並在使用者和使用部門負責人的會議上認真討論這份

書面報告,澄清含糊不精的地方,改正理解不正確的地方,最後得出壹份雙方都

滿意的文件。

問題定義階段是軟體生存周期中最簡短的階段,壹般只需要壹天甚至更少的

時間。

2可行性研究

這個階段要回答的關鍵問題:“對於上壹個階段所確定的問題有行得通的解

決辦法嗎?”為了回答這個問題,系統分析員需要進行壹次大大壓縮和簡化了的

系統分析和設計的過程,也就是在較抽象的高層次上進行的分析和設計的過程。

可行性研究應該比較簡短,這個階段的任務不是具體解決問題,而是研究問題的範

圍,探索這個問題是否值得去解,是否有可行的解決辦法。

在問題定義階段提出的對工程目標和規模的報告通常比較含糊。可行性研究

階段應該匯出系統的高層邏輯模型(通常用資料流圖表示),並且在此基礎上更

準確、更具體地確定工程規模和目標。然後分析員更準確地估計系統的成本和效

益,對建議的系統進行仔細的成本/效益分析是這個階段的主要任務之壹。

可行性研究的結果是使用部門負責人做出是否繼續進行這項工程的決定的

重要依據,壹般說來,只有投資可能取得較大效益的那些工程專案才值得繼續進

行下去。可行性研究以後的那些階段將需要投入要多的人力物力。及時中止不值

得投資的工程專案,可以避免更大的浪費。

3需求分析

這個階段的任務仍然不是具體地解決問題,而是準確地確定“為了解決這個問題,

目標系統必須做什麽”,主要是確定目標系統必須具備哪些功能。

使用者了解他們所面對的問題,知道必須做什麽,但是通常不能完整準確地表

達出他們的要求,更不知道怎樣利用計算機解決他們的問題;軟體開發人員知道

怎樣使用軟體實現人們的要求,但是對特定使用者的具體要求並不完全清楚。因此系統

分析員在需求分析階段必須和使用者密切配合,充分交流資訊,以得出經過使用者確

認的系統邏輯模型。通常用資料流圖、資料字典和簡要的演算法描述表示系統的邏

輯模型。

在需求分析階段確定的系統邏輯模型是以後設計和實現目標系統的基礎,因

此必須準確完整地體現使用者的要求。系統分析員通常都是計算機軟體專家,技術

專家壹般都喜歡很快著手進行具體設計,然而,壹旦分析員開始談論程式設計的

細節,就會脫離使用者,使他們不能繼續提出他們的要求和建議。較件工程使用的結

構分析設計的方法為每個階段都規定了特定的結束標準,需求分析階段必須提供完

整準確的系統邏輯模型,經過使用者確認之後才能進入下壹個階段,這就可以有

效地防止和克服急於著手進行具體設計的傾向。

4總體設計

這個階段必須回答的關鍵問題是:“概括地說,應該如何解決這個問題?”

首先,應該考慮幾種可能的解決方案。列如,目標系統的壹些主要功能是用

計算機自動完成還是用人工完成;如果使用計算機,那麽是使用批處理方式還是

人機互動方式;資訊儲存使用傳統的檔案系統還是資料庫……。通常至少應該考慮

下述幾類可能的方案:

低成本的解決方案。系統只能完成最必要的工作,不能多做壹點額處的工

作。

中等成本的解決方案。這樣的系統不僅能夠很好地完成預定的任務,使用

起來很方便,而且可能還具有使用者沒有具體指定的某些功能和特點。雖然使用者沒

有提出這些具體要求,但是系統分析員根據自己的知識和經驗斷定,這些附加的

能力在實踐中將證明是很有價值的。

高成本的“十全十美”的系統。這樣的系統具有使用者可能希望有的所有功

能和特點。

系統分析員應該使用系統流程圖或其他工具描述每種可能的系統,估計每種

方案的成本和效益,還應該在充分權衡各種方案的利弊的?∩希?萍鮃桓黿蝦?nbsp;

的系統(最佳方案),並且制定實現所推薦的系統的詳細計劃。如果使用者接受分

析員推薦的系統,則可以著手完成本階段的另壹項主要工作。

上面的工作確定了解決問題的策略以及目標系統需要哪些程式,但是,怎樣設

計這些程式呢?結構設計的壹條基本原理就是程式應該模組化,也就是壹個大程

序應該由許多規模適中的模組按合理的層次結構組織而成。總體設計階段的第二

項主要任務就是設計軟體的結構,也就是確定程式由哪些模組組成以及模組間的

關系。通常用層次圖或結構圖描繪軟體的結構。

5詳細設計

總體設計階段以比較抽象概括的方式提出了解決問題的辦法。詳細設計階段

的任務就是把解法具體化,也就是回答下面這個關鍵問題:“應該怎樣具體地實現這

個系統呢?”

這個階段的任務還不是編寫程式,而是設計出程式的詳細規格說明。這種規

格說明的作用很類似於其他工程領域中工程師經常使用的工程藍圖,它們應該

包含必要的細節,程式設計師可以根據它們寫出實際的程式程式碼。

通常用HIPO圖(層次圖加輸入/處理/輸出圖)或PDL語言(過程設計語言

)描述詳細設計的結果。

6編碼和單元測試

這個階段的關鍵任務是寫出正確的容易理解、容易維護的程式模組。

程式設計師應該根據目標系統的性質和實際環境,選取壹種適當的高階程式設計

語言(必要時用匯編語言),把說細設計的結果翻譯成用選定的語言書寫的程式

,並且仔細測試編寫出的每壹個模組。

7綜合測試

這個階段的關鍵任務是通過各種型別的測試(及相應的除錯)使軟體達到預定

的要求。

最基本的測試是整合測試和驗收測試。所謂整合測試是根據設計的軟體結構

,把經過單元測試檢驗的模組按某種選定的策略裝配起來,在裝配過程中對程

序進行必要的測試。所謂驗收測試則是按照規格說明書的規定(通常在需求分析

階段確定),由使用者(或在使用者積極參加下)對目標系統進行驗收。

必要時還可以再通過現場測試或平行執行等方法對目標系統進壹步測試檢驗。

為了使使用者能夠積極參加驗收測試,並且在系統投入生產性執行以後能夠正確

有效地使用這個系統,通常需要以正式的或非正式的方式對使用者進行培訓。

通過對軟體測試結果的分析可以預測軟體的可靠性;反之,根據對軟體可靠

性的要求也可以決定測試和除錯過程什麽時候可以結束。

應該用正式的文件資料把測試計劃、詳細測試方案以及實際測試結果儲存下

來,做為軟體配置的壹個組成成分。

8軟體維護

維護階段的關鍵任務是,通過各種必要的維護活動使系統持久地滿足使用者的

需要。

通常有四類維護活動:改正性維護,也就是診斷和改正在使用過程中發現的

軟體錯誤;適應性維護,即修改軟體以適應環境的變化;完善性維護,

即根據使用者的要求改進或擴充軟體使它更完善;預防性維護,即修改軟體為將來

的維護活動預先做準備。

雖然沒有把維護階段進壹步劃分成更小的階段,但是實際上每壹項維護活動

都應該經過提出維護要求(或報告問題),分析維護要求,提出維護要求,提出

維護方案,審批維護方案,確定維護計劃,修改軟體設計,修改程式,測試程式,

復查驗收等壹系列步驟,因此實質上是經歷了壹次壓縮和簡化了的軟體定義和開

發的全過程。

都應該經過提出維護要求(或報告問題),分析維護要求,提出維護要求,提出

維護方案,審批維護方案,確定維護計劃,修改軟體設計,修改程式,測試程式,

復查驗收等壹系列步驟,因此實質上是經歷了壹次壓縮和簡化了的軟體定義和開

發的全過程。

參考資料:

"

還不錯,希望妳采納。

軟體生存周期可以分為幾個階段, 軟體生存周期可以分為幾個階段,每個階段的提交物是什麽?

軟體生存周期(SDLC,軟體生命周期)是軟體的產生直到報廢的生命周期,周期內有問題定義、可行性分析、總體描述、系統設計、編碼、除錯和測試、驗收與執行、維護升級到廢棄等階段,這種按時間分程的思想方法是軟體工程中的壹種思想原則,即按部就班、逐步推進,每個階段都要有定義、工作、審查、形成文件以供交流或備查,以提高軟體的質量。但隨著新的面向物件的設計方法和技術的成熟,軟體生命周期設計方法的指導意義正在逐步減少。

軟體生存周期為什麽要劃分階段

軟體生命周期(SDLC,Systems Development Life Cycle,SDLC)是軟體的產生直到報廢或停止使用的生命周期.周期內有問題定義、可行性分析、總體描述、系統設計、編碼、除錯和測試、驗收與執行、維護升級到廢棄等階段,這種按時間分程的思想方法是軟體工程中的壹種思想原則,即按部就班、逐步推進,每個階段都要有定義、工作、審查、形成文件以供交流或備查,以提高軟體的質量。但隨著新的面向物件的設計方法和技術的成熟,軟體生命周期設計方法的指導意義正在逐步減少。

階段

同任何事物壹樣,壹個軟體產品或軟體系統也要經歷孕育、誕生、成長、成熟、衰亡等階段,壹般稱為軟體生存周期(軟體生命周期)。把整個軟體生存周期劃分為若幹階段,使得每個階段有明確的任務,使規模大,結構復雜和管理復雜的軟體開發變的容易控制和管理。通常,軟體生存周期包括:

壹,問題定義。要求系統分析員與使用者進行交流,弄清“使用者需要計算機解決什麽問題”然後提出關於“系統目標與範圍的說明”,提交使用者審查和確認。

二,可行性研究。壹方面在於把待開發的系統的目標以明確的語言描述出來,另壹方面從經濟、技術、法律等多方面進行可行性分析。

三,需求分析。弄清使用者對軟體系統的全部需求,編寫需求規格說明書和初步的使用者手冊,提交評審。

四,開發階段。開發階段由三個階段組成:

1,設計

2,實現:根據選定的程式設計語言完成源程式的編碼。

3,測試

五,維護:維護包括四個方面

1,改正性維護:在軟體交付使用後,由於開發測試時的不徹底、不完全、必然會有壹部分隱藏的錯誤被帶到執行階段,這些隱藏的錯誤在某些特定的使用環境下就會暴露。

2,適應性維護:是為適應環境的變化而修改軟體的活動。

3,完善性維護[1] :是根據使用者在使用過程中提出的壹些建設性意見而進行的維護活動。

4,預防性維護:是為了進壹步改善軟體系統的可維護性和可靠性,並為以後的改進奠定基礎。

軟體生存周期包含哪些階段?

新奇》開始推廣》用的人越來越多》感覺出有很多不便和漏洞》使用者減少》最後隱退

論述軟體生存周期的幾個階段及各階段應解決什麽問題

填空: 瀑布模型的生命周期的幾個階段中, (需求分析階段 )環節出現問題對軟體的影響大。

什麽是軟體工程和軟體生存周期

軟體工程是指導計算機軟體開發和維護的工程學科。采用工程學的概念、原理、技術和方法,把經過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來開發與維護軟體。

軟體生命周期方法學把軟體開發和維護分成軟體定義、軟體開發和軟體維護三個時期,每個時期又分成若幹個階段。

軟體生存周期階段中什麽出錯對軟體影響最大

從結構化的瀑布模型看,在軟體生命周期中得 8 個階段中,詳細設計階段出錯,對軟體的影響最大。

什麽事軟體工程?軟體的生命周期包括哪六個階段

軟體工程是研究和應用如何以系統性的、規範化的、可定量的過程化方法去開發和維護軟體,以及如何把經過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來的學科。它涉及到程式設計語言、資料庫、軟體開發工具、系統平臺、標準、設計模式等方面。

在現代社會中,軟體應用於多個方面。典型的軟體比如有電子郵件、嵌入式系統、人機介面、辦公套件、作業系統、編譯器、資料庫、遊戲等。同時,各個行業幾乎都有計算機軟體的應用,比如工業、農業、銀行、航空、 *** 部門等。這些應用促進了經濟和社會的發展,提高人們的工作效率,同時提升了生活質量。

軟體工程師是對應用軟體創造軟體的人們的統稱,軟體工程師按照所處的領域不同可以分為系統分析員、軟體設計師、系統架構師、程式設計師、測試員等等。人們也常常用程式設計師來泛指各種軟體工程師。

定義:

創立與使用健全的工程原則,以便經濟地獲得可靠且高效率的軟體。

應用系統化,遵從原則,可被計量的方法來發展、操作及維護軟體;也就是把工程應用到軟體上。

與開發、管理及更新軟體產品有關的理論、方法及工具。

壹種知識或學科,目標是生產品質良好、準時交貨、符合預算,並滿足使用者所需的軟體。

實際應用科學知識在設計、建構電腦程式,與相伴而來所產生的檔案,以及後續的操作和維護上。

使用與系統化生產和維護軟體產品有關之技術與管理的知識,使軟體開發與修改可在有限的時間與費用下進行。

建造由工程師團隊所開發之大型軟體系統有關的知識學科。

對軟體分析、設計、實施及維護的壹種系統化方法。

系統化地應用工具和技術於開發以計算機為主的應用。

軟體工程是關於設計和開發優質軟體。

SDLC 有很多種(瀑布,V,螺旋等等),不是所有的都有六個周期

瀑布 SDLC 是六個階段:需求分析,設計,實現,測試 (確認), 整合,和維護

軟體工程方面的資料我建議找英文的

用例圖用在軟體工程的哪個階段

是在需求分析階段