軟體構件技術在MIS開發中的應用

2021-04-12 19:12:34 字數 3808 閱讀 1151

(本文**自軟體工程專家網www.21cmm.com)

軟構件技術概述

軟體行業的工業化趨勢導致了軟構件的產生。能夠像硬體系統那樣,將部分軟體組合起來構建軟體系統,一直是軟體行業多年來追求的目標。特別是對於象很多應 用軟體的開發(例如很多行業和單位的mis系統),若能結合系統的實際情況充分利用已有的軟體構件,將會大大提高生產效率,減少大量的重複勞動。可以說, 軟構件技術的出現是對傳統軟體開發過程的一次變革。構件(component)是可復用的軟體組成成分,可被用來構造其它軟體。它可以是被封裝的物件類、 類樹、一些功能模組、軟體框架、軟體構架(或體系結構)、文件、分析件、設計模式等。從廣義上講,軟構件技術是基於物件導向的,以嵌入後馬上可以使用的即 插即用型軟構件概念為中心,通過構件的組合來建立應用的技術體系。狹義上講,它是通過構件組合支援應用的開發環境和系統的總稱。我們可以按多個側面對構件 進行分類:

按開發過程構件可分為分析件、設計件、程式件和資料件。

按功能分,分為三層:基礎層為基本資料類構件和系統支撐構件;中間層為各種通用的中介軟體;頂層為針對各種領域的專用構件或子系統構件。從粒度上看通常底層的粒度為較小,而頂層的粒度為較大。

按使用方式分為動態和靜態兩種。

按構件的結構分為原子構件及由多個構件聚集的組合構件。

在這種新的軟體開發方式下,軟體公司以開發軟部件為主要業務,提供規格化的軟部件。系統整合商則彙總部件,組合成能完成不同功能的軟構件,將自己的核心技術構件化。正是這兩者之間分工的涇渭分明,將軟體行業工業化逐漸推向成功。

目前,採用軟構件思想開發的軟體產品相繼出台,而主流是以美、日大公司為首的產品。由於採用其思想的開發工具推出的時間還不足五年。因此,真正使用軟構 件的使用者還屈指可數。儘管軟構件技術還存在著很多不成熟之處,但人們都相信軟構件帶來的好處是不可估量的,它代表了新一代軟體技術的發展方向。

傳統的mis開發方法

自底向上法和自頂向下法

自底向上法出現於早期的計算機管理應用系統,即在進行系統分析和設計時自下而上,先從底層模組做起,然後逐步完成整個系統。自底向上法使得mis的開發 易於適應組織機構真正的需要;有助於發現系統的增長需要,所獲得的經驗有助於下一階段的開發,易於控制和管理。但由於方法的演變性質,自底向上法使mis 難以實現其整體性;同時由於系統未進行全域性規劃,資料一致性和完整性難以保證;而且為了保證系統效能的需求,往往要重新調整,甚至重新設計系統。

隨著mis規劃的擴大和對開發經驗的總結與歸納,自頂向下的系統分析方**逐步得到了發展和完善。自頂向下法要求開發者首先制定系統的總體規劃,然後逐 步分離出高度結構化的子系統,從上至下實現整個系統。運用這類方法可以為企業或機構mis的中期或長期發展規劃奠定基礎,同時支援mis的整體性,為系統 的總體規劃、子系統的協調和通訊提供保證。但它同樣也存在缺點:對系統分析、設計人員要求較高,在大系統中,對下層系統的實施往往缺乏約束力,開發的週期 長,系統複雜,成本較高。

快速原型法

原型法的核心是原型,即模型,是系統的早期可執行版本。隨著使用者或開發者對系統理解的加深,不斷地對原型進行補充和細化。系統的定義是在逐步發現的過程中進行,這就是快速原型法的基本出發點。快速原型法的開發過程體現了不斷迭代的快速修改過程,是一種動態定義技術。

快速原型法的最大優點是能夠大大減少軟體系統的後期維護費用,使系統功能能正確反映使用者的需求。原型本身及這種方法的不足之處在於,如果原型本身功能設 置不齊全、效能不好,會導致原型的設計和使用超出預期的花費和時間。另乙個關鍵不足是原型法需要乙個合適的軟體開發環境,以便原型能直接轉換成現實的系 統。

以上方法各有其優缺點。「自底向上」法只重區域性而忽視了對整體的把握;「自頂向下」法開發周期長、見效慢、缺乏靈活性和適應性;快 速原型法雖然具有很明顯的優越性,但因其依賴於快速開發工具的支援,又不能不令許多系統開發者望而卻步。因此通過對軟構件技術的研究,我們提出一種新的開 發方法——積木法。

利用軟構件技術開發mis系統

採用積木法開發mis系統的過程與搭積木的過程很類似,一般是先構築系統的總體框架,然後構造各個構件,並依次把構件安裝到系統中去。   積木法克服了快速原型法需要快速工具支援的不足,取而代之以軟體構件化技術來構造系統。大部分mis系統,在功能上有類似之處,因而利用軟體的重用技 術就可以把開發過程大大簡化。積木法的提出正是基於這種設想。積木法在確定系統總體框架、構築總體框架、修改總體框架、構造構件以及修改構件等階段,都同 乙個叫做「軟構件集合」的實體打交道,這個軟構件集合也被稱為「軟構件庫」。在開發mis系統之初就應該著手準備這個軟構件集合,比如可以蒐集一些已經開 發出的mis系統的總體設計、規範、區域性流程以及某些人機介面、通用功能模組、簡單開發工具。開發mis系統的大部分工作都集中在構造軟體階段。這一階段 的工作特點是盡量使開發出的積木塊具有較大的靈活性和變通性,為重用作好準備。每開發出乙個積木塊,都要把該積木塊及其功能、呼叫介面等資訊放入軟構件集 合。採用積木法的關鍵就是要借助對積木構件的重用組合技術,系統開發人員絕不能忽視對軟構件集合的管理。如果缺少了這一點,積木法就喪失了優越性,自頂向 下法及快速原型法所暴露出的缺陷也會接踵而至。

系統總體設計與實現

mis構件的定義、分類和生成流程

mis構件是具有一定處理功能的程式框架,其邏輯結構已定,且軟構件體的程式框架由固定部分——程式框架、可變部分——巨集結點(產生替代該巨集結點的規則序列)組成。

由上述軟構件定義可知,軟構件並不是簡單的一段程式,生成應用功能構件的過程是執行規則、產生**替換巨集結點的過程。

通用mis構件可分為以下兩類:

使用者軟構件

它又可分為通用處理軟構件和專用處理軟構件。其中使用者引用前者時,通過給出適當的引數,系統將生成相應的功能構件。後者是使用者自己使用的軟構件,相當於固定功能構件。

控制軟構件

指標準的控制功能構件及介面構件等。

mis構件的生成流程可抽象成幾個公共操作過程,作為生成的規則,mis構件生成過程就是根據軟構件巨集結點提供的資訊(規則)採取的生成動作,即讀取使用者輸入的引數並生成相應的程式段,然後用該生成的程式段代替巨集結點的過程。

系統生成方案

採用軟構件技術開發mis系統的設計目標是以積木組合開放式結構構造mis整合一體化的環境。根據mis系統的一般結構,完整的mis系統應具有以下主 要生成功能:資料庫檔案、功能選單、資料庫維護、查詢、索引排序、統計計算、圖形生成與分析、報表生成、列印、資料一致性檢驗、資料一致性維護及應用系統 文件資訊。

mis系統生成是建立在乙個個積木塊——軟構件的基礎之上的。mis系統的生成過程也就是從軟構件庫中提取軟構件,並將它們按照整合演算法組合的過程。

為了適應多種mis系統開發的需要,軟構件庫中應含有大量的各類軟構件,但若軟構件很多,又會帶來軟構件的查詢、使用和維護的困難。為此,需要設計軟構件庫的管理程式。

軟構件庫的管理程式主要完成以下幾個功能:

軟構件查詢:在軟構件中查詢到所要求的軟構件;

軟構件擴充:加入乙個軟構件到軟構件庫中;

軟構件整合:利用已有的軟構件整合軟體系統;

軟構件刪除:刪除乙個已存在的軟構件;

軟構件修改:修改乙個已存在的軟構件。

mis系統採用軟構件設計方法,把應用系統劃分為若干積木塊,把程式生成問題轉化為軟構件的設計、處理問題。對於不同的應用系統,通過分析發現它們之間的共性與個性,把共性部分作成標準軟構件,把使用者要求存入規則庫。根據軟構件整合演算法,將軟構件連線成完整的系統。

總結與展望

軟構件技術的出現,極大地滿足了多個應用領域的要求,使得各種技術形成的軟構件可以最大程度地進行重用。這就引出了大規模軟體開發所面臨的另乙個問題: 如何建造物件導向的軟構件庫結構,並有效地組織和管理。在大型軟構件庫的支援下,利用現有的、***、可靠性強的軟構件,按照大規模軟體開發的工程規範進 行開發,是滿足這些大型系統要求的良好途徑。   現在人們越來越多地寄希望於具有分散和聯合處理能力的開放性分布式軟構件技術。分布式軟構件技術的目標是實現開放的軟構件產品,使應用程式能相互操 作,降低開發與管理費用。到目前為止,還沒有出現乙個完整的開放式軟構件系統的實施方案。但我們相信,軟構件化是軟體工業化的必然。

需求導向的軟體構件技術

在專案開發過程中,由於軟體開發,是乙個不可分割的過程,是一系列連續的活動過程,一環扣一環,包括需求分析,設計,實現,測試,移交,及公升級維護,最終淘汰的過程。我們知道在軟體專案實施過程中,盡量的去重要一些基本庫或是一些構件,因為原來的庫的功能在不斷的迭加,bug在不斷的減少,穩定性有保障,同時開始的...

構件技術,應用軟體行業的未來

19 世紀,人類文明歷經了第一次工業革 命 機械的發明 20世紀,人類文明歷經了第二次工業革 命 電子的發明 20世紀末期,人類文明正在歷經第三次工業革 命 資訊產業 每一次偉大的革命都有驚人的相似之處,如今機器和電力都遍布我們身邊的每個角落,已經成為一種重要的生產資料。軟體產業自 20世紀 70年...

飛天軟體鎖Rockey1在軟體產品中的應用

飛天rockey1是免驅的,插上usb口就能用,非常方便,一般情況下免驅的鎖容易被破解,若真的到了別人破解自己軟體鎖的那一天,也就很成功了,所以rockey1對於一般軟體產品應用已經足夠了。1 rockey1的預設產品pid為8個f,使用者密碼userpin為16個f,開發商密碼sopin為16個f...