軟體支援環境
正文
在宿主硬體和宿主軟體的基礎上,用於輔助、支援其他軟體的研製和維護的一組軟體。軟體,特別是大型軟體的研製和維護是一種費用大、耗時多的工程。軟體生產率除了同軟體人員的水平有關外,支援環境是一個重要的因素。完備的軟體支援環境的作用是:①支援生存全周期,即不僅能支援軟體研製和維護中的各別階段,而且能支援軟體生存周期中的所有階段;②支援大型軟體工程項目,即不僅支援各別程式的研製,而且能支援大型軟體工程項目的研製和維護中所涉及的所有程式;③支援軟體配置管理。
軟體支援環境應滿足整體性、擴充性、層次性、移植性和堅定性等要求。①整體性:軟體支援環境是按照整體化要求設計的一個整體,因而它所包含的各項軟體不是一些彼此孤立的個體,應相互配合支援各個軟體工程項目的研製和維護。環境資料庫中對象的性質和有關信息,可反映環境的整體化程度。②擴充性:軟體支援環境中所包含的工具組隨時可以修改,可以擴充,工具組中所含的工具不是固定不變的。③層次性:軟體支援環境本身是層次式的,即區分為若干層,如宿主層、核心層、基本層和套用層。④移植性:軟體支援環境可以方便地從一台宿主機移到另一台宿主機。⑤堅定性:即軟體支援環境可以不受或少受來自用戶和系統錯誤的影響。
基本組成 軟體支援環境由環境資料庫、接口軟體和工具組組成。
環境資料庫 軟體支援環境的重要組成部分。其中存放的信息有:被研製的軟體在其生存周期中所必要的信息和軟體研製工具的有關信息等。在環境資料庫中,可以分別標識的信息組稱為對象;作為一組相關的版本而存在的一組對象稱為版本組。把一個項目中各個不同的“對象組”組合起來,就可以構成各種不同的軟體配置。
接口軟體 包括系統與用戶的接口、子系統和子系統之間的接口。支援環境要求所有這些接口都具有統一性。例如,為了實現用戶和各種工具的通信,要求有統一的調用方式。
工具組 軟體支援環境中的工具不是孤立工作的,而是彼此有互動作用的。工具組包括軟體研製工具、軟體維護工具和控制配置工具等,如整理檔案資料用的編輯程式和連線裝配程式。工具組中的各個工具應設計成由一些基本功能成分組成。這些基本功能成分可以組合,供用戶選用,並且可通過環境資料庫進行通信。
層次結構 一般說來,軟體支援環境都具有層次式的結構,可以區分為四層(見圖)。①宿主層:它包括基本宿主硬體和基本宿主軟體。②核心層:一般包括核心工具組、環境資料庫、通信設施和運行時刻支援設施。③基本層:一般包括最少限度的一組工具,如編譯程式、編輯程式、調試程式、連線程式和裝配程式等。這些工具都是由核心層來支援的。④套用層:以特定的基本層為基礎,但可包括一些補充工具,藉以更好地支援各種套用軟體的研製。