前言:尋找寫作靈感?中文期刊網用心挑選的基于構件的軟件工程技術分析,希望能為您的閱讀和創作帶來靈感,歡迎大家閱讀并分享。
【內容摘要】隨著計算機軟件工程與產業的不斷發展,相關企業在提升軟件產品質量和生產效率的同時,常采用基于構件的軟件工程技術。以構件為基礎的軟件工程技術注重對可復用軟件構件的使用,其根本目的是應用極為便捷的構件組裝應用程序,以此實現在軟件復用條件下的產品質量與生產效率的雙向提升。
【關鍵詞】構件;軟件工程技術;信息化;軟件開發
近年來,我國的信息化產業發展戰略深入實施,信息化建設在社會經濟中的地位與作用越來越明顯。而信息化建設的中心體系———軟件,對提高信息化建設的質量與水平具有十分重要的功能。信息化技術的快速發展與廣泛應用,對軟件研發提出了更高的標準與要求。以往采用的軟件研發方式已難以適應信息化時代的快速發展步伐,這就使得探究軟件開發的技術與模式成為計算機行業的重要課題之一。因此,針對基于構件的軟件工程技術研究,對提高軟件研發成效、促進軟件產業發展等具有不可替代的意義。
一、構件軟件技術的基本概述
(一)構件的基本內涵。1.構件定義。簡而言之,構件即結構元件,主要是指某一系統或物體中客觀存在且又可以根據實際需要進行更換的一些部分,其必須與接口標準相符合,并可以通過具體接口發揮有效功能,以此實現某種特定的作用。從計算機科技視角去分析,構件主要是指可以便捷地插入到計算機網絡軟件、工具、語言以及操作系統中的定義優良的代碼與數據接口。[1]構件是構成軟件系統即插即用功能的重要組成部分,屬于能夠獨立分發、裝配、制造與銷售的二進制軟件單元。與此同時,構件的主要構成部分包括部署、實現和接口。其中,“接口”的主要功能是告訴用戶此構件,“部署”作為構件存在的重要形式,常常表現為二進制或者可執行文件代碼;“實現”是可以確保構件運行的代碼。2.構件分類。構件主要包括粗粒度構件與細粒度構件兩個層次。粗粒度構件主要是指以操作系統平臺為基礎的構件,以實現構件即插即用的技術目標。譬如,以Windows平臺為研發基礎的各類應用軟件,WindowsMediaPlayer,Mi-crosoftOffice,FlashGet,RealonePlayer,瑞星殺毒軟件,金山詞霸等,這一系列應用程序都能夠直接安裝并使用,且當這些應用程序不再需要時,還可以通過控制面板或者自帶卸載程序將其卸載。顯而易見,這正是目前我國所探析的“即插即用”軟件,但這些構件的跨平臺水平有限,無法從Windows平臺直接移植到Solaris平臺、Unix平臺或者其他平臺;同時這些構件的復用程度也偏低,不能納入到我們的追求目標范疇中。細粒度構件主要是指能夠用來組裝諸多應用程序的相關構件,其包括專用構件與通用構件,基于構件的軟件開發所討論的對象就是這類構件。構件的另外一種分類方法則是依據軟件復用進行的分類,即分為廣義構件與狹義構件。其中,廣義構件指的是用于復用的一系列軟件實體,具體包括代碼實現、詳細設計、分析文檔等;狹義構件則是對二進制代碼構件的特指,主要用于應用程序的組裝。(二)構件軟件工程技術的基本內涵。1.構件軟件工程技術的含義。與其他軟件相比,構件軟件的性能與功能更為突出,并且在軟件系統中的構件軟件屬于二進制。同時,因構件軟件的端口是根據操作規范制作的,所以其能夠直接與第三方實施組裝,加之構件的軟件結構一般是通過操作簡便的應用程序在其他軟件中構成的一種獨立的應用程序,進而實現軟件的重組功能與重用功能,大大壓縮了成本,提升了整體效益。[2]2.構件軟件工程技術的優勢。構件軟件工程的最大特色之一就是其運行方式,即不但能夠直接把構件軟件插入到系統中,而且可以立即使用。構件軟件在實際運行過程中,能夠通過市場把構件軟件端口進行分發,且因構件軟件的端口組件與程序屬于分開設計模式,這就使得構件軟件在沒有其他干擾的情況下,能夠與第三方組裝端口進行規范化的結合。
二、基于構件的軟件工程技術開發過程
基于構件的軟件工程技術開發過程極為復雜,具體可以把其開發分解成各不相同的子模塊。對軟件設計而言,對構件的準備與制作,以及對子模塊的設計與實現,都相當重要。為最大程度提升軟件開發的質量與成效,降低成本并壓縮時間,非常有必要對一系列搜索組件進行改進與完善,通常在線搜索組件都能進行反復試驗,在質量與價格上也都相對優越。只不過其中存在多種特定應用并不適用于實際軟件,因而必須做好在某些方面進行自主研發的心理準備。同時,在構件的軟件工程技術的開發過程中,集成與測試也屬于重要的構成部分之一。單一化的零部件采購與生產完成后,可以將兩個子模塊的實際組裝與測試依據設計方案進行組裝,待完成之后對其實現具體的兼容功能并要進行測試。把組件中的子模塊的功能與兼容性實時進行全方位的測試,以此實現軟件集成的功能與兼容性應用。值得注意的是,在此過程中發現的一系列問題必須及時告知相應的開發商,修復好bug之后再對組件進行下載。另外,使用的維護人員與用戶也應高度關注軟件錯誤,并做到定期編寫軟件問題與修改報告,以促使軟件具備優良的應用價值。目前,我們所看到的多種多樣的軟件插件技術已遍布于國內外,比如,PS圖像處理軟件中的圖像處理軟件、Disxuz社區軟件、Chrome瀏覽器、FineReport報表開發軟件以及Java開發平臺Eclipse等。[3]盡管軟件應用的是插件技術,但不同產品的具體實現方法卻是互不相同、多種多樣的。伴隨著用戶需求與標準的不斷提升,邊緣化因素影響下的持續創新,以及軟件工程技術的不斷發展,以構件為基的軟件工程開發必將會受到越來越高的關注。
三、基于構件的軟件工程技術的實際應用
(一)基于構件的軟件系統設計。基于構件的軟件系統在設計過程中,通常采用的是計算機體系中的三層結構:第一層客戶服務層,其負責與用戶交互、與應用服務器交互,并負責校驗用戶操作;第二層是應用層,其負責與數據層、客戶服務層進行交互;第三層是數據層,主要是依據指令對數據庫進行操作,負責為Web服務器、應用服務器提供相關數據信息。[4]這種軟件系統設計更為科學與高效,對提升構件軟件工程技術的整體水平具有至關重要的功能與作用。(二)基于構件的軟件系統結構。對應用軟件開發來講,最大的困難就是系統可變性與分析導致的維護量較大的問題,而基于構件的軟件工程技術恰好可以有效解決該問題。基于構件的軟件系統結構由構件分層體系結構與軟件體系結構兩大部分組成,其中,軟件體系結構主要是根據構件間的相互聯系與約束對系統進行定義,且能夠對軟件系統結構的組成實施客觀描述。因此,基于構件的軟件系統能夠高質高量地維護系統的可變性以及相關分析,這對推動軟件工程技術的發展與進步具有深遠意義。(三)基于構件的軟件開發模型。堅持軟件復用思想,是軟件系統開發的基本原則。在對領域進行認真分析的基礎上,構件起領域模型,并從其中提出所需要的構件。簡而言之,即把領域模型中不變化的部分作為通用構件,把領域模型中能夠變化的部分作為數據庫或知識庫等。生成通用構件之后,再把其裝入到領域構件庫中,進而為調取、修改與完善做準備。[5]同時,通過對一系列通用構件的復用,即可構成領域專用構件,從而為軟件系統開發提供有力的支持與保障??偠灾跇嫾能浖こ碳夹g,把傳統軟件中的一系列缺陷或者問題均進行了有效彌補,有力改變了軟件研發的陳舊思維與性能等,促進了計算機行業的重大進步與革新,甚至可以說從根本上拓展了計算機行業的未來發展空間。然而,值得注意的是,基于構件的軟件工程目前仍處于初級發展階段,計算機行業還需要給予其更多的進步與完善時間,從各方面為構件軟件工程發展創造優良的條件,相信基于構件的軟件工程必將推動我國計算機行業的健康可持續發展。
【參考文獻】
[1]沈栓喜.淺談基于構件的軟件開發方法和技術[J].計算機光盤軟件與應用,2014,15
[2]砂礫.淺析軟件工程在企業系統中應用[J].中小企業管理與科技,2013,5
[3]黃梅蓀,程慧霞,吳必文.基于UML統一軟件開發過程的研究和實踐[J].安徽大學學報(自然科學版),2003,3
作者:趙俊彬 單位:河南廣播電視大學