




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第二章、軟件生存周期過程概念:當開發(fā)產品或構建系統(tǒng)時,遵循一系列可預測的步驟(路線圖)是非常重要的,它有助于及時交付高質量的產品。軟件開發(fā)中所遵循的路線圖就是“軟件過程”。人員:軟件工程師及其管理人員根據(jù)需要調整開發(fā)過程,并遵循該過程。除此以外,軟件的需求方也需要參與過程的定義、建立和測試。重要性:軟件過程提高了軟件工程活動的穩(wěn)定性、可控性和有組織性,如果沒有過程約束,軟件活動將失控并變得混亂。但是,現(xiàn)代軟件工程方法必須是“靈活”的,也就是要求軟件工程活動、控制以及文檔的編制適合于項目團隊和要開發(fā)的產品。第二章、軟件生存周期過程概念:當開發(fā)產品或構建系統(tǒng)時,遵循一2.1相關基本概念軟件生存周期(Softwarelifecycle):軟件產品或軟件系統(tǒng)從產生、投入使用到被淘汰的全過程。通常將軟件生存周期分為5個階段,即需求、設計、實現(xiàn)(編碼)、測試和維護。
-張效祥主編.計算機科學技術百科全書(第2版),北京:清華大學出版社,2005年11月.軟件生存周期模型(有時稱為軟件開發(fā)模型):它是整個軟件生存周期內的系統(tǒng)開發(fā)、運行和維護所實施的全部過程、活動和任務的框架。
-鄭人杰.軟件工程.北京:清華大學出版社,1999.2.1相關基本概念3軟件開發(fā)模型是軟件開發(fā)全部過程、活動和任務的結構框架。
-張效祥主編.計算機科學技術百科全書(第2版),北京:清華大學出版社,2005年11月.-王立福,麻志毅、張世琨.軟件工程(第2版).北京大學出版社,2002年3月.軟件開發(fā)模型表達的是軟件生存周期內各種活動如何組織,以及各個階段應該如何銜接。2.2軟件過程
為了細化軟件生存周期這一概念,國際標準化組織于1995年發(fā)布了一個國際標準,即《ISO/IEC軟件生存周期過程12207-1995》。這一標準是軟件工程標準中一個基礎性文件,系統(tǒng)化地給出了軟件開發(fā)所需要的任務。
軟件過程:軟件生存周期中的一系列相關過程。又稱為軟件生存周期過程。過程是活動的集合,活動是任務的集合,任務是將輸入加工成輸出的操作。3軟件開發(fā)模型是軟件開發(fā)全部過程、活動和任務的結構框架。軟件隨著ISO/IEC軟件生存周期過程12207-1995的不斷應用,以及軟件復用技術的發(fā)展,并結合CMM(能力成熟度模型)和ISO/IEC/TR15504的推進,國際標準化組織于2002年給出了ISO/IEC12207-1995的補篇1,主要:增加了一些新的軟件過程,例如測量過程、資產管理過程、復用程序管理過程以及領域軟件工程過程等;增加了一些有關增進該標準應用效果的內容,例如給出了每一過程的目標以及成功實現(xiàn)過程的基本判定準則等。于2004年給出了ISO/IEC12207-1995的補篇2,主要對補篇1的內容做了一些修改。該標準按照不同人員的工作內容來分,將軟件生存周期過程分為三類:基本過程、支持過程和組織過程。在該標準的附錄中,給出了剪裁過程以及相關的指導,以便當把軟件過程運用到相關組織,運用到具體應用領域或具體項目時,可以根據(jù)特定情況,對各種過程和活動進行剪裁,形成特定項目所需要的軟件生存周期過程。隨著ISO/IEC軟件生存周期過程12207-1995的不軟件過程:系統(tǒng)化地給出了軟件開發(fā)所需要的任務;軟件開發(fā)模型:如何根據(jù)軟件項目特點、環(huán)境因素等,選擇并組織這些開發(fā)任務。軟件過程和軟件開發(fā)模型的區(qū)別?軟件過程:系統(tǒng)化地給出了軟件開發(fā)所需要的任務;軟件過程和軟件2.3基本過程
基本過程是指那些與軟件生產直接相關的過程。
包括5個過程:獲取過程、供應過程、開發(fā)過程、
運行過程、維護過程
2.3.1獲取過程獲取過程是獲取者所從事的活動和任務。目的:獲得滿足客戶所表達的那些要求的產品和/或服務。該過程以定義客戶要求開始,以接受客戶所要求的產品和/或服務結束。該過程包括5個基本活動: a)啟動;b)招標[標書]準備; c)合同編制和更新;d)對供方的監(jiān)督; e)驗收和完成。
其中每一基本活動又包含一組特定的任務。2.3基本過程其中的活動:啟動主要任務:
1)描述獲取、開發(fā)或增強一個系統(tǒng)、軟件產品或軟件服務的概念或要求,以此開始這一活動。2)定義并分析該系統(tǒng)需求。系統(tǒng)需求一般應包括業(yè)務、組織和用戶的需求,還應包括與設計、測試有關的安全性、保密性和其他關鍵性需求以及應遵循的標準和規(guī)程。3)需方可以自己定義并分析軟件需求,也可委托供方進行這項任務。4)如果需方委托供方進行系統(tǒng)需求分析,那么需方就要審核并批準所分析的需求。5)為了執(zhí)行任務2)和4),應使用開發(fā)過程(見2.3.3)。其中的活動:啟動
6)依據(jù)對有關風險、費用和效益等方面的適當分析,選擇獲取方案。方案包括: a)是否購買滿足需求的現(xiàn)貨軟件產品; b)是否在自己組織內部進行軟件產品的開發(fā)或獲得軟件服務; c)是否通過合同來開發(fā)軟件產品或獲得軟件服務; d)是否采用上述a、b、c的一個組合; e)是否增強現(xiàn)有的軟件產品或服務。7)當要去獲得一個現(xiàn)成軟件產品時,應確保滿足以下條件: a)滿足該軟件產品的需求; b)文檔是可用的; c)滿足專利權、使用權、擁有權、擔保權和許可權; d)規(guī)劃對該軟件產品的未來支持。
6)依據(jù)對有關風險、費用和效益等方面的適當分析,選擇
8)制定一個獲取計劃并執(zhí)行之,該計劃應包括下述內容: a)對該系統(tǒng)的需求; b)為該系統(tǒng)所規(guī)劃的使用; c)準備使用的合同類型; d)有關組織的職責; e)準備使用的支持(例如驗證、質量保證等); f)風險以及管理這些風險的方法。9)定義驗收策略和條件(準則),并形成文檔。在補篇1中,對獲取過程增加了以下活動:a)合同終結處理;b)獲取方針;c)供應方關系管理;d)用戶關系管理;e)財政管理。關于該過程的其它活動,可參見有關的標準。8)制定一個獲取計劃并執(zhí)行之,該計劃應包括下述內容:成功實現(xiàn)獲取過程的結果是:1)定義了獲取要求、目標、產品/或服務驗收準則以及獲取策略;2)制定了能明確表達顧客和供方的期望、職責和義務的協(xié)定;3)獲得了滿足顧客要求的產品和/或服務;4)按規(guī)定的約束,例如要滿足的成本、進度和質量等,對該獲取過程進行了監(jiān)督;5)驗收了供方的可交付產品。6)對每一接受的交付項,均有一個由客戶和供方達成的滿意性結論。成功實現(xiàn)獲取過程的結果是:2.3.2供應過程供應過程是供方為了向客戶提供滿足需求的軟件產品或服務所從事的一系列活動和任務。
該過程的啟動,或通過為應答需方的招標書而開始編制投標書的決定,或通過與需方簽訂一項提供系統(tǒng)、軟件產品或軟件服務的合同。繼之,確定為管理和保證項目所需的規(guī)程和資源,包括編制項目計劃,執(zhí)行計劃,一直到將系統(tǒng)、軟件產品或軟件服務交付給需方為止。目的:是向客戶提供一個滿足已達成需求的產品或服務。該過程包括的基本活動為:a)啟動;b)準備投標;c)簽訂合同;d)規(guī)劃;e)執(zhí)行和控制;f)復審和評估;g)交付和完成。2.3.2供應過程成功實現(xiàn)供應過程的結果是:a)對顧客請求產生了一個響應;b)在顧客與供方之間建立了一個關于開發(fā)、維護、運行、包裝、交付和安裝產品和/或服務的協(xié)定;c)供方開發(fā)了一個符合協(xié)定需求的產品和/或服務;d)根據(jù)協(xié)定的需求,向顧客交付了該產品和/或服務;e)根據(jù)協(xié)定的需求,安裝了該產品。成功實現(xiàn)供應過程的結果是:2.3.3開發(fā)過程
開發(fā)過程是軟件開發(fā)者所從事的一系列活動。
目的:將一組需求轉換為一個軟件產品或系統(tǒng)。
包括13個活動:
過程實現(xiàn)
系統(tǒng)需求分析
系統(tǒng)結構設計
軟件需求分析
軟件體系結構設計
軟件詳細設計
軟件編碼和測試
軟件集成
軟件合格測試
系統(tǒng)集成
系統(tǒng)合格測試
軟件安裝
軟件驗收支持2.3.3開發(fā)過程其中的活動:過程實現(xiàn)主要任務:(1)如果合同中沒有規(guī)定采用什么軟件生存周期模型,那么開發(fā)者就應規(guī)定或選擇適合于項目范圍、規(guī)模和復雜度的軟件生存周期模型。并應選擇該開發(fā)過程中的活動和任務,將其映射到生存周期模型。其中,依據(jù)采用的軟件生存周期模型,所選擇的活動和任務可以是重疊的或相互作用的,并可以是重復的或循環(huán)的。(2)開發(fā)者應: a)按照文檔編制過程,對任務(1)的輸出建立相應的文檔; b)將這一輸出置于配置管理過程之下,并按照配置管理的要求進行變更控制; c)按照問題解決過程,對在軟件產品和任務中所發(fā)現(xiàn)的問題之解決建立相應的文檔;d)實施合同中規(guī)定的支持過程。其中的活動:過程實現(xiàn)(3)開發(fā)者應適當?shù)剡x擇、剪裁、使用那些由組織為實施開發(fā)過程和支持過程所建立的標準、方法、工具和計算機編程語言(如果合同沒有規(guī)定),并建立相應的文檔。(4)開發(fā)者應為實施開發(fā)過程的活動制定一些計劃。這些計劃應包括與所有需求(包括安全保密性)的開發(fā)和限定條件相關聯(lián)的特定標準、方法、工具、措施和職責。如果必要的話,這些計劃可以分別制訂之。這些計劃均應形成文檔并執(zhí)行之。(5)在軟件產品的開發(fā)或維護中,可以使用一些非交付的軟件項。但應確保對那些已交付獲取方的軟件產品的操作和維護,要獨立于這些非交付項,否則它們就應被認為是可交付的。(3)開發(fā)者應適當?shù)剡x擇、剪裁、使用那些由組織為實其中的活動:軟件需求分析
目的:確定軟件需求及質量特性需求。
主要任務:
編制軟件需求規(guī)格說明書檢查軟件需求:
是否能夠跟蹤系統(tǒng)需求、結構;
從外部上,是否與系統(tǒng)需求保持一致;
需求內部的一致性;
是否具有可測性;
測試覆蓋是否可達到要求;
操作(設計和實現(xiàn)),維護的可行性等其內容包含:功能和性能需求;外界與軟件的接口合格需求;安全需求;保密需求;人機界面需求;數(shù)據(jù)定義和數(shù)據(jù)庫需求;用戶文檔;用戶操作和運行需求;用戶維護需求其中的活動:軟件需求分析其內容包含:成功實現(xiàn)開發(fā)過程的結果是:a)收集了軟件開發(fā)需求并達成協(xié)定;b)開發(fā)了軟件產品或基于軟件的系統(tǒng);c)開發(fā)了證明最終產品是基于需求的中間工作產品;d)在開發(fā)過程的產品之間,建立了一致性;e)根據(jù)系統(tǒng)需求,優(yōu)化了系統(tǒng)質量因素,例如,速度、開發(fā)成本、易用性等;f)提供了證明最終產品滿足需求的證據(jù)(例如,測試證據(jù));g)根據(jù)協(xié)定的需求,安裝了最終產品。成功實現(xiàn)開發(fā)過程的結果是:2.3.4運行過程運行過程是系統(tǒng)操作者所從事的一系列活動和任務。其目標是在軟件產品預期的環(huán)境中運行該產品,并為該軟件產品的維護提供支持。運行過程包括下述活動: a)過程實現(xiàn); b)運行測試; c)系統(tǒng)運行; d)用戶支持。成功實施運行過程的結果是:a)對該軟件在其預定的環(huán)境中正常運行的條件,進行了標識和評估;
b)在其預定的環(huán)境中,運行了該軟件;
c)按照協(xié)定,為軟件產品的顧客提供了幫助和咨詢。2.3.4運行過程成功實施運行過程的結果是:2.3.5維護過程維護過程是維護者所從事的一系列的活動和任務。目的:對交付后的系統(tǒng)或軟件產品,或為了糾正其錯誤,改進其性能或其它屬性,而對其進行修改;或因環(huán)境變更,而對其進行調整。當軟件產品由于某一問題或由于改進、更新的需要而對編碼和相關文檔進行修改時,就要啟動這一過程。該過程隨著軟件產品的退役而結束。維護過程包括下述活動:a)過程實現(xiàn);b)問題和修改分析;c)修改實現(xiàn);d)維護評審/驗收;e)遷移;f)軟件退役。2.3.5維護過程2.4支持過程
支持過程是有關各方按他們的支持目標所從事的一系列相關活動集。支持過程有助于提高系統(tǒng)或軟件產品的質量。支持過程可由使用它們的組織來實施;或作為一種服務,由一個獨立的組織來實施;也可作為項目的一項規(guī)定內容,由客戶來實施。
包括8個過程:文檔過程、配置管理過程、質量保證、驗證過程、確認過程、聯(lián)合評審、審計過程、問題解決等。2.4.1文檔過程
文檔過程是一個記錄由某一過程或活動所產生信息的過程。
包括4個活動:a)過程實現(xiàn);
b)設計和開發(fā);
c)制作;
d)維護。
2.4支持過程成功實施文檔過程的結果是:a)制定了標識軟件產品或服務的生存周期中所要產生的文檔之策略;b)標識了編制軟件文檔的標準;c)標識了由過程或項目產生的文檔;d)對全部文檔的內容和目的進行了規(guī)定、評審和批準;e)根據(jù)已標識的標準,制作了可用的文檔;f)按定義的準則維護了文檔。成功實施文檔過程的結果是:2.4.2配置管理過程配置管理過程是應用管理上的和技術上的規(guī)程來支持整個軟件生存周期的過程,主要涉及:標識、定義系統(tǒng)中的軟件項;控制軟件項的修改和發(fā)布;記錄和報告軟件項的狀態(tài)和修改請求;保證軟件項的完備性、一致性和正確性;以及控制軟件項的貯存、處理和交付??梢娫撨^程的目的是建立并維護一個過程或一個項目的所有工作產品的完整性,使它們對相關團體而言均是可用的。注:當該過程用于其他軟件產品或實體時,應對所提及的“軟件項”要作相應的解釋。該過程包括以下活動:a)過程實現(xiàn);b)配置標識;c)配置控制;d)配置狀態(tài)統(tǒng)計;e)配置評價;f)發(fā)布管理和交付。2.4.2配置管理過程成功實施該過程的結果是:a)制定了配置管理策略;b)標識并定義了由過程或項目所產生的全部工作產品/項,并形成基線;c)對工作產品/項的修改和發(fā)布,進行了控制;d)為對各相關方均是可用的,做了必要的修改和發(fā)布;e)記錄并報告了工作產品/項的狀況和修改請求;f)確保了每一軟件項的完備性和一致性;g)對每一軟件項的存儲、處置和交付進行了控制。成功實施該過程的結果是:2.4.3質量保證過程質量保證過程是為項目生存周期內的軟件過程和軟件產品提供適當保障的過程,目的是使它們符合所規(guī)定的需求,并遵循已建立計劃。為了避免產生偏見,實施質量保證的人員不能是直接負責軟件產品開發(fā)的人員,并應在組織上給予獨立的權限。質量保證可以使用其他支持過程(如驗證、確認、聯(lián)合評審、審核和問題解決等過程)的結果。質量保證過程包括以下活動:a)過程實現(xiàn);b)產品保證;c)過程保證;d)質量體系保證。2.4.3質量保證過程引子扁鵲論醫(yī)病情越早被發(fā)現(xiàn),治療就越容易,病人受到的損害也就小。魏文王問名醫(yī)扁鵲說:“你們家兄弟三人,都精于醫(yī)術,到底哪一位最好呢?”
扁鵲答說:“長兄最好,中兄次之,我最差?!?/p>
文王再問:“那么為什么你最出名呢?”
扁鵲答說:“我長兄治病,是治病于病情發(fā)作之前。由于一般人不知道他事先能鏟除病因,所以他的名氣無法傳出去,只有我們家的人才知道。我中兄治病,是治病于病情初起之時。一般人以為他只能治輕微的小病,所以他的名氣只及于本鄉(xiāng)里。而我扁鵲治病,是治病于病情嚴重之時。一般人都看到我在經(jīng)脈上穿針管來放血、在皮膚上敷藥等大手術,所以以為我的醫(yī)術高明,名氣因此響遍全國?!?/p>
文王說:“你說得好極了?!币硬∏樵皆绫话l(fā)現(xiàn),治療就越容易,病人受到的損害也就小。從TQM(全面質量管理)開始,過程成為提高產品質量的另一重要手段技術并非提高質量的唯一出路TQM的思想好的過程導致好的產品缺陷越早發(fā)現(xiàn)、越早修改,就越經(jīng)濟制定并實施好的過程,預防缺陷的產生,盡早的排除缺陷一九五零年美國統(tǒng)計學家愛德華茲.戴1111111111明出席東京的一個晚宴,并發(fā)表了《關于如何解決日本戰(zhàn)后的經(jīng)濟問題》的演講。他指出,質量管理并不是從生產流程末端的產品瑕疵檢查才開始的,而是貫穿于整個生產過程的各個環(huán)節(jié),需要從供應商到最普通的車間工人等所有人的積極合作。并且鄭重承諾,如果日本公司采用他的建議,那么他們的產品在五年內達到世界級水準。從TQM(全面質量管理)開始,過程成為提高產品質量的另一重成功實施該過程的結果是:a)制定了實施質量保證的策略;b)產生并維護了質量保證的證據(jù);c)標識并記錄了問題和/或與協(xié)定需求不符合的內容;d)驗證了產品、過程和活動與適用的標準、規(guī)程和需求的依從性。成功實施該過程的結果是:2.4.4驗證過程
驗證過程是一個確定某項活動的軟件產品是否滿足在以前的活動中施加于它們的需求和條件的過程。該過程的目的是:證實一個過程和/或項目的每一軟件工作產品和/或服務恰當?shù)胤从沉艘岩?guī)定的需求。驗證過程可應用于供應、開發(fā)、運行或維護等過程。該過程可以由來自同一組織一個人或多個人來實施,也可以由來自另一組織的人員來實施。在由一個獨立于供方、開發(fā)者、操作者或維護者的組織來執(zhí)行該過程的情況下,該驗證過程就稱為獨立的驗證過程。該過程包括以下活動: a)過程實現(xiàn); b)驗證。2.4.4驗證過程其中活動:驗證包括以下任務:(1)合同驗證。其中應考慮下面列出的準則:供方具有滿足需求的能力;需求一致并覆蓋了用戶的需要;規(guī)定了可處理需求變更和處理問題蔓延的規(guī)程;規(guī)定了各方之間進行接口和合作的規(guī)程及其范圍,包括所有權、許可權、版權和保密性;規(guī)定了符合需求的驗收準則和規(guī)程。注:該活動可用于合同評審。(2)過程驗證。其中應考慮下面列出的準則:項目規(guī)劃的需求是足夠的、及時的;為項目所選擇的過程是可行的、已實現(xiàn)的,是按計劃執(zhí)行的,并是符合合同的;用于項目過程的標準、規(guī)程和環(huán)境是滿意的;根據(jù)合同要求,為項目配備了經(jīng)過培訓的人員。其中活動:驗證(3)需求驗證。其中應考慮下面列出的準則:系統(tǒng)需求是一致的、可行的且是可測試的;根據(jù)設計準則,系統(tǒng)需求被適當?shù)胤峙浣o了硬件項、軟件項和手工操作;軟件需求是一致的、可行的且是可測試的,并準確地體現(xiàn)了系統(tǒng)需求;通過適當嚴格的方法表明,有關安全保密性和關鍵性的軟件需求是正確的。(4)設計驗證。其中應考慮下面列出的準則:設計是正確的、與需求一致并可追蹤到需求;設計實現(xiàn)了適當?shù)氖录蛄?、輸入、輸出、接口、邏輯流,實現(xiàn)了按時和規(guī)模預算的分配以及錯誤定義、問題隔離及恢復;可以依據(jù)需求導出所選擇的設計;通過適當嚴格的方法表明,設計正確地實現(xiàn)了安全保密性以及其他關鍵性的需求。(3)需求驗證。其中應考慮下面列出的準則:(5)編碼驗證。其中應根據(jù)下面列出的準則:編碼可追蹤到設計和需求,是可測試的和正確的,并且符合需求和編碼標準;編碼實現(xiàn)了適當?shù)氖录樞?、一致的接口、正確的數(shù)據(jù)和控制流、完備性、恰當?shù)陌撮g和規(guī)模預算的分配、錯誤定義、問題隔離和恢復;可以由設計或需求導出所選擇的編碼;通過適當嚴格的方法表明,編碼正確地實現(xiàn)了安全保密和其他關鍵性的需求。(6)集成驗證。其中應考慮下面列出的準則:每個軟件項的軟件構件和軟件單元已被完整的且正確的集成到該軟件項中;系統(tǒng)的硬件項、軟件項和手工操作已被完整的且正確的集成到該系統(tǒng)中;已根據(jù)集成計劃執(zhí)行了相應的集成任務。(5)編碼驗證。其中應根據(jù)下面列出的準則:(7)文檔驗證。其中應考慮下面列出的準則:
a)文檔是充分的、完備的和一致的;
b)文檔制訂是及時的;
c)文檔的配置管理遵循了規(guī)定的規(guī)程。成功實施驗證過程的結果是:制定并實現(xiàn)了驗證策略;標識了驗證所有要求的軟件工作產品的準則;執(zhí)行了所要求的驗證活動;標識并記錄了缺陷;給出了對顧客和其他相關方可用的驗證活動的結果。(7)文檔驗證。其中應考慮下面列出的準則:2.4.5確認過程確認過程是一個確定需求和最終的、已建成的系統(tǒng)或軟件產品是否滿足特定預期用途的過程。該過程的目的是:證實對軟件工作產品特定預期使用的需求已予實現(xiàn)。該過程可以作為開發(fā)過程中軟件驗收支持活動的一個部分來執(zhí)行。該過程可以由來自同一組織一個人或多個人來實施,也可以由來自另一組織的人員來實施。在由一個獨立于供方、開發(fā)者、操作者或維護者的組織來執(zhí)行該過程的情況下,該確認過程就稱為獨立的確認過程。該過程包括以下活動: a)過程實施; b)確認。2.4.5確認過程其中活動:確認包括以下任務:(1)為了對測試結果進行分析,準備所選擇的測試需求、測試用例和測試規(guī)格說明。(2)確保這些測試需求、測試用例和測試規(guī)格說明體現(xiàn)了特定預期用途的特殊需求。(3)進行(1)、(2)中確定的測試,一般包括:a)強度、邊界和異常輸入的測試;軟件產品隔離錯誤影響測試以及使錯誤影響最小化能力的測試,即:在失效時,測試該軟件產品是否能得體降級;b)在過載、邊界和異常條件下,測試該軟件產品是否能向操作者提出協(xié)助請求;
c)代表用戶使用該軟件產品成功完成其預期任務的測試。(4)確認軟件產品滿足它的預期用途。(5)在目標環(huán)境的選定區(qū)域中,適當?shù)貙υ撥浖a品進行測試。其中活動:確認注:確認可使用除了測試之外的其他方法,例如,分析、建模、模擬等。成功實施確認過程的結果是: a) 制定并實現(xiàn)了確認策略; b) 標識了確認所有要求的工作產品的準則; c) 執(zhí)行了要求的確認活動; d) 標識并記錄了問題; e) 提供了所開發(fā)的軟件工作產品適合于其預期用途的證據(jù); f) 給出了對顧客和其他相關方可用的確認活動的結果。關于其他支持過程,例如聯(lián)合評審過程、審計過程、問題解決過程等,可參閱相關標準。注:確認可使用除了測試之外的其他方法,例如,分析、建模、模擬2.4.6聯(lián)合評審過程聯(lián)合評審過程是評價項目的某個活動或階段的執(zhí)行情況和產品是否合適的過程。它可以由任意兩個合作伙伴所使用,由其中一方評審另一方。2.4.7審計過程審計過程的目的是確定遵照需求、計劃合同的程度。審計可由任何兩個合作伙伴使用,由其中一方審計另一方的軟件產品或活動。2.4.8問題解決過程問題解決過程是一個用于分析和排除在開發(fā)、運行、維護和其他過程中發(fā)現(xiàn)問題或不一致的過程。其目的是提供一種適時的、可信賴的并編成文檔的手段,以保證分析和排除所有的問題并指明各種傾向。2.4.6聯(lián)合評審過程2.5組織過程
是指那些與軟件生產組織有關的過程。
包括7個過程:a)管理過程;b)基礎設施過程;c)改進過程;d)人力資源過程;f)資產管理過程;g)復用程序管理過程h)領域軟件工程過程。2.5.1管理過程
管理過程是軟件生存周期過程中管理者所從事的一系列活動。管理人員負責產品管理、項目管理和過程(例如,獲取、供應、開發(fā)、運作、維護或支持過程)任務的管理。
管理過程包含以下活動:
1)啟動與范圍定義;
2)規(guī)劃;
3)測量;
4)執(zhí)行和控制;
5)評審和評估
6)結束處理。2.5組織過程成功實施管理過程的結果是:a)定義了那些要管理的過程和活動的范圍;b)標識了為達到這些過程目的必須執(zhí)行的活動和任務;c)對達到過程目標以及可用的資源和限制條件的可行性,進行了評估;d)建立了執(zhí)行已標識那些活動和任務所需要的資源和基礎設施;e)標識了活動并實施了任務;f)對定義的那些活動和任務的執(zhí)行,進行了監(jiān)督;g)對過程活動所產生的工作產品進行了評審,并對相應的結果進行了分析和評估;h)在過程的執(zhí)行偏離已標識的活動和任務,或未能達到其目標時,采取了修改過程執(zhí)行的措施;i)有證據(jù)地闡明了該過程已成功地達到了它的目的。成功實施管理過程的結果是:2.5.2改進過程
改進過程是管理人員從事的一組活動和任務,其目的是:建立、評價、測量、控制和改進軟件生存周期過程。主要活動:
a)過程建立;
b)過程評價;
c)過程改進。成功實施該過程的結果是:為組織開發(fā)了一組可用的過程資產;為了確定在達到組織目標中過程實施有效性的程度,定期地對組織的過程能力進行了評價,在已有的基礎上,為了達到該組織的業(yè)務目標,改進了過程的有效性和效率。2.5.2改進過程2.5.3基礎設施過程(基礎設施包括:硬件、軟件、工具;技術、標準以及開發(fā)所需的其他設施)是建立、維護任何其他過程所需的基礎設施的過程。主要活動:a)過程實現(xiàn);b)建立基礎設施;c)維護基礎設施。成功實施該過程的結果是:為支持組織單元內的過程,定義了基礎設施需求;標識并規(guī)約了基礎設施要素;獲取了基礎設施要素;實現(xiàn)了基礎設施要素;維護了穩(wěn)定的和可靠的基礎設施。2.5.3基礎設施過程(基礎設施包括:硬件、軟件、工具;2.5.4人力資源過程人力資源過程是為組織和項目提供具有技能和知識人員的過程,其目的是:提供適當?shù)娜肆Y源,并不斷使他們具有與業(yè)務要求相一致的技能水平,使這些人員能有效地履行其角色并能緊密、協(xié)調地工作。該過程包括以下活動: a)過程實施; b)定義培訓需求; c)補充合格的員工; d)評價員工業(yè)績; e)建立項目團隊需求; f)知識管理。2.5.4人力資源過程成功實施人力資源過程的結果是:通過及時地對組織需求和項目需求的評審,為組織和項目的運作標識了所需要的角色和技能;為組織和項目提供了人力資源;基于組織和項目的需要,標識并提供一組組織內的公共培訓;給出了該組織可用的智能方面的資產,并可通過已建立的機制來利用之。關于組織過程中的其它內容,例如資產管理過程、復用管理過程以及領域軟件過程過程等,可參見相應的標準。關于組織過程中的其它內容,例如資產管理過程、復用管理過程以及領域軟件過程過程等,可參見相應的標準。
審計成功實施人力資源過程的結果是:審計422.6軟件過程之間的關系獲取過程獲取過程供應過程管理過程運行過程開發(fā)過程維護過程獲取者供應者管理者操作者用
戶開發(fā)者維護者支持過程的應用者組織過程:管理、改進...支持過程:文檔、質量保證、
配置管理...合同應用合同視角管理視角運行視角工程視角支持視角應用應用應用按著合同視角,涉及的角色有需方和供方,在談判并簽訂合同的基礎上,分別應用獲取過程和供應過程。其中,獲取過程用于需方,供應過程用于供方。按著管理視角,涉及的角色有需方、供方、開發(fā)者、操作者、維護者或其他參與方,它們應用管理過程對相關的過程進行管理。按著運行視角,涉及的角色有操作者和用戶,涉及的過程是運行過程,由一些活動組成。其中用戶運行軟件,而操作者為用戶提供軟件運行服務。按著工程視角,涉及的角色有開發(fā)者或維護者完成其相應的工程任務,以生產或修改軟件產品。有生存周期兩個過程:開發(fā)過程和維護過程。開發(fā)工程師應用開發(fā)過程來生產軟件產品;維護工程師應用維護過程來修改軟件,使其對當前是有效的。按著支持視角,涉及的角色是提供過程支持的服務人員,例如配置管理、質理保證人員,他們?yōu)槠渌藛T提供服務,以完成特定的任務。其中從質量管理的角度,涉及5個生存周期過程:質量保證過程;驗證過程;確認過程;聯(lián)合評審過程;審核過程。2.6軟件過程之間的關系獲取過程獲取過程供應過程管理過程運2.6剪裁過程:在國際標準《ISO/IEC12207-1995軟件生存周期過程》的附錄A中,給出了相應的剪裁過程。
目的:針對特定領域的軟件工程,為了有效地實施軟件過程,提供一種選定過程模型和標準的機制,以便形成該工程的各個軟件過程和活動。剪裁過程作為一類軟件過程,是對軟件過程和活動實施剪裁的過程。
主要活動:
a)標識項目環(huán)境;b)請求輸入;c)選擇過程、活動和任務;d)將剪裁決定和理由形成文檔。
如:標識項目環(huán)境
標識影響剪裁工作的項目環(huán)境特征。例如使用的過程模型和方法,系統(tǒng)和軟件需求,機構的政策和策略,參與工程的人員素質、數(shù)量等。2.6剪裁過程:就目前的認識來說,在應用剪裁過程中,主要應考慮以下一些關鍵的項目特征:a)組織方針確定與項目相關的、可用的組織方針,比如,有關計算機語言、安全保密性和硬件保存等方面的需求和風險管理。這樣,就應保留那些與這些方針有關的過程、活動和任務。b)獲取策略確定與項目相關的、可用的獲取策略,比如,合同類型,承包方,涉及的分包方,參與驗證和確認的機構,需方參與承包方的程度,以及對承包方的能力評估。這樣,這樣,就應保留那些與這些獲取策略有關的過程、活動和任務。c)支持概念確定與項目相關的、可用的支持概念,比如,預期的支持期限、變更程度以及需方或供方是否將予以支持等。如果軟件產品將有較長的支持生存期,或者預期將發(fā)生重大變更,就應該考慮所有文檔編制需求,并建議自動生成文檔。就目前的認識來說,在應用剪裁過程中,主要應考慮以下一些關鍵的d)
生存周期模型確定與項目相關的、可用的生存周期模型,比如,瀑布模型、演化模型、構造模型、預先規(guī)劃的產品改進模型以及螺旋模型等。所有這些模型都描述一些確定過程和活動,這些過程和活動可以以順序、重復和組合的方式執(zhí)行。在此基礎上,應把本標準的生存周期活動映射到所選擇的模型中。對于演化模型、構造模型和預先規(guī)劃的產品改進模型,是將一個項目活動的輸出作為下一項活動的輸入,因此,在這種情況下,文檔編制應當在一項活動或任務結束時完成。e)
參與方確定或標識項目中的參與方;比如,需方、供方、開發(fā)者、分包方、驗證機構、確認機構、維護者和人員數(shù)量。要考慮與兩個參與方(例如,需方與開發(fā)者,供方與驗證或確認機構)之間的組織接口有關的所有需求。涉及許多(幾十或幾百)人的大型項目需要大量的管理監(jiān)督和控制。對于大型項目,內部的和獨立的評估、評審、審核和審查以及數(shù)據(jù)收集都是重要的工具。對于小型項目,這些控制可能是多余的。d)生存周期模型確定與項目相關的、可用的生存周期模型,f)系統(tǒng)生存周期活動確定與項目相關的、可用的當前系統(tǒng)生存周期活動,比如,需方的項目啟動,供方的開發(fā)和維護。某些場景:需方正在啟動或確定系統(tǒng)需求??赡苓M行了需求和設計的可行性研究和原型制作,可能開發(fā)了原型的軟件代碼,這些代碼在今后按合同進行軟件產品開發(fā)時可能使用,也可能用不到??赡芫幹屏讼到y(tǒng)需求和初步的軟件需求。在這些情況下,在應用剪裁過程中,就不應把標準中的開發(fā)過程作為需求(但可以一個作指南),可能不需要嚴格的評估,也可能不需要聯(lián)合評審和審核。開發(fā)者正在按合同生產軟件產品。在這種情況下,在應用剪裁過程中,就應該考慮是否需要所有的開發(fā)過程。維護者正在修改軟件產品。要考慮維護過程??赡軐㈤_發(fā)過程的某些部分作為子過程使用。g)系統(tǒng)層特性確定相關的、可用的系統(tǒng)層特性,比如,子系統(tǒng)和配置項的數(shù)量。如果系統(tǒng)有許多子系統(tǒng)或配置項,就應該針對每個子系統(tǒng)和配置項仔細地剪裁開發(fā)過程,應該考慮所有接口和集成的需求。f)系統(tǒng)生存周期活動確定與項目相關的、可用的當前系統(tǒng)生h)軟件層特性確定相關的、可用的軟件層特性,比如,軟件項的數(shù)量,軟件產品的類型、規(guī)模和關鍵性以及技術風險。如果軟件產品有許多軟件項、構件和軟件單元,就應該針對每一軟件項仔細剪裁開發(fā)過程,應該考慮所有接口和集成的需求。確定所涉及的軟件產品類型,因為不同類型的軟件產品可能要求不同的剪裁決策,例如:新的開發(fā)。在應用剪裁過程中,應考慮所有軟件過程,特別是開發(fā)過程;使用現(xiàn)成的軟件產品。在這種情況下,開發(fā)過程就可能是多余的,而應對該軟件產品的性能、文檔、專利、用途、所有權、擔保、許可權和未來的支持等進行評估;修改現(xiàn)成的軟件產品。在這種情況下,可能就不使用文檔過程,而應根據(jù)關鍵性和預期的未來變更,伴隨維護過程來使用開發(fā)過程;應對該軟件產品有關的性能、文檔、專利、所有權、用途、擔保、許可權和未來的支持等進行評估。h)軟件層特性確定相關的、可用的軟件層特性,比如,軟件嵌入或集成到一個系統(tǒng)中的軟件或固件。由于這樣的軟件產品是一個系統(tǒng)的一部分,因此就應該考慮開發(fā)過程中那些與該系統(tǒng)有關的活動,例如系統(tǒng)體系結構設計等,其中僅需選擇一些具有動詞“執(zhí)行”或“支持”的活動。如果軟件或固件產品在未來不可能進行修改,那么就應該仔細檢查文檔需要的范圍;獨立的軟件產品。由于這種軟件產品不是系統(tǒng)的組成部分,因此就不需要考慮開發(fā)過程(2.3.3)中那些與系統(tǒng)有關的活動,例如系統(tǒng)體系結構設計等,而應仔細檢查文檔需要,特別是文檔的維護;非交付的軟件產品。由于這樣的項不涉及獲取、供應甚至開發(fā),因此只需考慮開發(fā)過程中的活動1之任務5。然而,如果需方?jīng)Q定為了將來的運行和維護而需要這一軟件產品的話,那么就應該按上述b)或c)來處理之。嵌入或集成到一個系統(tǒng)中的軟件或固件。由于這樣的軟件產品是一個其他因素
系統(tǒng)越是依賴軟件產品正確工作和及時完成,那么就越要通過測試、評審、審核、驗證、確認等手段來加強管理上的控制。反之,對非關鍵的或小型的軟件產品進行過多的管理上的控制,可能就需要更大的成本。軟件產品的開發(fā)可能有技術風險。如果應用的軟件技術不成熟,所開發(fā)的軟件產品是前所未有的或是復雜的,或軟件產品包含安全保密或其他關鍵需求,那么可能需要嚴格的規(guī)格說明、設計、測試和評估,并且獨立的驗證和確認可能就是重要的。其他因素第二章、軟件生存周期過程概念:當開發(fā)產品或構建系統(tǒng)時,遵循一系列可預測的步驟(路線圖)是非常重要的,它有助于及時交付高質量的產品。軟件開發(fā)中所遵循的路線圖就是“軟件過程”。人員:軟件工程師及其管理人員根據(jù)需要調整開發(fā)過程,并遵循該過程。除此以外,軟件的需求方也需要參與過程的定義、建立和測試。重要性:軟件過程提高了軟件工程活動的穩(wěn)定性、可控性和有組織性,如果沒有過程約束,軟件活動將失控并變得混亂。但是,現(xiàn)代軟件工程方法必須是“靈活”的,也就是要求軟件工程活動、控制以及文檔的編制適合于項目團隊和要開發(fā)的產品。第二章、軟件生存周期過程概念:當開發(fā)產品或構建系統(tǒng)時,遵循一2.1相關基本概念軟件生存周期(Softwarelifecycle):軟件產品或軟件系統(tǒng)從產生、投入使用到被淘汰的全過程。通常將軟件生存周期分為5個階段,即需求、設計、實現(xiàn)(編碼)、測試和維護。
-張效祥主編.計算機科學技術百科全書(第2版),北京:清華大學出版社,2005年11月.軟件生存周期模型(有時稱為軟件開發(fā)模型):它是整個軟件生存周期內的系統(tǒng)開發(fā)、運行和維護所實施的全部過程、活動和任務的框架。
-鄭人杰.軟件工程.北京:清華大學出版社,1999.2.1相關基本概念53軟件開發(fā)模型是軟件開發(fā)全部過程、活動和任務的結構框架。
-張效祥主編.計算機科學技術百科全書(第2版),北京:清華大學出版社,2005年11月.-王立福,麻志毅、張世琨.軟件工程(第2版).北京大學出版社,2002年3月.軟件開發(fā)模型表達的是軟件生存周期內各種活動如何組織,以及各個階段應該如何銜接。2.2軟件過程
為了細化軟件生存周期這一概念,國際標準化組織于1995年發(fā)布了一個國際標準,即《ISO/IEC軟件生存周期過程12207-1995》。這一標準是軟件工程標準中一個基礎性文件,系統(tǒng)化地給出了軟件開發(fā)所需要的任務。
軟件過程:軟件生存周期中的一系列相關過程。又稱為軟件生存周期過程。過程是活動的集合,活動是任務的集合,任務是將輸入加工成輸出的操作。3軟件開發(fā)模型是軟件開發(fā)全部過程、活動和任務的結構框架。軟件隨著ISO/IEC軟件生存周期過程12207-1995的不斷應用,以及軟件復用技術的發(fā)展,并結合CMM(能力成熟度模型)和ISO/IEC/TR15504的推進,國際標準化組織于2002年給出了ISO/IEC12207-1995的補篇1,主要:增加了一些新的軟件過程,例如測量過程、資產管理過程、復用程序管理過程以及領域軟件工程過程等;增加了一些有關增進該標準應用效果的內容,例如給出了每一過程的目標以及成功實現(xiàn)過程的基本判定準則等。于2004年給出了ISO/IEC12207-1995的補篇2,主要對補篇1的內容做了一些修改。該標準按照不同人員的工作內容來分,將軟件生存周期過程分為三類:基本過程、支持過程和組織過程。在該標準的附錄中,給出了剪裁過程以及相關的指導,以便當把軟件過程運用到相關組織,運用到具體應用領域或具體項目時,可以根據(jù)特定情況,對各種過程和活動進行剪裁,形成特定項目所需要的軟件生存周期過程。隨著ISO/IEC軟件生存周期過程12207-1995的不軟件過程:系統(tǒng)化地給出了軟件開發(fā)所需要的任務;軟件開發(fā)模型:如何根據(jù)軟件項目特點、環(huán)境因素等,選擇并組織這些開發(fā)任務。軟件過程和軟件開發(fā)模型的區(qū)別?軟件過程:系統(tǒng)化地給出了軟件開發(fā)所需要的任務;軟件過程和軟件2.3基本過程
基本過程是指那些與軟件生產直接相關的過程。
包括5個過程:獲取過程、供應過程、開發(fā)過程、
運行過程、維護過程
2.3.1獲取過程獲取過程是獲取者所從事的活動和任務。目的:獲得滿足客戶所表達的那些要求的產品和/或服務。該過程以定義客戶要求開始,以接受客戶所要求的產品和/或服務結束。該過程包括5個基本活動: a)啟動;b)招標[標書]準備; c)合同編制和更新;d)對供方的監(jiān)督; e)驗收和完成。
其中每一基本活動又包含一組特定的任務。2.3基本過程其中的活動:啟動主要任務:
1)描述獲取、開發(fā)或增強一個系統(tǒng)、軟件產品或軟件服務的概念或要求,以此開始這一活動。2)定義并分析該系統(tǒng)需求。系統(tǒng)需求一般應包括業(yè)務、組織和用戶的需求,還應包括與設計、測試有關的安全性、保密性和其他關鍵性需求以及應遵循的標準和規(guī)程。3)需方可以自己定義并分析軟件需求,也可委托供方進行這項任務。4)如果需方委托供方進行系統(tǒng)需求分析,那么需方就要審核并批準所分析的需求。5)為了執(zhí)行任務2)和4),應使用開發(fā)過程(見2.3.3)。其中的活動:啟動
6)依據(jù)對有關風險、費用和效益等方面的適當分析,選擇獲取方案。方案包括: a)是否購買滿足需求的現(xiàn)貨軟件產品; b)是否在自己組織內部進行軟件產品的開發(fā)或獲得軟件服務; c)是否通過合同來開發(fā)軟件產品或獲得軟件服務; d)是否采用上述a、b、c的一個組合; e)是否增強現(xiàn)有的軟件產品或服務。7)當要去獲得一個現(xiàn)成軟件產品時,應確保滿足以下條件: a)滿足該軟件產品的需求; b)文檔是可用的; c)滿足專利權、使用權、擁有權、擔保權和許可權; d)規(guī)劃對該軟件產品的未來支持。
6)依據(jù)對有關風險、費用和效益等方面的適當分析,選擇
8)制定一個獲取計劃并執(zhí)行之,該計劃應包括下述內容: a)對該系統(tǒng)的需求; b)為該系統(tǒng)所規(guī)劃的使用; c)準備使用的合同類型; d)有關組織的職責; e)準備使用的支持(例如驗證、質量保證等); f)風險以及管理這些風險的方法。9)定義驗收策略和條件(準則),并形成文檔。在補篇1中,對獲取過程增加了以下活動:a)合同終結處理;b)獲取方針;c)供應方關系管理;d)用戶關系管理;e)財政管理。關于該過程的其它活動,可參見有關的標準。8)制定一個獲取計劃并執(zhí)行之,該計劃應包括下述內容:成功實現(xiàn)獲取過程的結果是:1)定義了獲取要求、目標、產品/或服務驗收準則以及獲取策略;2)制定了能明確表達顧客和供方的期望、職責和義務的協(xié)定;3)獲得了滿足顧客要求的產品和/或服務;4)按規(guī)定的約束,例如要滿足的成本、進度和質量等,對該獲取過程進行了監(jiān)督;5)驗收了供方的可交付產品。6)對每一接受的交付項,均有一個由客戶和供方達成的滿意性結論。成功實現(xiàn)獲取過程的結果是:2.3.2供應過程供應過程是供方為了向客戶提供滿足需求的軟件產品或服務所從事的一系列活動和任務。
該過程的啟動,或通過為應答需方的招標書而開始編制投標書的決定,或通過與需方簽訂一項提供系統(tǒng)、軟件產品或軟件服務的合同。繼之,確定為管理和保證項目所需的規(guī)程和資源,包括編制項目計劃,執(zhí)行計劃,一直到將系統(tǒng)、軟件產品或軟件服務交付給需方為止。目的:是向客戶提供一個滿足已達成需求的產品或服務。該過程包括的基本活動為:a)啟動;b)準備投標;c)簽訂合同;d)規(guī)劃;e)執(zhí)行和控制;f)復審和評估;g)交付和完成。2.3.2供應過程成功實現(xiàn)供應過程的結果是:a)對顧客請求產生了一個響應;b)在顧客與供方之間建立了一個關于開發(fā)、維護、運行、包裝、交付和安裝產品和/或服務的協(xié)定;c)供方開發(fā)了一個符合協(xié)定需求的產品和/或服務;d)根據(jù)協(xié)定的需求,向顧客交付了該產品和/或服務;e)根據(jù)協(xié)定的需求,安裝了該產品。成功實現(xiàn)供應過程的結果是:2.3.3開發(fā)過程
開發(fā)過程是軟件開發(fā)者所從事的一系列活動。
目的:將一組需求轉換為一個軟件產品或系統(tǒng)。
包括13個活動:
過程實現(xiàn)
系統(tǒng)需求分析
系統(tǒng)結構設計
軟件需求分析
軟件體系結構設計
軟件詳細設計
軟件編碼和測試
軟件集成
軟件合格測試
系統(tǒng)集成
系統(tǒng)合格測試
軟件安裝
軟件驗收支持2.3.3開發(fā)過程其中的活動:過程實現(xiàn)主要任務:(1)如果合同中沒有規(guī)定采用什么軟件生存周期模型,那么開發(fā)者就應規(guī)定或選擇適合于項目范圍、規(guī)模和復雜度的軟件生存周期模型。并應選擇該開發(fā)過程中的活動和任務,將其映射到生存周期模型。其中,依據(jù)采用的軟件生存周期模型,所選擇的活動和任務可以是重疊的或相互作用的,并可以是重復的或循環(huán)的。(2)開發(fā)者應: a)按照文檔編制過程,對任務(1)的輸出建立相應的文檔; b)將這一輸出置于配置管理過程之下,并按照配置管理的要求進行變更控制; c)按照問題解決過程,對在軟件產品和任務中所發(fā)現(xiàn)的問題之解決建立相應的文檔;d)實施合同中規(guī)定的支持過程。其中的活動:過程實現(xiàn)(3)開發(fā)者應適當?shù)剡x擇、剪裁、使用那些由組織為實施開發(fā)過程和支持過程所建立的標準、方法、工具和計算機編程語言(如果合同沒有規(guī)定),并建立相應的文檔。(4)開發(fā)者應為實施開發(fā)過程的活動制定一些計劃。這些計劃應包括與所有需求(包括安全保密性)的開發(fā)和限定條件相關聯(lián)的特定標準、方法、工具、措施和職責。如果必要的話,這些計劃可以分別制訂之。這些計劃均應形成文檔并執(zhí)行之。(5)在軟件產品的開發(fā)或維護中,可以使用一些非交付的軟件項。但應確保對那些已交付獲取方的軟件產品的操作和維護,要獨立于這些非交付項,否則它們就應被認為是可交付的。(3)開發(fā)者應適當?shù)剡x擇、剪裁、使用那些由組織為實其中的活動:軟件需求分析
目的:確定軟件需求及質量特性需求。
主要任務:
編制軟件需求規(guī)格說明書檢查軟件需求:
是否能夠跟蹤系統(tǒng)需求、結構;
從外部上,是否與系統(tǒng)需求保持一致;
需求內部的一致性;
是否具有可測性;
測試覆蓋是否可達到要求;
操作(設計和實現(xiàn)),維護的可行性等其內容包含:功能和性能需求;外界與軟件的接口合格需求;安全需求;保密需求;人機界面需求;數(shù)據(jù)定義和數(shù)據(jù)庫需求;用戶文檔;用戶操作和運行需求;用戶維護需求其中的活動:軟件需求分析其內容包含:成功實現(xiàn)開發(fā)過程的結果是:a)收集了軟件開發(fā)需求并達成協(xié)定;b)開發(fā)了軟件產品或基于軟件的系統(tǒng);c)開發(fā)了證明最終產品是基于需求的中間工作產品;d)在開發(fā)過程的產品之間,建立了一致性;e)根據(jù)系統(tǒng)需求,優(yōu)化了系統(tǒng)質量因素,例如,速度、開發(fā)成本、易用性等;f)提供了證明最終產品滿足需求的證據(jù)(例如,測試證據(jù));g)根據(jù)協(xié)定的需求,安裝了最終產品。成功實現(xiàn)開發(fā)過程的結果是:2.3.4運行過程運行過程是系統(tǒng)操作者所從事的一系列活動和任務。其目標是在軟件產品預期的環(huán)境中運行該產品,并為該軟件產品的維護提供支持。運行過程包括下述活動: a)過程實現(xiàn); b)運行測試; c)系統(tǒng)運行; d)用戶支持。成功實施運行過程的結果是:a)對該軟件在其預定的環(huán)境中正常運行的條件,進行了標識和評估;
b)在其預定的環(huán)境中,運行了該軟件;
c)按照協(xié)定,為軟件產品的顧客提供了幫助和咨詢。2.3.4運行過程成功實施運行過程的結果是:2.3.5維護過程維護過程是維護者所從事的一系列的活動和任務。目的:對交付后的系統(tǒng)或軟件產品,或為了糾正其錯誤,改進其性能或其它屬性,而對其進行修改;或因環(huán)境變更,而對其進行調整。當軟件產品由于某一問題或由于改進、更新的需要而對編碼和相關文檔進行修改時,就要啟動這一過程。該過程隨著軟件產品的退役而結束。維護過程包括下述活動:a)過程實現(xiàn);b)問題和修改分析;c)修改實現(xiàn);d)維護評審/驗收;e)遷移;f)軟件退役。2.3.5維護過程2.4支持過程
支持過程是有關各方按他們的支持目標所從事的一系列相關活動集。支持過程有助于提高系統(tǒng)或軟件產品的質量。支持過程可由使用它們的組織來實施;或作為一種服務,由一個獨立的組織來實施;也可作為項目的一項規(guī)定內容,由客戶來實施。
包括8個過程:文檔過程、配置管理過程、質量保證、驗證過程、確認過程、聯(lián)合評審、審計過程、問題解決等。2.4.1文檔過程
文檔過程是一個記錄由某一過程或活動所產生信息的過程。
包括4個活動:a)過程實現(xiàn);
b)設計和開發(fā);
c)制作;
d)維護。
2.4支持過程成功實施文檔過程的結果是:a)制定了標識軟件產品或服務的生存周期中所要產生的文檔之策略;b)標識了編制軟件文檔的標準;c)標識了由過程或項目產生的文檔;d)對全部文檔的內容和目的進行了規(guī)定、評審和批準;e)根據(jù)已標識的標準,制作了可用的文檔;f)按定義的準則維護了文檔。成功實施文檔過程的結果是:2.4.2配置管理過程配置管理過程是應用管理上的和技術上的規(guī)程來支持整個軟件生存周期的過程,主要涉及:標識、定義系統(tǒng)中的軟件項;控制軟件項的修改和發(fā)布;記錄和報告軟件項的狀態(tài)和修改請求;保證軟件項的完備性、一致性和正確性;以及控制軟件項的貯存、處理和交付??梢娫撨^程的目的是建立并維護一個過程或一個項目的所有工作產品的完整性,使它們對相關團體而言均是可用的。注:當該過程用于其他軟件產品或實體時,應對所提及的“軟件項”要作相應的解釋。該過程包括以下活動:a)過程實現(xiàn);b)配置標識;c)配置控制;d)配置狀態(tài)統(tǒng)計;e)配置評價;f)發(fā)布管理和交付。2.4.2配置管理過程成功實施該過程的結果是:a)制定了配置管理策略;b)標識并定義了由過程或項目所產生的全部工作產品/項,并形成基線;c)對工作產品/項的修改和發(fā)布,進行了控制;d)為對各相關方均是可用的,做了必要的修改和發(fā)布;e)記錄并報告了工作產品/項的狀況和修改請求;f)確保了每一軟件項的完備性和一致性;g)對每一軟件項的存儲、處置和交付進行了控制。成功實施該過程的結果是:2.4.3質量保證過程質量保證過程是為項目生存周期內的軟件過程和軟件產品提供適當保障的過程,目的是使它們符合所規(guī)定的需求,并遵循已建立計劃。為了避免產生偏見,實施質量保證的人員不能是直接負責軟件產品開發(fā)的人員,并應在組織上給予獨立的權限。質量保證可以使用其他支持過程(如驗證、確認、聯(lián)合評審、審核和問題解決等過程)的結果。質量保證過程包括以下活動:a)過程實現(xiàn);b)產品保證;c)過程保證;d)質量體系保證。2.4.3質量保證過程引子扁鵲論醫(yī)病情越早被發(fā)現(xiàn),治療就越容易,病人受到的損害也就小。魏文王問名醫(yī)扁鵲說:“你們家兄弟三人,都精于醫(yī)術,到底哪一位最好呢?”
扁鵲答說:“長兄最好,中兄次之,我最差。”
文王再問:“那么為什么你最出名呢?”
扁鵲答說:“我長兄治病,是治病于病情發(fā)作之前。由于一般人不知道他事先能鏟除病因,所以他的名氣無法傳出去,只有我們家的人才知道。我中兄治病,是治病于病情初起之時。一般人以為他只能治輕微的小病,所以他的名氣只及于本鄉(xiāng)里。而我扁鵲治病,是治病于病情嚴重之時。一般人都看到我在經(jīng)脈上穿針管來放血、在皮膚上敷藥等大手術,所以以為我的醫(yī)術高明,名氣因此響遍全國?!?/p>
文王說:“你說得好極了?!币硬∏樵皆绫话l(fā)現(xiàn),治療就越容易,病人受到的損害也就小。從TQM(全面質量管理)開始,過程成為提高產品質量的另一重要手段技術并非提高質量的唯一出路TQM的思想好的過程導致好的產品缺陷越早發(fā)現(xiàn)、越早修改,就越經(jīng)濟制定并實施好的過程,預防缺陷的產生,盡早的排除缺陷一九五零年美國統(tǒng)計學家愛德華茲.戴1111111111明出席東京的一個晚宴,并發(fā)表了《關于如何解決日本戰(zhàn)后的經(jīng)濟問題》的演講。他指出,質量管理并不是從生產流程末端的產品瑕疵檢查才開始的,而是貫穿于整個生產過程的各個環(huán)節(jié),需要從供應商到最普通的車間工人等所有人的積極合作。并且鄭重承諾,如果日本公司采用他的建議,那么他們的產品在五年內達到世界級水準。從TQM(全面質量管理)開始,過程成為提高產品質量的另一重成功實施該過程的結果是:a)制定了實施質量保證的策略;b)產生并維護了質量保證的證據(jù);c)標識并記錄了問題和/或與協(xié)定需求不符合的內容;d)驗證了產品、過程和活動與適用的標準、規(guī)程和需求的依從性。成功實施該過程的結果是:2.4.4驗證過程
驗證過程是一個確定某項活動的軟件產品是否滿足在以前的活動中施加于它們的需求和條件的過程。該過程的目的是:證實一個過程和/或項目的每一軟件工作產品和/或服務恰當?shù)胤从沉艘岩?guī)定的需求。驗證過程可應用于供應、開發(fā)、運行或維護等過程。該過程可以由來自同一組織一個人或多個人來實施,也可以由來自另一組織的人員來實施。在由一個獨立于供方、開發(fā)者、操作者或維護者的組織來執(zhí)行該過程的情況下,該驗證過程就稱為獨立的驗證過程。該過程包括以下活動: a)過程實現(xiàn); b)驗證。2.4.4驗證過程其中活動:驗證包括以下任務:(1)合同驗證。其中應考慮下面列出的準則:供方具有滿足需求的能力;需求一致并覆蓋了用戶的需要;規(guī)定了可處理需求變更和處理問題蔓延的規(guī)程;規(guī)定了各方之間進行接口和合作的規(guī)程及其范圍,包括所有權、許可權、版權和保密性;規(guī)定了符合需求的驗收準則和規(guī)程。注:該活動可用于合同評審。(2)過程驗證。其中應考慮下面列出的準則:項目規(guī)劃的需求是足夠的、及時的;為項目所選擇的過程是可行的、已實現(xiàn)的,是按計劃執(zhí)行的,并是符合合同的;用于項目過程的標準、規(guī)程和環(huán)境是滿意的;根據(jù)合同要求,為項目配備了經(jīng)過培訓的人員。其中活動:驗證(3)需求驗證。其中應考慮下面列出的準則:系統(tǒng)需求是一致的、可行的且是可測試的;根據(jù)設計準則,系統(tǒng)需求被適當?shù)胤峙浣o了硬件項、軟件項和手工操作;軟件需求是一致的、可行的且是可測試的,并準確地體現(xiàn)了系統(tǒng)需求;通過適當嚴格的方法表明,有關安全保密性和關鍵性的軟件需求是正確的。(4)設計驗證。其中應考慮下面列出的準則:設計是正確的、與需求一致并可追蹤到需求;設計實現(xiàn)了適當?shù)氖录蛄?、輸入、輸出、接口、邏輯流,實現(xiàn)了按時和規(guī)模預算的分配以及錯誤定義、問題隔離及恢復;可以依據(jù)需求導出所選擇的設計;通過適當嚴格的方法表明,設計正確地實現(xiàn)了安全保密性以及其他關鍵性的需求。(3)需求驗證。其中應考慮下面列出的準則:(5)編碼驗證。其中應根據(jù)下面列出的準則:編碼可追蹤到設計和需求,是可測試的和正確的,并且符合需求和編碼標準;編碼實現(xiàn)了適當?shù)氖录樞?、一致的接口、正確的數(shù)據(jù)和控制流、完備性、恰當?shù)陌撮g和規(guī)模預算的分配、錯誤定義、問題隔離和恢復;可以由設計或需求導出所選擇的編碼;通過適當嚴格的方法表明,編碼正確地實現(xiàn)了安全保密和其他關鍵性的需求。(6)集成驗證。其中應考慮下面列出的準則:每個軟件項的軟件構件和軟件單元已被完整的且正確的集成到該軟件項中;系統(tǒng)的硬件項、軟件項和手工操作已被完整的且正確的集成到該系統(tǒng)中;已根據(jù)集成計劃執(zhí)行了相應的集成任務。(5)編碼驗證。其中應根據(jù)下面列出的準則:(7)文檔驗證。其中應考慮下面列出的準則:
a)文檔是充分的、完備的和一致的;
b)文檔制訂是及時的;
c)文檔的配置管理遵循了規(guī)定的規(guī)程。成功實施驗證過程的結果是:制定并實現(xiàn)了驗證策略;標識了驗證所有要求的軟件工作產品的準則;執(zhí)行了所要求的驗證活動;標識并記錄了缺陷;給出了對顧客和其他相關方可用的驗證活動的結果。(7)文檔驗證。其中應考慮下面列出的準則:2.4.5確認過程確認過程是一個確定需求和最終的、已建成的系統(tǒng)或軟件產品是否滿足特定預期用途的過程。該過程的目的是:證實對軟件工作產品特定預期使用的需求已予實現(xiàn)。該過程可以作為開發(fā)過程中軟件驗收支持活動的一個部分來執(zhí)行。該過程可以由來自同一組織一個人或多個人來實施,也可以由來自另一組織的人員來實施。在由一個獨立于供方、開發(fā)者、操作者或維護者的組織來執(zhí)行該過程的情況下,該確認過程就稱為獨立的確認過程。該過程包括以下活動: a)過程實施; b)確認。2.4.5確認過程其中活動:確認包括以下任務:(1)為了對測試結果進行分析,準備所選擇的測試需求、測試用例和測試規(guī)格說明。(2)確保這些測試需求、測試用例和測試規(guī)格說明體現(xiàn)了特定預期用途的特殊需求。(3)進行(1)、(2)中確定的測試,一般包括:a)強度、邊界和異常輸入的測試;軟件產品隔離錯誤影響測試以及使錯誤影響最小化能力的測試,即:在失效時,測試該軟件產品是否能得體降級;b)在過載、邊界和異常條件下,測試該軟件產品是否能向操作者提出協(xié)助請求;
c)代表用戶使用該軟件產品成功完成其預期任務的測試。(4)確認軟件產品滿足它的預期用途。(5)在目標環(huán)境的選定區(qū)域中,適當?shù)貙υ撥浖a品進行測試。其中活動:確認注:確認可使用除了測試之外的其他方法,例如,分析、建模、模擬等。成功實施確認過程的結果是: a) 制定并實現(xiàn)了確認策略; b) 標識了確認所有要求的工作產品的準則; c) 執(zhí)行了要求的確認活動; d) 標識并記錄了問題; e) 提供了所開發(fā)的軟件工作產品適合于其預期用途的證據(jù); f) 給出了對顧客和其他相關方可用的確認活動的結果。關于其他支持過程,例如聯(lián)合評審過程、審計過程、問題解決過程等,可參閱相關標準。注:確認可使用除了測試之外的其他方法,例如,分析、建模、模擬2.4.6聯(lián)合評審過程聯(lián)合評審過程是評價項目的某個活動或階段的執(zhí)行情況和產品是否合適的過程。它可以由任意兩個合作伙伴所使用,由其中一方評審另一方。2.4.7審計過程審計過程的目的是確定遵照需求、計劃合同的程度。審計可由任何兩個合作伙伴使用,由其中一方審計另一方的軟件產品或活動。2.4.8問題解決過程問題解決過程是一個用于分析和排除在開發(fā)、運行、維護和其他過程中發(fā)現(xiàn)問題或不一致的過程。其目的是提供一種適時的、可信賴的并編成文檔的手段,以保證分析和排除所有的問題并指明各種傾向。2.4.6聯(lián)合評審過程2.5組織過程
是指那些與軟件生產組織有關的過程。
包括7個過程:a)管理過程;b)基礎設施過程;c)改進過程;d)人力資源過程;f)資產管理過程;g)復用程序管理過程h)領域軟件工程過程。2.5.1管理過程
管理過程是軟件生存周期過程中管理者所從事的一系列活動。管理人員負責產品管理、項目管理和過程(例如,獲取、供應、開發(fā)、運作、維護或支持過程)任務的管理。
管理過程包含以下活動:
1)啟動與范圍定義;
2)規(guī)劃;
3)測量;
4)執(zhí)行和控制;
5)評審和評估
6)結束處理。2.5組織過程成功實施管理過程的結果是:a)定義了那些要管理的過程和活動的范圍;b)標識了為達到這些過程目的必須執(zhí)行的活動和任務;c)對達到過程目標以及可用的資源和限制條件的可行性,進行了評估;d)建立了執(zhí)行已標識那些活動和任務所需要的資源和基礎設施;e)標識了活動并實施了任務;f)對定義的那些活動和任務的執(zhí)行,進行了監(jiān)督;g)對過程活動所產生的工作產品進行了評審,并對相應的結果進行了分析和評估;h)在過程的執(zhí)行偏離已標識的活動和任務,或未能達到其目標時,采取了修改過程執(zhí)行的措施;i)有證據(jù)地闡明了該過程已成功地達到了它的目的。成功實施管理過程的結果是:2.5.2改進過程
改進過程是管理人員從事的一組活動和任務,其目的是:建立、評價、測量、控制和改進軟件生存周期過程。主要活動:
a)過程建立;
b)過程評價;
c)過程改進。成功實施該過程的結果是:為組織開發(fā)了一組可用的過程資產;為了確定在達到組織目標中過程實施有效性的程度,定期地對組織的過程能力進行了評價,在已有的基礎上,為了達到該組織的業(yè)務目標,改進了過程的有效性和效率。2.5.2改進過程2.5.3基礎設施過程(基礎設施包括:硬件、軟件、工具;技術、標準以及開發(fā)所需的其他設施)是建立、維護任何其他過程所需的基礎設施的過程。主要活動:a)過程實現(xiàn);b)建立基礎設施;c)維護基礎設施。成功實施該過程的結果是:為支持組織單元內的過程,定義了基礎設施需求;標識并規(guī)約了基礎設施要素;獲取了基礎設施要素;實現(xiàn)了基礎設施要素;維護了穩(wěn)定的和可靠的基礎設施。2.5.3基礎設施過程(基礎設施包括:硬件、軟件、工具;2.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 泰州防水涂裝施工方案
- 2025年中考語文滿分作文的精彩構思:標題+開頭段+主體段+結尾段
- 廣東省深圳實驗學校高中部2024-2025學年高二上學期期末考試英語試題【含答案】
- 回填基坑施工方案范本
- 樹木粉碎施工方案
- 2025年液晶電視維修試題及答案
- 6年級科學小發(fā)明
- coqh2-細胞色素c還原酶
- cia年檢繼續(xù)教育積分填報流程
- cascode電流鏡環(huán)路增益
- GB/T 10895-2004離心機分離機機械振動測試方法
- 805不讀書-不吃苦-你要青春干嘛
- 研究生實驗報告模板(word可修改)
- 部編版語文市級公開教學講座《口語交際》培訓課件
- 高中英語-新外研版必修一unit5-The-Monarchs-Journey-公開課reading課件
- 建設項目用地預審與選址意見課件講解
- DB44∕T 1049-2012 物業(yè)服務 綠化養(yǎng)護檢查規(guī)范
- 腹膜透析治療的護理-課件資料
- 國家開放大學《調劑學(本)》形考任務1-4參考答案
- 幼兒園小班繪本:《一步一步_走啊走》 PPT課件
- 《基礎和聲學》試習題庫(6套答案)
評論
0/150
提交評論