丁斌
摘要:本文探討了配置管理的主要活動與主要功能,研究分析了基于復(fù)用的軟件開發(fā),以實現(xiàn)對軟件開發(fā)過程的科學(xué)管理。
關(guān)鍵詞:軟件開發(fā);復(fù)用;配置管理
中圖分類號:TP311.52 文獻標識碼:A 文章編號:1007-9416(2018)12-0148-01
常言道:“工欲善其事,必先利其器”。軟件配置管理作為一項非常復(fù)雜的工作,僅僅依靠手工是不現(xiàn)實的,而且又與整個軟件的開發(fā)活動緊密相關(guān),因此,在實際工作中為其配備相應(yīng)的工具作為輔助是非常有必要的。
1 配置管理的主要活動
立足于配置管理的本質(zhì),配置管理主要包括以下四種活動:識別配置、變化控制、狀態(tài)記錄和報告、審計。識別配置指的是通過找出所需要管理的中間產(chǎn)品(程序和文檔),確保它們在配置管理的控制范圍之內(nèi),同時對它們之間的相關(guān)關(guān)系進行維護;變化控制,是指記錄變化的有關(guān)信息,進而有效控制軟件產(chǎn)品的質(zhì)量;狀態(tài)記錄和報告,實際上是指通過記錄和熟悉每一個配置的變化狀態(tài)后,實現(xiàn)對整個軟件變化過程的記錄和報告;關(guān)于審計,指的是利用配置記錄驗證軟件達到了預(yù)期的要求。
2 配置管理工具的主要功能
配置管理工具主要是圍繞以上四種活動,針對這四方面的功能,也是配置管理的基本功能,許多配置管理工具還提供一些基于基本功能的軟件開發(fā)支持,過程管理因此成為了配置管理的功能之一。對于配置管理工具,其有以下主要功能[1]:
2.1 配置支持
配置是一組中間軟件產(chǎn)品,同時每一個產(chǎn)品都是一個配置項,具有相同的目的。通過配置管理所提供的支持,用戶能夠?qū)崿F(xiàn)對配置項間各種關(guān)系的建立和維護,不僅促進了某些特定任務(wù)的完成,而且有利于標識某一變化對整個系統(tǒng)開發(fā)的影響。
2.2 版本控制
版本控制是管理在整個軟件生存周期只能夠建立起來的某一配置項的不同版本。在軟件工程中所涉及的軟件對象均要予以標識。無論在對象成為基線之前和之后,均可能需要進行頻繁的變更,因此每一個配置項都可以建立演變圖。
2.3 變更控制
變更控制是指將一套自動工具與人為的變動進行相結(jié)合,建立一套機制,實現(xiàn)對軟件配置項修改有意識的控制,從而避免在軟件開發(fā)中由于盲目修改所引起的混亂。在修改控制過程中,還要對項目數(shù)據(jù)庫的訪問控制和同步控制引起注意,其也是確保項目數(shù)據(jù)庫完整、一致以及安全的基本要求。
2.4 創(chuàng)建支持
軟件系統(tǒng)一般是由多個配置項組成的,建立整個系統(tǒng)的過程是非常繁瑣和耗時的,而配置管理工具可以實現(xiàn)對每個配置項信息的記錄和追蹤,確保用戶在更短的時間內(nèi)建立系統(tǒng)。通過結(jié)合版本控制,能夠有效地支持同時開發(fā)系統(tǒng)的多個版本。
2.5 其它功能
除了上述的主要功能外,配置管理還可以提供以下功能,包括:過程支持、團隊支持、權(quán)限控制、審計控制、報告/查詢、人員管理和配置庫管理等。
3 基于復(fù)用的軟件開發(fā)
伴隨著軟件規(guī)模的進一步擴大,人們對于更高質(zhì)量和生產(chǎn)效率的軟件需求也逐步增長,研究人員在此方面也做出了很多努力?,F(xiàn)階段,經(jīng)過不斷的驗證,軟件復(fù)用可以針對以上等問題予以有效解決[2]。
3.1 基于復(fù)用的軟件開發(fā)模型
基于復(fù)用的軟件開發(fā)主要含有兩方面:第一,開發(fā)可復(fù)用構(gòu)件;第二,利用可復(fù)用構(gòu)件進行開發(fā)。開發(fā)可復(fù)用構(gòu)件,是指將可復(fù)用的構(gòu)件直接開發(fā)出來,或者將之前的軟件產(chǎn)品改造成可復(fù)用的構(gòu)件,這些構(gòu)件具有較高的可復(fù)用價值;利用可復(fù)用構(gòu)件進行開發(fā),指的是在可復(fù)用構(gòu)件原有的基礎(chǔ)上,構(gòu)建應(yīng)用系統(tǒng),并且要確保復(fù)用已有構(gòu)件的質(zhì)量更優(yōu)。
3.2 開發(fā)可復(fù)用構(gòu)件
在開發(fā)軟件的過程中,復(fù)用通常會被大部分軟件人員所忽略,這使得最終所生產(chǎn)的產(chǎn)品只具有微弱的可復(fù)用性。例如:大多數(shù)程序只被允許在規(guī)定的環(huán)境中運行,而程序模塊的調(diào)用關(guān)系五花八門,不僅缺乏標準的接口,而且獨立性和封裝性較差,因此導(dǎo)致后期項目開發(fā)的復(fù)用受到很大的影響。因此,關(guān)于復(fù)用的軟件開發(fā)中必須要要抓住重點,通過對復(fù)用性進行改良,從而改造成可復(fù)用性較高的構(gòu)件產(chǎn)品。對于構(gòu)件開發(fā)而言,領(lǐng)域工程占據(jù)重要的位置,其主要思想,是針對某一領(lǐng)域中所存在的眾多系統(tǒng)進行分析,實現(xiàn)這些相似系統(tǒng)之間的對比,尋找出該領(lǐng)域中存在的實體、操作以及關(guān)系,然后通過抽象,改造成可復(fù)用的構(gòu)件。
3.3 利用可復(fù)用構(gòu)件進行開發(fā)
傳統(tǒng)的軟件開發(fā)者通常要從零開始,而基于復(fù)用的軟件開發(fā)者則不需要,比如:不用重新編寫所有的程序代碼。其可以使用構(gòu)件庫中現(xiàn)有的構(gòu)件,構(gòu)建相應(yīng)的軟件系統(tǒng)即可。采取構(gòu)件進行開發(fā)主要包括以下環(huán)節(jié):
(1)構(gòu)件提取。目前,考慮到軟件構(gòu)件的復(fù)雜性,在提取軟件信息時,要進行配置管理,同時為了防止軟件出現(xiàn)數(shù)據(jù)丟失,必須要嚴格管理軟件數(shù)據(jù)庫,從而確保軟件程序的完整性。為此,軟件開發(fā)人員針對構(gòu)件儲存和提取必須要科學(xué)管理,提高對軟件配置管理重要性的重視,結(jié)合實際,針對不同的構(gòu)件,采取相應(yīng)的配置管理方式,有助于后期對軟件中數(shù)據(jù)的提取,儲存完整的信息,同時實現(xiàn)對軟件的質(zhì)量以及各個功能的快速查詢,這對于軟件整理功能和數(shù)據(jù)信息方面有著很大的幫助,提升了在數(shù)據(jù)庫中提取構(gòu)件的效率,在軟件儲存中也更加嚴密,避免發(fā)生信息泄露,同時也意味著配置管理軟件中的構(gòu)件極其重要,從而提高儲存構(gòu)件的完整性。(2)構(gòu)件的適應(yīng)性修改。通常情況下,復(fù)用者很難滿意所提取出來的構(gòu)件,需要通過評估兩者的差距與區(qū)別,然后對構(gòu)件進行修改,最終滿足要求。構(gòu)件的適應(yīng)性修改主要包含三個方面:選擇、修改和集成,其中修改最為重要。站在復(fù)用的角度來看,復(fù)用構(gòu)件的代價是不可以高過重新開發(fā)的代價,因此,對于復(fù)用而言,減少構(gòu)件修改的代價極其重要,越低越好。(3)構(gòu)件組裝。在獲得需要的構(gòu)件后,接下來則是組裝構(gòu)件。根據(jù)要求,構(gòu)件組裝通常可以將小粒度的構(gòu)件先組裝成大粒度的構(gòu)件,進而組裝成整個系統(tǒng),而并不是直接組裝成應(yīng)用系統(tǒng)的。
3.4 軟件開發(fā)環(huán)境對軟件復(fù)用的支持
基于復(fù)用的軟件開發(fā),與軟件開發(fā)環(huán)境的支持息息相關(guān)。在其支持下,各種復(fù)用工具和開發(fā)工具集成一個系統(tǒng),同時這些復(fù)用工具可以彼此間進行調(diào)用。關(guān)于協(xié)調(diào),軟件開發(fā)環(huán)境中除了提供通訊與并發(fā)控制,加強了復(fù)用者之間的協(xié)調(diào)性;而且為復(fù)用者創(chuàng)造了高效便捷的界面。配置管理作為熱點,不僅在軟件工程環(huán)境中很重要,而且在基于復(fù)用的軟件開發(fā)過程中發(fā)揮了極其關(guān)鍵的作用。
4 結(jié)語
總而言之,在軟件的開發(fā)過程中,對軟件要實施配置管理,主要內(nèi)容為在進行軟件修改時,要進行配置管理,以減少修改軟件的頻率,同時針對軟件內(nèi)部不完整之處進行及時修復(fù)。針對不同性能的軟件來設(shè)計軟件配置的權(quán)限,與此同時,為了發(fā)揮出軟件的功能,必須對所有開發(fā)出的軟件實行統(tǒng)一配置審核,將不達標的軟件排除,保證每個軟件的完整性和實用性,從而體現(xiàn)出軟件配置管理的具有重要意義。
參考文獻
[1]楊一平,馬慧.軟件工程與軟件能力成熟度的融合[J].計算機系統(tǒng)應(yīng)用,2012(2):6-8.
[2]嚴曉光,陳曼煜.軟件配置管理的問題、目的、層次和策略[J].計算機工程與科學(xué),2009(5):90-92.
Configuration Management in Software Development Based on Reuse
DING Bin
(Guangzhou Huarui Technology Co., Ltd. , Guangzhou Guangdong? 510700)
Abstract:This paper discusses the main activities and functions of configuration management, studies and analyses software development based on reuse, in order to realize the scientific management of software development process.
Key words:software development; reuse; configuration management