摘 要:伴隨著信息技術(shù)水平的不斷提升,軟件工程領(lǐng)域也迎來了廣闊的發(fā)展空間,多種多樣的軟件產(chǎn)品在各個行業(yè)領(lǐng)域均得到廣泛應(yīng)用,對各個行業(yè)發(fā)展具有積極作用。SOA作為軟件工程領(lǐng)域中一種面向?qū)ο蟮难邪l(fā)形式,將SOA程序開發(fā)框架應(yīng)用到軟件開發(fā)之中,有助于增強軟件的操作性能,讓不同軟件體系與架構(gòu)實現(xiàn)數(shù)據(jù)共享功能。本文將簡要論述SOA的概念,探討SOA程序開發(fā)程序的進展,研究在軟件工程中SOA程序開發(fā)框架的應(yīng)用策略。
關(guān)鍵詞:SOA程序;開發(fā)框架;軟件工程
中圖分類號:TP311.5 文獻標(biāo)識碼:A 文章編號:2096-4706(2018)09-0010-03
Abstract:With the improvement of the level of information technology,the field of software engineering has also ushered in a broad space for development,a wide variety of software products have been widely used in various industrial fields,and have a positive effect on the development of various industries. SOA as an object-oriented R D form in the field of software engineering,applies the SOA program development framework to software development,which helps to enhance the software’s operating performance and enables different software systems and architectures to implement data sharing functions. This article briefly discusses the concept of SOA,discusses the development of SOA program development procedures,and studies the application strategy of SOA program development framework in software engineering.
Keywords:SOA program;development framework;software engineering
0 引 言
軟件工程領(lǐng)域經(jīng)過多年的發(fā)展,軟件研發(fā)規(guī)模逐步擴大,軟件種類更加多種多樣,并在多個行業(yè)領(lǐng)域得到廣泛應(yīng)用,如電子商務(wù)領(lǐng)域、教育領(lǐng)域等,并在各個發(fā)展階段取得杰出進步。然而,在軟件工程領(lǐng)域,要想研發(fā)出相應(yīng)的軟件,需要開發(fā)耗費大量的人力物力財力,難以落實可復(fù)用模式和松耦合模式,使得軟件產(chǎn)品的適應(yīng)能力有待增強。在軟件工程中,SOA程序開發(fā)框架作為一種面向服務(wù)模式被研發(fā)出來,其在軟件工程中的科學(xué)應(yīng)用,有助于減少軟件產(chǎn)品的研發(fā)周期,增強軟件產(chǎn)品的綜合性能,相較于一般軟件工程產(chǎn)品,運用SOA程序開發(fā)框架的軟件產(chǎn)品能夠提升信息化服務(wù)的質(zhì)量。
1 關(guān)于SOA的內(nèi)涵
從SOA的屬性來說,該組件屬于一種面向服務(wù)框架,在軟件研發(fā)中,可以給軟件產(chǎn)品賦予不同功能及不同形式的應(yīng)用服務(wù),并基于預(yù)先設(shè)定的協(xié)議及接口,科學(xué)集成這部分應(yīng)用服務(wù),有利于增強系統(tǒng)的中立性及可擴展性,從而確保操作系統(tǒng)、硬件服務(wù)平臺以及編程語言及接口的獨立性,并進一步增強針對不同功能應(yīng)用軟件的兼容性,其中便涉及visual studio以及eclipse等,能夠兼容C++語言、Java語言等,在通用模式的輔助下,諸如此類的語言及軟件能夠完成信息交互。就SOA程序而言,這種服務(wù)架構(gòu)與體系,具有動態(tài)可擴展、松散耦合以及優(yōu)化復(fù)用的特點,在結(jié)構(gòu)化程序設(shè)計方面以及過程調(diào)用層面具有積極作用,與構(gòu)建化改造、組件化以及集成理念方面的融合度極高,故而相關(guān)工作人員可以將SOA程序應(yīng)用到軟件改進與完善之中。
SOA程序作為一種軟件研發(fā)平臺,具有分布式及開放式的特點,可以將良好的信息服務(wù)提供給用戶,以增強軟件的適應(yīng)能力及靈活性,在互聯(lián)網(wǎng)應(yīng)用環(huán)境中得到廣泛應(yīng)用。從SOA程序的組成部分來說,UDDI、WSDL、SOAP屬于基礎(chǔ)構(gòu)件,具備不同的功能。就UDDI而言,其在軟件研發(fā)中的科學(xué)應(yīng)用,能夠讓軟件具有查找和服務(wù)注冊功能。WSDL在軟件設(shè)計中的適宜應(yīng)用,可以描述基于軟件的服務(wù)內(nèi)容。另外,就SOAP而言,該構(gòu)件在軟件中扮演著傳輸層的角色,有利于在軟件自身實現(xiàn)良好的消息傳輸功能。就SOA程序開發(fā)框架而言,在Web服務(wù)之中,被歸屬于默認機制的范疇,能夠基于服務(wù)形式,實現(xiàn)與其他技術(shù)的集成與綁定功能。
2 論SOA程序開發(fā)框架的研究發(fā)展情況
2.1 關(guān)于SOA程序開發(fā)框架的理論模型
關(guān)于SOA程序開發(fā)框架的理論模型,涉及參考模型、服務(wù)接口模型以及具備面向服務(wù)的體系結(jié)構(gòu)的形式化描述模型。構(gòu)建參考模型的目的,在于完成各種系統(tǒng)的互聯(lián)互通,在參考模型的輔助下,可以給SOA的軟件開發(fā)工作提供相應(yīng)的指導(dǎo),而這一目的正是構(gòu)建SOA參考模型的要點所在。在軟件工程領(lǐng)域內(nèi),關(guān)于參考模型的研究已相對成熟完善,出現(xiàn)了多種多樣的類型及種類,故而有助于構(gòu)建面向服務(wù)的體系結(jié)構(gòu)。在理論模型中,服務(wù)模型作為其中極為重要的組成部分,是開展軟件測試及驗證的必要條件。在基于面向服務(wù)的SOA程序開發(fā)框架軟件中,其突出特點便是事務(wù)性,相較于之前的原子事物模型,此類軟件的SOA程序開放框架的事務(wù)模型存在極大的差異,就面向服務(wù)的事物模型本身而言,并不具有原子性及可回滾性的特征,在執(zhí)行時間上相對較長,在長事務(wù)模型構(gòu)建中,需要借助錯誤及補償機制,開展處理工作?;谶@一特點,不少學(xué)者對錯誤及補償機制給予高度關(guān)注,而不僅僅放在事務(wù)模型上,甚至不少學(xué)者救助補償通信的次序,構(gòu)建錯誤及補償機制,以期能基于此,在補償過程的輔助下,針對補償行為開展相應(yīng)的描述工作,從而針對諸如中斷處理之類的錯誤處理行為開展描述工作,并對獨立子事務(wù)進行表示。
2.2 關(guān)于SOA程序開發(fā)框架服務(wù)源
針對SOA程序開發(fā)框架服務(wù)源的研究,其核心目的在于針對復(fù)雜多樣的軟件問題,對關(guān)注點及組件進行分解工作,以將復(fù)雜繁瑣的問題,科學(xué)分解為對應(yīng)的片段幾何,并對各個片段中所涉及的關(guān)注點進行科學(xué)處理。就SOA程序開發(fā)框架而言,關(guān)于服務(wù)員研究涉及多方面內(nèi)容,諸如相應(yīng)服務(wù)建模、服務(wù)設(shè)計等內(nèi)容??v觀當(dāng)前服務(wù)建模的研究情況,在研究上取得突出進步,其中便涉及以自定義語言為基礎(chǔ)的服務(wù)行為建模、以UML為基礎(chǔ)的服務(wù)建模等內(nèi)容,并針對WSMO服務(wù)模型以及OWL-S服務(wù)模型開展深入研究。其中就服務(wù)設(shè)計的研究內(nèi)容而言,針對大量遺留構(gòu)件方面的復(fù)用問題,已取得了突出進展,從而擴展現(xiàn)下全部非面向服務(wù)類構(gòu)建的性能,確保其服務(wù)組件的作用,以起到增強復(fù)用性的作用,關(guān)于此方面的研究,主要包括SDO規(guī)范、SCA規(guī)范等內(nèi)容。
2.3 關(guān)于SOA程序開發(fā)框架的開發(fā)策略
相較于其他發(fā)達國家,我國關(guān)于SOA程序開發(fā)框架的研究尚處于初級階段,在開發(fā)方法上還不夠科學(xué)規(guī)范,未形成完整健全的管理體系。不少專家學(xué)者針對面向服務(wù)的特點和出于編程思想,開展了相應(yīng)的分析研究工作,以制定切實可行的開發(fā)策略。部分專家學(xué)者所提出的開放方法,具有良好的適應(yīng)能力,此方式以建立結(jié)構(gòu)框架CAFISE為基礎(chǔ),在CAFISE的輔助下,針對異構(gòu)資源,增強業(yè)務(wù)化及服務(wù)化,有利于增強軟件機構(gòu)的綜合性能,以優(yōu)化服務(wù)質(zhì)量。此外,此種開發(fā)方法,對可能對軟件產(chǎn)生影響的要素、具有質(zhì)量屬性的渠道要素給予高度關(guān)注,在結(jié)構(gòu)設(shè)計方面強調(diào)適用性,并通過完善結(jié)構(gòu)設(shè)計,完成業(yè)務(wù)端編程的建設(shè)工作。在SOA程序開發(fā)框架的發(fā)展進程中,多種開發(fā)方法的出現(xiàn),有利于為SOA程序開發(fā)框架所應(yīng)用,營造良好的發(fā)展環(huán)境。
2.4 關(guān)于SOA程序開發(fā)框架的結(jié)合與交叉
在關(guān)于SOA程序開發(fā)框架的業(yè)務(wù)研究中,基于此的結(jié)合與交叉是其中的重要內(nèi)容,針對SOA業(yè)務(wù)流程,開展相應(yīng)的開發(fā)與組合研發(fā)工作,有利于借助相應(yīng)的服務(wù)組件將業(yè)務(wù)流程得以落實,開展相應(yīng)的服務(wù)與活動,對業(yè)務(wù)流程模型具有不可忽視的作用及影響力??茖W(xué)應(yīng)用SOA程序開發(fā)框架,針對業(yè)務(wù)流程構(gòu)建相應(yīng)的模型,有利于增強業(yè)務(wù)流程的可行性及操作效率,對提升反映速度及靈活性具有積極作用,受這一因素的影響,在業(yè)務(wù)流程模型構(gòu)建工作中,BPM在其中的地位逐步凸顯。依據(jù)服務(wù)設(shè)計的相關(guān)內(nèi)容,適當(dāng)調(diào)整和修改流程,以增強流程服務(wù)的適宜性。由于BPM和SOA之間具有千絲萬縷的聯(lián)系,故而如何有效結(jié)合SOA與BPM被越來越多的科研人員所重視,關(guān)于SOA程序開發(fā)框架的交叉逐漸成為當(dāng)下研究的熱點話題。
3 論SOA程序開發(fā)框架在軟件工程中的應(yīng)用策略
3.1 論松耦合的應(yīng)用情況
縱觀SOA程序開發(fā)框架的研究情況,研究人員將研究重點逐步由針對軟件工程領(lǐng)域內(nèi)的軟件開發(fā)向松耦合的境界過度。基于傳統(tǒng)軟件研發(fā)模式,開發(fā)人員將數(shù)據(jù)轉(zhuǎn)化、網(wǎng)絡(luò)連接以及業(yè)務(wù)邏輯科學(xué)整合與集成,有助于確保系統(tǒng)的全面性及完整性,若這種傳統(tǒng)開發(fā)方法出現(xiàn)變化,勢必會影響核心部分的內(nèi)容,導(dǎo)致研發(fā)成本增大等問題,由傳統(tǒng)開發(fā)方法研制出的軟件的適應(yīng)性也有待改善。將SOA程序開發(fā)框架科學(xué)應(yīng)用到軟件工程之中,能夠以面向?qū)ο蟮募夹g(shù)為基礎(chǔ),以此開展研發(fā)工作,從而確定軟件開發(fā)的方式,針對軟件中所涉及的全部邏輯開展科學(xué)有效的分離工作,并借助消息中間件,針對軟件內(nèi)的構(gòu)成部分,開展異步通信處理操作,從而大幅度增強軟件的適應(yīng)能力。對于SOA程序開發(fā)框架中的服務(wù)業(yè)務(wù),消息代理可以進行封裝,讓處于軟件框架之中的核心職能,有效實現(xiàn)完全解耦。
3.2 論組件復(fù)用模式的應(yīng)用情況
在SOA程序開發(fā)框架之中,服務(wù)是其工作的核心內(nèi)容,組件復(fù)用模式在其中得到科學(xué)應(yīng)用,能夠支持多種形式、功能各不相同的軟件,通過運用組件復(fù)用模式,能夠針對組件對象,開展高效優(yōu)質(zhì)的管理。另外,由于關(guān)于組件復(fù)用模式的組件具有分布式的特點,故而對計算環(huán)境具有較高的依賴性,致使組件支撐和運行技術(shù)之間多表現(xiàn)為異構(gòu)性特征。為了保障這部分逐漸能夠展現(xiàn)出優(yōu)良的復(fù)用性,SOA程序開發(fā)框架可以利用諸如類似SDO、SCA的服務(wù)模式,以構(gòu)建具有高層次屬性的解耦模型,在SOA程序開發(fā)架構(gòu)的應(yīng)用中,針對組件開展標(biāo)準(zhǔn)分封裝工作,完成安裝、重組等工作,從而讓基于服務(wù)組件、程序語言和不同開發(fā)機構(gòu)的復(fù)用得以實現(xiàn),以切實增強其兼容性。
3.3 論消息機制的應(yīng)用情況
就傳統(tǒng)組件而言,這部分組件大多借由CORBA以及COM這類技術(shù),得以完成服務(wù)器商和客戶端的對象調(diào)用。然而,這種對象調(diào)用策略適用于具備開放屬性的網(wǎng)絡(luò)環(huán)境,針對不同語言及平臺數(shù)據(jù),需要開展對應(yīng)的定義工作,從而讓不同組件之間能夠完成調(diào)用對象及信息組合的功能。
3.4 科學(xué)結(jié)合Web與SOA程序開發(fā)框架
在軟件工程中,在應(yīng)用SOA程序開發(fā)框架時,需要科學(xué)應(yīng)用Web服務(wù),將兩者有效結(jié)合起來,給研發(fā)的軟件賦予網(wǎng)絡(luò)通信反饋、處理以及封裝功能。此外,將兩者科學(xué)結(jié)合在一起,有助于豐富軟件的功能屬性,提升軟件的使用性能,從而使軟件具備良好的安全保障功能、通信功能以及服務(wù)建模功能等,將現(xiàn)代化的方式及理念科學(xué)地應(yīng)用到服務(wù)編程、建模等各個階段,從而提升軟件的運行性能。
4 結(jié) 論
就SOA程序開發(fā)框架而言,其界面模式并不是一成不變的,能夠在交換環(huán)節(jié)實現(xiàn)數(shù)據(jù)交換,未涵蓋邏輯業(yè)務(wù)信息的內(nèi)容。SOA程序服務(wù)框架具備遠程調(diào)用功能,可以作用到子程序及本地函數(shù)。故而程序員在開展軟件研發(fā)工作時,SOA程序開發(fā)框架樂意支持全新的服務(wù)模式,對有效縮短研發(fā)周期具有積極作用。
參考文獻:
[1] 李永紅.SOA在軟件工程開發(fā)中的應(yīng)用 [J].電子技術(shù)與軟件工程,2017(7):52.
[2] 楊菡,龔業(yè).基于SOA框架下的電子商務(wù)平臺 [J].電子技術(shù)與軟件工程,2016(23):206.
[3] 岳兆娟,史劼,李斌,等.一種基于SOA的可信軟件體系架構(gòu)模型 [J].中國電子科學(xué)研究院學(xué)報,2016,11(3):315-318.
作者簡介:趙立新(1981.10-),男,漢族,河南鎮(zhèn)平人,講師,碩士研究生。研究方向:計算機網(wǎng)絡(luò)、軟件開發(fā)、無線傳感。