官术网_书友最值得收藏!

1.1 軟件過程

過程(Process)是為實(shí)現(xiàn)既定目標(biāo)的一系列操作步驟,是人們使用相應(yīng)的方法與規(guī)程、技術(shù)與工具等將原始材料(輸入)轉(zhuǎn)化成用戶需要的產(chǎn)品的活動(dòng)。過程的3個(gè)基本要素是:人、方法與規(guī)程、技術(shù)與工具,而且過程是在各種相關(guān)組織下展開的。

1.1.1 軟件過程定義

軟件過程(Software Process,SP)是人們建立、維護(hù)和演化軟件產(chǎn)品整個(gè)過程中所有技術(shù)活動(dòng)和管理活動(dòng)的集合,是人們用來開發(fā)和維護(hù)軟件及其相關(guān)產(chǎn)品的活動(dòng)、方法、實(shí)踐和改進(jìn)的集合。其中相關(guān)產(chǎn)品是指項(xiàng)目計(jì)劃、設(shè)計(jì)文檔、代碼、測(cè)試文檔和用戶手冊(cè)等。當(dāng)一個(gè)組織逐步走向成熟時(shí),軟件過程的定義也會(huì)日趨完善,其內(nèi)部的過程實(shí)施將更具一致性。

過程與產(chǎn)品存在因果關(guān)系,好的過程才能得到好的產(chǎn)品,而差的過程只會(huì)得到差的產(chǎn)品。

目前,軟件過程技術(shù)是一個(gè)非常活躍的研究領(lǐng)域,吸引了大批來自學(xué)術(shù)界和工業(yè)界的專家和學(xué)者。幾乎每個(gè)國(guó)家都有自己的軟件過程改進(jìn)組織。軟件過程技術(shù)的研究和實(shí)踐主要有3個(gè)方向。

(1)軟件過程分析和建模

軟件過程建模方法是軟件過程技術(shù)的起點(diǎn),其中形式化和半形式化建模方法有基于規(guī)則的,或基于過程程序的,等等。過程分析和過程建模對(duì)于保證過程定義的質(zhì)量、建立全面和靈活的過程體系具有重要的作用。軟件過程的建模主要使用過程建模語(yǔ)言(Process Modeling Languages,PML)。PML最基本的功能是用于描述和定義過程,建立過程模型。PML的能力和表達(dá)方式直接影響著過程模型的質(zhì)量和建模效率。所以,選擇合適的PML,成為過程分析、過程建模和選擇建模工具的關(guān)鍵。

(2)軟件過程支持

軟件過程支持主要是指研究和開發(fā)支持軟件過程活動(dòng)的計(jì)算機(jī)輔助軟件工程(Computer-Aided Software Engineering,CASE)工具,過程支持工具作為一種技術(shù)基礎(chǔ)設(shè)施,能夠很好地支持、管理并規(guī)范化軟件過程。它的使用使得軟件過程的透明度更好,為項(xiàng)目的軟件過程提供指導(dǎo),使開發(fā)者和管理者都有據(jù)可依,便于更有效地管理軟件過程。軟件過程支持工具主要包括軟件過程流程工具、過程文檔工具、評(píng)審工具和人員管理工具。

(3)軟件過程評(píng)估和改進(jìn)

軟件過程評(píng)估和改進(jìn)是指根據(jù)某種模型對(duì)現(xiàn)有軟件過程進(jìn)行考核和評(píng)價(jià),找出其中的不足之處,然后加以改進(jìn)。改進(jìn)對(duì)生產(chǎn)高質(zhì)量軟件產(chǎn)品和提高軟件生產(chǎn)率的重要性已被越來越多的軟件開發(fā)組織所認(rèn)同。由美國(guó)卡內(nèi)基·梅隆大學(xué)軟件工程研究所(CMU/SEI)提出的軟件能力成熟度模型除了用于軟件過程評(píng)估外,還向軟件組織提供了指導(dǎo)其進(jìn)行軟件過程管理和軟件過程改進(jìn)的框架。軟件過程改進(jìn)的基本原則是采用過去項(xiàng)目中成功的實(shí)踐經(jīng)驗(yàn)。因此,理解、記錄和重用部分軟件過程是軟件過程改進(jìn)研究的一個(gè)重要方向。

1.1.2 軟件過程的分類和組成

軟件過程包括各種活動(dòng)、技術(shù)和用來生產(chǎn)軟件的工具。因此,它實(shí)際上包括了軟件生產(chǎn)的技術(shù)方面和管理方面。

根據(jù)ISO/UEC12207軟件生命周期過程標(biāo)準(zhǔn),軟件過程可以分為基礎(chǔ)過程、支持過程和組織過程(或者“管理過程”),如圖1-3所示。

圖1-3 ISO/IEC12207軟件生命周期過程

其中:

(1)基礎(chǔ)過程是軟件項(xiàng)目實(shí)現(xiàn)過程需要的活動(dòng),包括獲取過程、供應(yīng)過程、開發(fā)過程(需求分析、軟件設(shè)計(jì)、編碼等)、運(yùn)行過程和維護(hù)過程等子過程。

(2)支持過程是對(duì)軟件主要過程提供支持的過程,包括文檔編制過程、配置管理過程、質(zhì)量保證過程、驗(yàn)證過程、確認(rèn)過程、聯(lián)合評(píng)審過程、審核過程、問題解決過程等子過程。

(3)組織過程是對(duì)軟件基礎(chǔ)過程和支持過程的組織保證過程,包括管理過程、基礎(chǔ)設(shè)施過程、改進(jìn)過程和培訓(xùn)過程等子過程。

而在ISO/IEC15504軟件過程評(píng)估標(biāo)準(zhǔn)中,軟件過程被分為5個(gè)過程組:工程過程、支持過程、管理過程、組織過程和客戶—供應(yīng)商過程,如圖1-4所示。

圖1-4 ISO/IEC15504中軟件過程評(píng)估標(biāo)準(zhǔn)的組成

其中:

(1)工程過程包括軟件系統(tǒng)分析、產(chǎn)品定義、設(shè)計(jì)、實(shí)現(xiàn)以及維護(hù)等許多內(nèi)容,包含“系統(tǒng)需求和設(shè)計(jì)”、“軟件需求分析”等子過程。

(2)支持過程是在軟件生命周期中可以隨時(shí)被其他過程所采用,起到輔助作用的過程,包含“文檔編制”、“配置管理”等子過程。

(3)管理過程是為工程過程、支持過程和客戶—供應(yīng)商過程的實(shí)踐提供指導(dǎo)、跟蹤和監(jiān)控的過程,包含“項(xiàng)目管理”、“質(zhì)量管理”等。

(4)組織過程是用于建立組織商業(yè)目標(biāo)和定義整個(gè)組織內(nèi)部培訓(xùn)、開發(fā)活動(dòng)和資源使用等規(guī)則的過程,有助于組織在實(shí)施項(xiàng)目時(shí)更好、更快地實(shí)現(xiàn)預(yù)定的開發(fā)任務(wù)和商業(yè)目標(biāo),包含“業(yè)務(wù)規(guī)劃”、“定義過程”、“過程改進(jìn)”等子過程。

(5)客戶—供應(yīng)商過程是那些直接影響到客戶、對(duì)開發(fā)的支持、向客戶交付軟件以及軟件正確操作與使用的過程,包含“軟件獲得”、“客戶需求管理”等子過程。

主站蜘蛛池模板: 阳谷县| 都江堰市| 安龙县| 富蕴县| 西城区| 浙江省| 法库县| 乌苏市| 贵溪市| 嘉善县| 五大连池市| 金溪县| 监利县| 巴彦淖尔市| 陵川县| 大理市| 浮梁县| 通化县| 彩票| 唐河县| 夹江县| 宁化县| 台州市| 巴南区| 南汇区| 博乐市| 东兴市| 岚皋县| 双城市| 陆良县| 福鼎市| 宁阳县| 眉山市| 措美县| 新营市| 河津市| 朝阳市| 保山市| 类乌齐县| 定西市| 汝城县|