軟件生存期過程(1)
軟件生存期過程(1)
6 獲取過程
獲取過程包含需方的活動和任務。此過程從定義軟件產品或服務的獲取需求開始。接著就是準備并公布標書、選擇供方和管理獲取過程,直到系統的驗收。有這種需求的機構可以叫做擁有者。該擁有者可以就任一項或全部獲取活動與某機構簽訂合同,該機構將根據獲取過程開展相應的活動。本章中的需方可以是擁有者或者是代理人。
此過程含有下述活動:
a.開始和范圍定義;
b.招標的準備;
c.合同的準備、談判及修改;
d.對供方的監督;
e.驗收和完成。
6.1 開始和范圍定義
本項活動含有下述任務:
6. 1.1 需方將認定獲取、開發或改進一個軟件產品(該軟件產品可能是一個系統的一部分)或服務的概念或需求,并依此開始該獲取過程。
6.1.2 需方將詳細地定義系統需求,此需求在已存在的限制條件下開發系統是可行的。
6.1.2.1 該系統需求定義最好包括與設計、測試和遵守標準及開發過程有關的關鍵性、安全性和保密性要求。
6.1.2.2 該系統需求將遵循開發過程(第8章)定義并形成文檔。
6.1.3 如果需方不能定義系統需求,則將制訂一個定義它們的計劃。這個計劃將指定提出這些需求的一個機構,最好包括一一些活動,如進行可行性研究、制作原型和模型。
6.1.4 系統需求一旦定義,需方將依據風險分析來考慮獲取系統所能采用的方案。這些方案包括:
a.購買能滿足需求的現貨產品;
b.在內部開發產品或得到服務;
c.通過合同開發產品或得到服務;
d.上述a、b、c條的結合;
e.提高現有的系統、產品或服務。
6.1.5 當要獲得一個現貨產品的時候,需方將保證能滿足下述條件:
a.該軟件滿足它的需求;
b.有必須的文檔;
c.可滿足所有權和使用權;
d. 有未來的產品支持計劃。
6.1.6 需方將制訂一個獲取計劃。此計劃要對系統需求作出定義,并定義對所計劃的系統的使用、將執行的合同的類型、所涉及的機構的責任、將使用的支持的概念、所考慮到的風險以及管理這些風險的辦法。并將該計劃寫成文檔。
6.1.7 需方將定義系統的驗收策略和準則,并將其寫成文檔。
6.2 招標的準備
此項活動含有下述任務:
6.2.1 需方將制作一份系統獲取需求的文檔(即標書),其內容視第6.1.4條中所選的獲取選擇方案而定。該系統獲取文檔最好包括:
a.系統需求;
b.工作描述;
c.投標者須知;
d.產品或服務清單;
e.合同條款;
f.子合同條款;
g.技術限制(例如目標環境)。
6.2.2 需方將決定本標準的哪些過程、活動和任務適合它的項目并對其進行適當的剪裁。需方將特別指明可以使用的支持過程(第11章)和它們的執行機構,這樣供方就可以在它們的建議中定義達到每個特定支持過程的方法。
6.2.3 系統的獲取文檔將定義合同的里程碑,以便作為對獲取的監督(見第 11. 3條)的一部分將檢驗和審計供方的進度。
6.2.4 系統的獲取需求最好交給實施獲取活動任務的機構。
6.3 合同的準備、談判和修改
此項活動由下述任務組成:
6.3.1 需方最好建立一個選擇供方的規程,其中包括建議的評價準則和對需求的依從程度。
6.3.2 需方最好在對供方的建議、能力以及需要考慮的其它因素進行評價的基礎上選擇一個供方。
6.3.3 需方可以與其它各方一道為項目而剪裁本標準。但是,在需方與其它各方之間達成協議時,最后的剪裁決定將由需方做出。
6.3.4 然后,需方將準備就一項合同與供方進行談判。談判中提出系統的需求、成本、提供產品或服務的日程。該合同將提及與可重復使用的現貨產品有關的產權、使用權和所有權。
6.3.5 在合同的執行期內,需方將通過與供方(即控制合同變化的另一當事方)進行談判來控制合同的變化。應當研究合同的變化對項目計劃、成本、質量和日程的影響。
6.4 對供方的監督
此項活動由下述任務組成:
6.4.1 需方將按照合同所定范圍監督和評價供方的技術和進度,其中包括質量和成本。所用的手段最好適合于獲得的類型并包括下述活動,例如非正式的會面、合同所要求的評審、審計,以及(獨立的)驗證和確認。獨立的驗證和確認將分別根據第 11.3和11.4條進行。
6.4.2 需方最好與供方合作以便及時地提供全部必要的信息和解決尚未解決的問題。
6.5 驗收和完成
此項活動含有下述任務:
6.5.1 需方將根據已定義的策略和準則為驗收做好全部必要的準備。準備最好包括對測試用例、測試數據、測試過程和測試環境的準備。
6.5.2 需方將對交付的產品或服務進行驗收評審和驗收測試,當符合所有的驗收條件之后,從供方處驗收該產品或服務。驗收過程應符合第6.1.6條中的規定。
6.5.3 在驗收之后,需方最好按照第 11.2條采取交付產品的配置管理。
7 供應過程
此過程含有供方的活動和任務。
此過程的開始方法可以有兩種,-是決定準備一項建議以應答需方的標書(RFP);二是就提供一個含有軟件的系統(或系統的一個部件、一個產品或一項服務)與需方簽訂合同或協議。接著就是規定為了管理和保證這個項目所需要的步驟和資源,其中包括制訂項目計劃和實施計劃,直至向需方交付系統、產品或提供服務。 供方按照第5章來管理這個過程。
此過程含有下述活動:
a. 開始;
b.準備投標;
c.簽訂協議;
d.編制計劃;
e.實施和控制;
f.評審和評價;
g.交付和完成。
7.1 開始
此項活動含有下述任務:
7.1.1 供方評審標書(RFP)中的需求,與公司的方針及其它規則相對照。
7.1.2 供方最好對是否投標或是否接受合同作出決定。
7.2 準備投標
此項活動含有下述任務: 供方最好定義和準備一份投標書。
7.3 簽訂協議
此項活動含有下述任務:
7.3.1 供方應當與需方就提供系統、產品或服務進行談判并簽訂合同。
7.3.2 作為修改控制機制的一部分,供方可以請求修改合同。
7.4 編制計劃
此項活動含有下述任務:
7.4.1 為了保證交付的系統、產品或服務的質量,供方應當全面評審合同中的系統獲取需求,以確定管理和保證項目的框架。
7.4.2 供方應當確定或選擇與項目的范圍、規模和復雜性相適合的軟件生存周期模型。應當把從本標準中選出的過程、活動和任務影射到該生存周期模型中。該生存周期模型應當包括可使用的開發環境,其中包括標準、方法和工具等。
7.4.3 供方應當規定管理和保證此項目的計劃需求。這種規定最好包括對資源的需求和需方的介入。
7.4.4 計劃需求一旦規定,供方應當根據風險分析,為開發該產品或提供該服務選擇方案。
可供選擇的方案有:
a.利用內部資源開發產品或提供服務;
b.用子合同方式開發產品或提供服務;
c.從內部或外部來源獲得現貨產品;
d.上述a、b二條結合。
7.4.5 供方應當以所計劃的需求和第7.4.4條中規定的可選方案為基礎制定項目管理計劃,并將其寫成文檔。
在這些計劃中應當規定下述事項:
a. 項目的組織機構,以及包括外部機構在內的每個機構的權利和責任;
b.開發環境,包括測試環境。庫、設備、儀器以及工程標準、步驟和工具;
c.生存期過程和活動的工作細目的結構,其中包括可交付的產品,與任務有關的經費預算、人員。物理資源、軟件的規模以及時間進度;
d.系統的質量需求管理。如果需要,可以另外制訂質量保證計劃;
e.系統安全和保密的關鍵需求管理。如果需要,另外制訂安全和保密計劃;
f.分包商的管理,其中包括對分包商的選擇。如果選擇了分包商,還包括分包商一需方的介入;
g.需方的介入,即按合同要求進行的評審和審計(見第11.3條)、非正式的會面、報告、修改和變更的實施、批準、驗收、對設施的使用等;
h.驗證和確認(見第11.4條),規定中應包括與獨立的驗證和確認機構接觸的方法;
i.質量保證(見第 11.5條);
j.風險管理,此項管理包括對項目的潛在技術、成本和進度諸風險領域的管理;
k.保密方針,即在每個項目組織層次上有關“需要知道”和“接觸信息”的規則;
l.規則所要求的批準、證書、專有權利等; m.制定計劃、跟蹤和報告的方法;
n.人員培訓(見第 11. 7條)。
7.5 執行和控制
此項活動包括下述任務:
7.5.1 供方應當實施和執行使第7.4條制訂的項目計劃。
7.5.2 供方應當分別根據開發過程(第8章)、操作過程(第9章)或維護過程(第10章)開發、操作或維護軟件。
7.5.3 供方應當在合同所定的整個生存周期內監督和控制項目產品或服務的進展和質量。這應當是一個連續的、反復進行的任務,它應當提供:
a.監督技術性能、成本和進度的進展情況,報告項目的狀況;
b.問題的識別、記錄、分析和解決。
7.5.4 供方應當管理和控制分包商,向其傳達全部必要的合同需求,以保證交給需方的所有的產品或服務都符合主合同的要求。
7.6 評審和評價
此項活動包括下述任務:
7.6.1 在適當的情況下,供方最好根據合同進行評審活動、與需方進行接觸和通信。
7.6.2 供方應當進行或支持非正式的會面、驗收評審和驗收測試,按照合同和項目計劃的規定與需方一起進行合同所要求的評審和正式的審計。審計應當按照第11。3條進行。
7.6.3 供方應當向需方提供關于評價、評審、審計、測試、改正工作和解決問題的報告。
7.6.4 為了按照合同和項目計劃的規定評審產品或服務,供方應當讓需方使用供方和分包商的設備。
7.6.5 供方應當按照合同和項目計劃的規定,與獨立的驗證和確認機構或測試機構(見第11.4條)進行接觸。
7.6.6 供方應當根據11.5條實施項目的質量保證。實施軟件的質量保證時可以用ISO 9003—87或其它類似的指南。
7.7 交付和完成
此項活動包括下述任務:
7.7.1 供方應按照合同的規定交付系統。
7.7.2 供方應當對已交付的系統向需方提供支持。
7.7.3 供方應當考察需方對已交付的系統是否滿意。
8 開發過程
開發過程包括開發者的活動和任務。此過程包括需求分析、設計、編碼、集成、測試、軟件安裝和驗收等活動。完成下面所列出的全部活動。按照合同,軟件開發者的責任從軟件需求分析開始,以軟件鑒定測試終止。但是,通常軟件是作為整個系統的一部分實現的。軟件的需求分析與整個系統需求分析、系統設計有關,故軟件開發者有可能要參加系統需求分析。系統設計,或從系統需求分析、系統設計中獲取必要的信息。軟件鑒定測試完成后,還要把軟件集成到整個系統中去。所以,本過程列出了系統的開發過程所包含的所有活動。軟件開發者按照合同的規定來確定此過程所包含的活動。開發者也可以完成需方所要求的其它活動。
此過程由下述活動組成:
a.建立過程;
b.系統需求分析;
c.系統設計;
d.軟件需求分析;
e.軟件體系結構設計;
f.軟件的詳細設計;
g.軟件編碼;
h.軟件集成;
i.軟件鑒定測試;
j.系統集成;
k.系統鑒定測試;
l.驗收所需要的安裝和支持。
8.1 建立過程
此項活動含有下述任務:
8.1.1 開發者應當將開發過程的活動映射到為軟件項目所建立的生存周期模型中。如果沒有建立一個生存周期模型,就應當建立一個。所選擇的活動可以是重疊的或相互有關聯的,而且也可以反復交替地一實施。
8.1.2 開發者應當實施第11章指定的支持過程,這些過程是按照第6.2.2條的決定支持開發活動所必須的。
8.1.3 如果在合同中沒有約定,開發者應當選擇、剪裁和使用適當的內部的標準、方法、步驟和計算機編程語言,這些是由開發者的組織為了實施開發活動和支持各種過程已用文檔建立起來的。
8.1.4 開發者應當制訂進行開發過程的活動計劃。該計劃應當包括與開發和鑒定的全部需求(包括安全和保密需求)有關的特定的標準、方法、行為和責任。如果需要,要分別制訂計劃。這些計劃應當形成文檔并得到實施。
8.1.5 在軟件的開發或維護中可以使用不交付項。但是,應當保證:
a.在可交付軟件交給需方之后,它的操作和維護與這些不交付項無關;
b.這些項變成可交付項。
8.2 系統需求分析
此項活動含有開發者應當執行或支持的下述任務:
8.2.1 如第6.1和6.2條所規定,應當對獲取和系統的要求進行分析,以建立系統需求。系統需求應當說明:系統的功能和性能;安全、保密、人機工程、接口、操作和維護需求;設計限制和鑒定的要求。這些系統需求應當寫成文檔。
8.2.2 應當對這些系統需求進行評價,使其包括下述準則:可跟蹤性;與獲取及系統要求的一致性;可測試性;以及設計、操作和維護的可行性。
8.3 系統設計
此項活動含有開發者應當執行和支持的下述任務:
8.3.1 應當建立一個高層的系統體系結構。應當在系統的體系結構中體現系統的需求,該系統體系結構要表現出系統的內部結構以及硬件、軟件和人工操作的配置。應當保證:系統需求已完全分配給硬件配置項(HCI)、軟件配置項(SCI)和人工操作。分配給 HCI、 SCI和人工操作的系統體系結構和系統需求要寫成文檔。
8.3.2 應對HCI、SCI和人工操作的系統體系結構和需求進行評價,使其包括下述準則:可跟蹤性、與系統需求的一致性、設計和所用標準恰當,以及操作和維護的可行性。
8.4 軟件需求分析
對于每個SCI,此項活動含有開發者應當執行的下述任務:
8.4.1 開發者應當確定各種需求并將其寫成文檔,其中包括與第2.5條相一致的質量特性規格說明(可操作性、可靠性、可用性、有效性、可維護性和可移植性)。
該文檔描述:
a.功能和能力規格說明,其中包括性能、物理特性、運行軟件的環境條件;
b.用戶文檔;
c.安全規格說明,其中包括與操作和維護的方法、環境影響和人員傷害有關的說明;
d.保密規格說明,其中包括對敏感性信息或資料的危害有關的說明;
e.人機工程和人一機規格說明,其中包括與人工操作、人機對話、對人員的限制有關的規格說明,以及那些對于人的錯誤和能力很敏感的、需要人集中注意力的領域的說明;
f.處理器、存儲設備或數據通道所用的硬件處理和資源儲備的規格說明;
g.數據定義和數據庫的需求;
h.已交付軟件在操作和維護現場上的安裝和驗收的需要;
i.用戶操作和執行的需求;
j.用戶維護需求。
8.4.2 開發者應當確定SCI的外部接口的需求并將其寫成文檔。
8.4.3 開發者應當對SCI的鑒定要求寫成文檔。
8.4.4 開發者應當對需求作出評價,使其包括下面指出的準則:
a.對系統需求和系統設計的可跟蹤性;
b.與系統需求的外部一致性;
c.各種軟件需求之間的內部一致性;
d. 軟件需求的可測性;
e.軟件需求的測試范圍;
f.軟件設計、操作和維護的可行性。
8.4.5 開發者應當依據第11.3條進行合同所要求的評審,以決定軟件需求的完善和恰當。當評審完成時,就應當建立SCI需求的基線。
8.5 軟件體系結構設計
對于每個SCI,此項活動含有開發者應當執行的下述任務:
8.5.1 開發者應當把SCI的工程需求轉變為一個體系結構,該體系結構應描述它的頂層結構和定義它的主要部分。它應當保證此項工程和SCI的鑒定要求已完全分配給了各個部分,并對其進行了細化以便進行詳細設計。應當建立SCI體系結構的文檔。
8.5.2 開發者應當為SCI外部接口的設計、SCI的各軟件部分之間的設計建立一個頂層的設計文檔。
8.5.3 開發者應當為數據庫建立一個頂層的設計文檔。
8.5.4 開發者應當評價SCI的體系結構、接口和數據庫的設計,使其包括下面指出的各項:
a. 對SCI需求的可跟蹤性;
b.與SCI需求的外部一致性;
c.各部分需求之間的內部一致性;
d.所使用的設計方法和標準是否恰當;
e.詳細設計、操作和維護的可行性。
8.5.5 開發者應當依據第11.3條進行合同所要求的評審,以決定分配給各部分的需求和 SCI體系結構設計方法的完善和恰當。
8.6 軟件的詳細設計
對于每個SCI,此項活動含有開發者應當執行的下述任務:
8.6.1 開發者應當詳細設計SCI的每個軟部件。應當盡量地將各個軟部件詳細劃分為含有軟件單元的較低的層次,以便進行編碼、編譯和測試。應當保證該軟件的需求已完全分配給從軟部件到軟件單元的整個軟件。應當把該詳細設計寫成文檔。
8.6.2 開發者應當寫出與SCI的外部接口、各軟部件之間和各軟件單元之間的詳細設計文檔。接口的詳細設計應當足夠詳細以便于編碼。
8.6.3 開發者應當寫出數據庫的詳細設計文檔。
8.6.4 開發者最好寫出軟件用戶手冊的最初版本。
8.6.5 開發者應當為測試軟件單元規定測試要求和時間進度,并將其寫成文檔。測試要求中最好包括在軟件需求限定上的重點軟件單元。
8.6.6 開發者應當為軟件的集成規定測試要求和時間進度,并將其寫成文檔。
8.6.7 開發者應當評價軟件的詳細設計和測試要求,使其包括下面的準則:
a. 對SCI需求的可跟蹤性;
b.與體系結構設計的外部一致性;
c.各部件和單元的需求之間的內部一致性;
d.所使用的設計方法和標準是否恰當;
e.測試、操作和維護的可行性。
8.6.8 開發者應當依據第11.3條進行合同所要求的評審,以決定分配給各個部分和單元的需求以及 SCI詳細設計方法是否完善和恰當。
8.7 軟件編碼
對于每個SCI,此項活動含有開發者應當執行的下述任務:
8.7.1 開發者應當進行下述開發并建立文檔:
a.開發每個軟件單元和數據庫;
b.為測試每個軟件單元和數據庫而開發的測試過程和數據;
c.為進行軟件集成而開發的測試過程和數據。
8.7.2 開發者應當測試每個軟件單元和數據庫,以保證它們符合需求。測試結果應當寫成文檔。
8.7.3 必要時,開發者應當更新軟件的用戶手冊。
8.7.4 開發者應當評價軟件的代碼和測試結果,使其包括下面的準則:
a. 對SCI需求和設計的可跟蹤性;
b.與 SCI需求和設計的外部一致性;
c.各單元需求之間的內部一致性;
d.各單元的測試范圍;
e.使用的編碼方法和標準是否恰當;
f.集成、操作和維護的可行性。
8.8 軟件集成
對于每個SCI,此項活動含有開發者應當執行的下述任務:
8.8.1 開發者應當制訂計劃把各個軟件單元和軟部件集成為SCI。該計劃應當包括測試要求、步驟、數 據、責任和時間表。該集成計劃應當寫成文檔。
8.8.2 在依據集成計劃開發集合體時,開發者應當集成軟件的單元、部件和進行測試。應當保證每個集 合體都能滿足SCI的需求,并且在集成活動結束時形成完全集成的SCI。集成和測試的結果應當寫成文 檔。
8.8.3 必要時,開發者應當更新用戶手冊。
8.8.4 為了進行軟件的鑒定測試,開發者應當為每個SCI開發寫出一個完整的測試集、測試用例(輸 入、輸出、測試準則)和測試步驟。開發者應當保證集成后的SCI可以進行軟件鑒定測試。
8.8.5 開發者應當對集成計劃、設計、代碼、測試、測試結果和用戶手冊進行評價,使其包括下面的準 則:
a. 對 SCI需求的可跟蹤性;
b.與 SCI需求的外部一致性;
c.內部一致性;
d.SCI需求的測試范圍;
e.使用的測試方法和標準是否恰當;
f.是否符合預期的結果;
g.鑒定測試、操作和維護的可行性。
8.8.6 開發者應當依據第11.3條進行合同所要求的評審,以確定測試過程的完善和適當,并確定已經 做好軟件鑒定測試的準備。
8.9 軟件鑒定測試
對于每個SCI,此項活動含有開發者應當執行的下述任務:
8.9.1 開發者應當依據為 SCI確定的鑒定要求進行鑒定測試。應當保證對每項要求進行符合測試。應將鑒定測試結果寫成文檔。
8.9.2 必要時,開發者應當更新用戶手冊。
8.9.3 開發者應當對設計、代碼、測試、測試結果和用戶手冊進行評價,使其包括下面的準則:
a. 對SCI和系統需求的可跟蹤性;
b.與 SCI和系統需求的外部一致性;
c.內部一致性;
d.SCI和系統需求的測試范圍;
e.是否符合預期結果;
f.操作和維護的可行性。
8.9. 4 開發者應當依據第 11. 3條支持對 SCI的功能性配置審計(FCA)和物理配置審計(PCA)。在 FCA時,應當保證SCI的測試成功并符合需求,而且用戶手冊中充分描述SCI的操作和支持。在PC:A 時,應當保證SCI的設計和源碼完整并正確,反映了SCI的新技術。FCA和PCA的結果應當寫成文檔。如果同時開發硬件和軟件,FCA和PCA可以推遲到系統鑒定測試時進行。
8.9.5 在FCA和PCA成功地完成之后,開發者應當:
a.為系統集成、系統鑒定測試或適當時的安裝和驗收,更新和準備可交付的軟件;
b.為SCI的設計和編碼建立一個基線。
8.10 系統集成
此項活動含有開發者應當執行或支持的下述任務:
8.10.1 SCI應當與 HCI、人工操作和其它必要的系統一起集成到系統中去。當開發該集合體時,應當對照它們的需求進行測試。應當將集成和測試的結果寫成文檔。
8.10.2 應當為系統的每項已確定的需求進行系統鑒定測試開發一個完整的測試集、測試用例(輸入。輸出、測試準則)和測試步驟,并將其寫成文檔。開發者應當保證集成的系統已做好系統鑒定測試的準備。 8.10.3應當對集成的系統進行評價以使其包括下述準則:系統需求的測試范圍。、所使用的測試方法和標準是否恰當;是否符合預期結果;鑒定測試、操作和維護的可行性。
8.11 系統鑒定測試
此項活動含有開發者應當執行或支持的下述任務:
8.11.1 應當依據為系統建立的鑒定要求進行系統鑒定測試。應當保證每項系統需求都進行符合性測試,而且系統已做好交付準備。應當把鑒定測試的結果寫成文檔。
8.11.2 應當對系統進行評價以使其包括下述準則:系統需求的測試范圍;是否符合預期的結果;操作與維護的可行性。
8.11.3 本項需求不適用于已經進行過 FCA、PCA的 SCI。 SCI的 FCA和 PCA應當依據第 11.3條進行。在成功地完成FCA和PCA后,
a. 可交付的SCI應當更新并做好驗收安裝和支持的準備;
b.應當為每個SCI的設計和代碼建立基線。
8.12 驗收所需要的安裝和支持
此項活動含有下述開發者應當執行的任務:
8.12.1 開發者應當制定一個合同中指明的、在目標環境中安裝軟件的計劃。應當指出與軟件的安裝有關的必要的資源和信息并保證提供。開發者應當以適當的方式幫助需方得到與系統建立活動有關的信息。當所安裝的軟件替代了現有的系統時,開發者應當支持合同所要求的并行運行的活動。應當將安裝情況寫成文檔。
8.12.2 開發者應當依據安裝計劃安裝軟件。應當保證該軟件和數據庫能按照合同的規定初始化、執行和終止。應當把安裝情況及其結果寫成文檔。
8.12.3 開發者應當支持需方對軟件(或系統)的驗收評審和測試。驗收評審和測試應當考慮 FCA、 PCA、軟件鑒定測試和系統鑒定測試(如果進行系統鑒定測試)的結果。應當把驗收評審和測試的結果寫成文檔。
8.12.4 開發者應當按照合同的規定完成文檔和編碼并交付給需方。
8.12.5 開發者應當按照合同的規定向需方提供初始的和繼續的培訓和支持。
12 過程的建立、評價和改進
本章含有要建立、評價、測量、控制和改進軟件生存期過程的活動。
此項過程含有下述活動:
a. 過程建工;
b. 過程評價;
c. 過程改進。
12.1 過程建立
此項活動含有下述任務: 因為在業務活動中機構要具有獲取、供應、開發、操作、維護功能,所以,機構應當為這些活動建立一套過程。應當將這些過程以及它們在特殊情況下的應用寫成文檔,并寫進公司的出版物中。在適當的情況下,最好建立一個過程控制機制以開發、監督、控制和改進這些過程。
12.2 過程評價
此項活動含有下述任務: 最好制訂一個過程評價步驟,將它寫成文檔并使用它。最好能保存并維護評價記錄。
12.3 過程改進
此項活動含有下述任務: 最好用過程評價的結果來改進機構的過程。最好能更新過程的文檔,使其反映機構過程中的改進。
附錄A 剪裁過程(補充件)
本附錄定義為一個軟件項目剪裁本標準時所需要的基本活動和步驟。附錄B剪裁指南(參考件)是對剪裁本標準的要求的簡要說明。
本剪裁過程含有下述活動:
—指定項目的環境;
—輸入請求;
—選擇標準的單元;
—把剪裁決定和理由寫成文檔。
AI 指定項目的環境
此項活動含有下述任務:
應當指出將影響剪裁的項目環境的特性??赡艿奶匦允牵荷嬷芷谀P停划斍暗南到y生存周期階段; 系統和軟件的需求;機構所采用的方針、過程和策略;系統和軟件的規模、類型和關鍵性;所涉及的人數 和當事各方等。
A2 輸人請求
此項活動含有下述任務:
應當征求將要受剪裁影響的機構的請求并輸入。用戶、支持人員、簽訂合同的官員和潛在的投標人 最好參與剪裁。
A3 選擇標準的單元
此項活動含有下述任務:
A3.1 應當根據在AI和 A2中收集的數據,對照本標準的每一章,決定要執行本標準的哪些過程、活動和任務,要開發什么文檔,誰將負責等。
A3.2 本標準中,要求是用含有“應”、“應當”和“將”“將要”的句子來指明的。最好認真考慮在特殊項目 中是否把這些要求包括進去。要考慮的因素有(但不僅僅限于這些):風險、成本、時間進度、性能、規模、 關鍵性和人機界面。
A4 把剪裁決定和理由寫成文檔
此項活動含有下述任務:
應當把全部剪裁決定及做這些決定的理由寫成文檔。
附錄B 剪裁指南 (參考件)
同樣的項目是不存在的。在諸多的因素中,機構所采用的方針和步驟、獲取方法和策略、項目的規模和復雜性、系統需求和開發方法等因素影響著一個系統的獲取、開發、操作和維護的方式。本標準是為通用項目編寫的,以盡可能地適應各種變化。因此,為了降低成本和改進質量,最好針對具體項目剪裁本標準。項目的有關各方最好參與剪裁。
B1 通用的剪裁指南
本章提供與本標準有關的剪裁指南,但不詳述。圖BI示出剪裁過程。本章可用來為一個項目完成” 對本標準的第一級剪裁。本章是根據地區的用途實現剪裁。
B2 開發過程的剪裁
要特別注意開發過程(第8章),因為此過程可以為具有不同目的的不同機構所使用。作為此過程的第一級剪裁,建議進行以下活動。對于包含在系統內或集成到系統中的軟件:
a. 此過程中的全部12個活動最好都考慮;
b.最好區分開發者是否要完成或支持系統的活動。 獨立的、不是系統一部分的軟件可能不需要第8.2、8.3、8.10和8。11條中的用于系統的活動,但最好考慮其它的活動。
B3 與評價有關的活動的剪裁
與一個項目或一個過程的生存周期的某個階段有關的任何人都要對自己的或他人的產品或服務進行評價。該標準把這些評價分為下述五類。前四類評價與項目有關,第五類評價與過程有關。最好根據項目或過程的范圍、規模、復雜性和關鍵性適當地選擇和剪裁這些評價活動。把從這些評價中產生的問題、不符合之處和改進的報告反饋給改正過程(第11.6條)。
a. 過程內的評價(第5、6、7、8、、9和10章的評價任務)。由在此過程中執行指定任務的人員在他們的日?;顒又羞M行。
b.合同要求的評審和審計(第11.3條)。由需方和供方按照事先同意的時間表正式進行。
c.(獨立的)驗證和確認(第11.4條)。由需方、供方或獨立的第三方進行,根據項目對產品或服務進行不同程度的評價。此項評價并不代替其它種類的評價,只是其它評價的補充。
d.軟件質量保證(第11.5條)。由對開發該產品或實施該服務的直接責任人之外的人員進行獨立的質量保證。進行獨立的保證的目的是使產品或服務與合同的要求相符,并堅持已制訂的計劃。
e.過程建立、評價和改進(第12章)。這些活動由一機構實施,以對過程進行有效的管理和自我改進。這種評價活動與合同的要求無關。
B4 剪裁的考慮因素
本章中的各段指出了為此項目的關鍵特性在剪裁時要考慮的廣泛的因素。此處對這些考慮因素和特性不作詳述,只陳述目前的一些想法。
B4.1 機構所采用的方針
指出機構所采用的方針。例如關于計算機語言、安全和保密、硬件儲存需求、風險管理等等。 應當保留本標準中與機構的方針有關的章條。
B4.2 獲取策略
指出項目的獲取策略。例如合同的類型、多項合同、分包商和v&v構的介入、需方作為合同當事人介入的程度、對合同當事人能力的評價等等。 應當保留本標準中與這些策略有關的章條。
B4.3 支持的概念
指出支持的概念。例如需方或合同當事人預期應當支持的時間、變化的程度等。 如果軟件將有較長的支持壽命或預期有較大的改變,最好考慮全部的文檔需求。建議自動生成文檔。
B4.4生存周期模型
指出項目的生存周期模型。例如瀑布式、交互瀑布式、漸進式、積木式、預期的產品改進等。 所有的這些模型描述了可以有順序地、重復地或組合地完成的一些過程和活動。在這些模型中,本標準中的生存周期活動最好映射到所選擇的模型中。對于漸進式的、積木式的和預期的產品改進模型,項目的一個階段的輸出就是下一個階段的輸入。在這些情況下,最好在每項活動完成時提交文檔。
B4.5 所涉及的各方
指出此項目所涉及的當事各方。例如需方、供方、開發者、分包商、v&v機構、維護者和人員的數量。 與當事雙方之間(例如需方一開發者,供方一v&v機構等)有關的全部需求都要考慮。 涉及許多(幾十或幾百)人的大項目需要大量的管理性監督和控制。對于一個大項目,內部的、合同需求的和獨立的評價、評審、審計和檢測、數據收集等都是很重要的工具。對于小項目,這些控制可以是 多余的。
B4.6 生存周期的階段
指出系統的生存周期當前階段。例如需方的項目起動,供方的開發、維護等,例如下述情況: 需 方在提出或定義系統需求時,可能要對需求和設計進行可行性研究和原型制作,也可能要編寫原 型的軟件代碼,這些代碼在以后按照合同開發軟件時可能用到,也可能用不到;可能是開發系統需求和 最初的軟件需求,在這種情況下,第8章的開發過程可以作為開發指南使用,而不是作為需求使用;可能 不需要嚴格的鑒定和評價;合同所要求的評審和審計也可能不需要。 開發者在按照合同生產軟件的情況下,剪裁時最好考慮全部的開發過程(第8章)需求。 維護者要修改軟件和文檔,在考慮維護過程(第10章)時,開發過程(第8章)的各部分可以作為子 過程使用。
B4.7 系統的層次特性
指出系統的層次特性,例如子系統的數量和配置項等。 如果系統有許多子系統或配置項,最好謹慎地為每個子系統和配置項剪裁開發過程(第8章)。最好 考慮全部的接口和集成需求。
B4.8 軟件的層次特性
指出軟件的層次特性,例如軟件配置項(SCI)的數量,軟件的類型、規模和關鍵性,技術風險等。 如果軟件有許多SCI、部件或單元,最好謹慎地為每個SCI剪裁開發過程(第8章)。最好考慮全部 的接口和集成需求。
決定何種類型的軟件包括在內,因為不同類型的軟件可以需要不同的剪裁決定。例如:
a. 新開發的軟件??紤]全部的需求,特別是開發過程(第8章)。
b.照原樣使用現成的軟件。開發過程(第8章)可能是多余的。最好評價與該軟件有關的性能、文 檔、產權和未來的支持。
c.修改現有的軟件??梢詻]有文檔。最好依據關鍵性和所預期的未來的改變,通過維護過程(第 10章)來使用開發過程(第8章)。最好評價與該軟件有關的性能、文檔、產權和未來的支持。
d.包含在一個系統中的或集成進一個系統的軟件或固件。既然這種軟件是一個大系統的一部分,最好考慮開發過程(第8章)中與該系統有關的活動。在與系統有關的活動中,只需要選擇詞匯“執行”或是“選擇”。 如果在未來不可能修改該軟件或固件,最好仔細審計文檔需要的范圍。
e.獨立的軟件。既然該種軟件不是一個系統的一部分,就不必考慮開發過程(第8章)中與系統有關的活動。最好仔細審查文檔需求,尤其是維護文檔的需求。
f.不交付軟件。既然沒有任何一項被獲取、供應或開發,最好不考慮除開發過程的第8。1.5條之外的其它章條。但是,如果需方決定獲取這種軟件中的一個軟件用于未來的操作和維護,那么,這個軟件最好按照b條或c條中的軟件對待。
B4.9 其它考慮因素:
系統越是依賴于軟件的正確操作和及時完成,就越是要通過測試、評審、審計、V&V等來加強管理控制。但是,對非關鍵性的軟件或小軟件加強管理反而不會降低成本。 軟件的開發可能有技術風險。如果采用的軟件技術是不成熟的,正在開發的軟件是前所未有的或是復雜的,或者,軟件含有安全和保密的重要需求,那么,就可能需要嚴格的規范、設計、測試和評價。獨立的V&V就可能是很重要的。
附加說明:
本標準由中華人民共和國電子工業部提出。
本標準由電子工業部標準化研究所歸口。
本標準由中國計算機軟件與技術服務總公司負責起草。
本標準主要起草人周明德、賈耀良、王桂蘭。
本標準于 1988年 7月首次公布。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%
相關閱讀:
- [電子說] 智能密集架控制系統使用指南 2024-12-06
- [電子說] 大數據的3V、4V、7V,到底是什么意思? 2024-12-06
- [電子說] 示波器波形分析軟件使用指南 2024-12-06
- [電子說] 大連理工和南信大-紫光同創FPGA創新實踐基地揭牌 2024-12-06
- [電子說] 如何利用emulation提升軟件測試效率 2024-12-05
- [電子說] 如何實現軟件的emulate功能 emulation和虛擬化的區別是什么 2024-12-05
- [電子說] AirPods連接不上手機的解決方法 2024-12-05
- [電子說] 積鼎科技榮登“2024上海軟件和信息技術服務業高成長百家”,引領國產CFD發展 2024-12-05
( 發表人:admin )