前言:想要寫出一篇引人入勝的文章?我們特意為您整理了軟件體系結構和組件軟件工程研究范文,希望能給你帶來靈感和參考,敬請閱讀。
互聯網和物聯網的高速發展,使得計算機技術、軟件技術等相關技術不斷推陳出新,發展速度相當迅猛。但是,在發展過程中遺留的系統大量存在,現有的軟件系統規模則愈發壯大。軟件系統以單一軟件模塊或者組件構成就成為廣大計算機技術和軟件技術業內人士不斷探尋的問題。另一方面,軟件體系結構和組件軟件工程給軟件開發、維護和應用帶來的變化也很大。所以,針對軟件體系結構和組件軟件工程的探究是非常必要的。
1軟件體系結構
1.1軟件體系結構的定義
軟件體系的結構有很多種不同描述方式的定義,現階段比較認可的定義為軟件的體系結構是:設計軟件時的一種層次,其是計算過程之外的數據架構設計和算法設計。軟件的體系結構主要處理以下幾方面的問題,即對全局或者組織的有效性控制、數據的存取、同步、協議通信,以為設計元素提供特定化的性能,與設計方式,從而使得設計方案具有較高的功能與可選擇性。
1.2軟件體系結構的形成與發展
在初期,為滿足較大規模主機的需求,軟件采用的是mainframe類型的結構,此結構需要在主機上集中數據、程序與客戶,GUI界面是非常少的,同時在訪問遠程數據庫方面也是較為困難的。隨著計算機科學技術的發展、個人電腦的迅速推廣,這一結構在應用中也逐步被淘汰掉了。互聯網的出現與發展深刻影響著應用軟件傳統的開放方式。以web與互聯網為基礎的應用與軟件系統則需要更加靈活與開放的體系結構。伴隨著日益增多的商業性系統在互聯網架構上的應用,一種更為靈活、功能性更為豐富的結構日益為人們所熟知并使用起來,,即“三層或者多層計算”形式的結構。客戶層:用戶端請求與接口的生成地,為人師所熟知的應用包括胖客戶等。服務器層:較為普遍使用的應用是業務代碼運行應用服務器和web服務器。數據層:具有代表性的應用是關系式數據庫與后端數據信息資源,如SAP\Oracle等。
1.3軟件體系結構的發展趨勢
(1)信息交換;現在的ADLS絕大一部分是和領域有一定關系的,因此并不利于說明不同類型的體系結構。但是這些不同領域的、具有針對性的ADLS在一些方面又存在的共通性與相似性,進而導致資源的重復冗余。實際上,大部分的ADLS都有著相同的概念。采取怎樣的方式方法將各種語言以同一公共形式的方式綜合起來,使得各類型的體系結構能夠交換各自的描述信息,將會是未來軟件系統結構實踐與研究的一個重點。
(2)設計環境與工具;軟件體系結構的研發設計工作是軟件工程中相當重要的一部分,其計算機輔助設計手段是非常重要的。應開發出一些列的工具性軟件以對體系結構進行更好地分析與描述,在開發階段進行工具的轉換,進而實現階段性成果的自動化轉換,比如,將需求規格的說明轉化成構建等。到目前為止,很少在這一方面的進行較為深入細致地研究,尤其是可應用在實際開發項目中的環境與工具就更少了,因此這也將會是未來軟件系統結構實踐與研究的一個重點。
(3)體系結構的再次開發;當下,軟件系統越來越具規模,結構也變得愈加復雜,但系統數量卻沒有明顯增多,反而呈下降趨勢,這樣很多剩下的系統就被重復利用了。這種重復利用也就是軟件體系結構的再次開發,其利用方式就是將軟件系統的代碼抽取出來,找出其中有用的結構信息,然后再經過一些必要處理方式,如實例化和統一描述處理,以此構建系統化的體系結構。通過這樣的利用過程,軟件體系結構的再次開發就顯得尤為重要,因為這樣可以將以往本應淘汰的系統結構升級過后搭建進化型的系統,再次開發過后的軟件系統不僅使人們對原件的水平了有了更深層次的提高,而且也是目前軟件體系結構的升級和進步。而這種軟件的開發方式其目的就是在于為一些特定領域搭建需要的結構構件,比如當下比較流行的人機交互界面和機器人。正是如此,軟件體系結構的開發就變得越來越重要,其應用也開始變得越來越廣。
2組建軟件工程
組建是有著一定的功能,可以獨立地進行工作或者可以與其他的組建配合起來協同工作的程序體,組建使用的方式與組件的生產、開發并沒有直接聯系。若將軟件系統看作為眾多組件的集合,從外部形態看,構成系統的組件被分為下列類型:
(1)成熟且獨立的組件。這種類型的組件隱藏了全部的接口,用戶只要輸入按照預先設定的命令便可進行使用。操作系統、DBMS等都屬于這種類型的組件。
(2)有限制條件的組件。這種類型的組件可以提供結構,同時指出使用的前提與條件,其在裝配的過程中,資源會產生覆蓋、沖突等影響,在使用前應對其進行測試,比如各種數據庫等。
(3)適應型組件。采用接口技術或者進行了包裝,處理了資源沖突與不兼容性,可以直接地進行使用。
(4)裝配型組件。在安裝這一類型的組件時,已裝配在信息系統、DBMS或者操作系統等不同的層次之上,使用膠水代碼便可實現連接使用。當下,很多軟件提供商所研發的軟件就屬于這一類型。
3結語
軟件工程是當下信息時代鮮明的產物,同樣也是信息技術的代表之一。自計算機誕生以來,為了使計算機的功能與作用能夠得到最大限度的發揮,軟件的開發就一直隨其不斷發展著,時至今日,軟件的體系結構變得越來越復雜,應用范圍也深入到生活與生產的各個方面。組建軟件工程本不是軟件體系結構中的核心內容,但其互操作性與軟件結構模型結合起來后能使軟件的性能更為優化,這也是研究軟件體系結構與組建工程的關鍵所在。
作者:應俊 單位:蘇州大學