- 軟件工程
- 陳永
- 1232字
- 2019-10-28 10:58:39
2.1 軟件過程
2.1.1 軟件過程的定義
軟件過程是指一套關(guān)于項(xiàng)目的階段、狀態(tài)、方法、技術(shù)和開發(fā)、維護(hù)軟件的人員以及相關(guān)文檔(計劃、文檔、模型、編碼、測試、手冊等)組成。軟件過程是指軟件生存周期中的一系列相關(guān)過程(見圖2.1),由軟件計劃、軟件開發(fā)、軟件維護(hù)等一系列過程活動構(gòu)成。過程是活動的集合,活動是任務(wù)的集合,任務(wù)則起到把輸入加工成輸出的作用。

圖2.1 軟件過程
軟件過程主要針對軟件生產(chǎn)和管理進(jìn)行研究。為了獲得滿足工程目標(biāo)的軟件,不僅涉及工程開發(fā),而且還涉及工程支持和工程管理。對于一個特定的項(xiàng)目,可以通過剪裁過程定義所需的活動和任務(wù),并可使活動并發(fā)執(zhí)行。與軟件有關(guān)的單位,根據(jù)需要和目標(biāo),可采用不同的過程、活動和任務(wù)。
2.1.2 軟件過程的特點(diǎn)
(1)過程描述了所有的主要活動。軟件過程活動通常有:需求分析和定義、系統(tǒng)設(shè)計、程序設(shè)計、編碼、單元測試、集成測試、系統(tǒng)測試、系統(tǒng)支付、維護(hù)等。
(2)過程在一定限制下使用資源、產(chǎn)生中間和最終產(chǎn)品。
(3)過程由以某種方式連接的子過程構(gòu)成,活動以一定的順序組織。過程是有結(jié)構(gòu)的,表現(xiàn)為過程和活動的組織模式,以適應(yīng)相應(yīng)項(xiàng)目的開發(fā)。
(4)每個過程活動都有入口和出口準(zhǔn)則以便確立活動的開始和結(jié)束。
(5)每個過程都有達(dá)到活動目標(biāo)的相關(guān)指導(dǎo)原則。
2.1.3 軟件過程的分類
(1)基本過程類:是構(gòu)成軟件生存期主要部分的那些過程,包括獲取、供應(yīng)、開發(fā)、操作、維護(hù)等過程。
(2)支持過程類:可穿插到基本過程中提供支持的一系列過程,包括文檔開發(fā)、配置管理、質(zhì)量保證、驗(yàn)證、確認(rèn)、聯(lián)合評審、審計、問題解決等過程。
(3)組織過程類:一個組織用來建立、實(shí)施一種基礎(chǔ)結(jié)構(gòu),并不斷改進(jìn)該基礎(chǔ)結(jié)構(gòu)的過程,包括管理、基礎(chǔ)、改進(jìn)、培訓(xùn)等過程。
2.1.4 軟件過程的作用
軟件過程是一組引發(fā)軟件產(chǎn)品的生產(chǎn)活動,采用軟件過程管理的主要作用有:
(1)有效的軟件過程可以提高組織的生產(chǎn)能力。
(2)可以理解軟件開發(fā)的基本原則,輔助研發(fā)人員做出決策。
(3)可以標(biāo)準(zhǔn)化研發(fā)過程工作,提高軟件的可重用性和團(tuán)隊之間的協(xié)作交流。
(4)有效的軟件過程可以提高軟件的維護(hù)性。
(5)有效地定義如何管理需求變更,在未來的版本中恰當(dāng)分配變更部分,使之平滑過渡。
(6)可以在不同的軟件設(shè)計階段平滑過渡,提高研發(fā)系統(tǒng)的可實(shí)施性。
2.1.5 軟件過程模型化
軟件過程是復(fù)雜的,且像所有智力和創(chuàng)造性過程一樣,依賴于人們的決策和判斷。并不存在什么理想的軟件過程。大多數(shù)機(jī)構(gòu)有自己的軟件開發(fā)過程。雖然有許多不同的軟件過程,但所有軟件過程都必須具有四種對軟件工程來說是基本的活動,分別是:
(1)軟件描述:必須定義軟件的功能以及軟件操作上的約束。
(2)軟件設(shè)計和實(shí)現(xiàn):必須生產(chǎn)符合需求描述的軟件。
(3)軟件有效性驗(yàn)證:軟件必須得到有效性驗(yàn)證,即確保軟件是客戶需要的。
(4)軟件進(jìn)化:軟件必須進(jìn)化以滿足不斷變化的客戶需要。
在實(shí)際軟件開發(fā)過程需要不同的開發(fā)模型來實(shí)現(xiàn)軟件過程的設(shè)計思想,每一種開發(fā)模型都是從不同的角度表現(xiàn)軟件過程。軟件開發(fā)模型是軟件過程具體實(shí)現(xiàn)的簡化表示。
- QTP從實(shí)踐到精通
- 軟件開發(fā)生產(chǎn)率改進(jìn):軟件管理的有效領(lǐng)導(dǎo)力與量化方法
- 軟件研發(fā)效能提升之美
- 無網(wǎng)格法理論及MATLAB程序
- 軟件架構(gòu)的藝術(shù)
- Unity 2017經(jīng)典游戲開發(fā)教程:算法分析與實(shí)現(xiàn)
- 統(tǒng)信UOS應(yīng)用開發(fā)詳解
- 軟件測試項(xiàng)目實(shí)戰(zhàn)
- 測試開發(fā)實(shí)戰(zhàn)教程
- 軟件開發(fā)的201個原則
- 芯片改變世界
- Google Android開發(fā)入門與實(shí)戰(zhàn)
- 軟件項(xiàng)目管理案例教程(第5版)
- 移山之道:VSTS軟件開發(fā)指南
- Intel Quartus Prime數(shù)字系統(tǒng)設(shè)計權(quán)威指南:從數(shù)字邏輯、Verilog HDL 到復(fù)雜數(shù)字系統(tǒng)的實(shí)現(xiàn)