国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

服務(wù)軟件體系架構(gòu)原理與范例研究

2016-03-05 23:01:06任香
無(wú)線互聯(lián)科技 2015年24期

任香

摘要:隨著計(jì)算機(jī)技術(shù)的進(jìn)步,社會(huì)的運(yùn)轉(zhuǎn)方式已經(jīng)出現(xiàn)了一定的改變,它對(duì)人類生活產(chǎn)生了非常深刻的影響,與此同時(shí),人們對(duì)軟件的要求也越來(lái)越高。但是由于軟件升級(jí)無(wú)法進(jìn)入大規(guī)模的流水線生產(chǎn),其在數(shù)量和質(zhì)量上都沒(méi)有辦法滿足消費(fèi)者的需要。軟件產(chǎn)品本身的不足嚴(yán)重影響了計(jì)算機(jī)的進(jìn)步,成為計(jì)算機(jī)發(fā)展路途上的一個(gè)重要阻礙。解決這種危機(jī),幫助軟件實(shí)現(xiàn)規(guī)?;纳a(chǎn),是未來(lái)軟件行業(yè)進(jìn)步發(fā)展的必經(jīng)之路。文章對(duì)面向服務(wù)軟件體系架構(gòu)原理與范例進(jìn)行了研究。

關(guān)鍵詞:軟件體系結(jié)構(gòu);面向服務(wù)體系架構(gòu);協(xié)同商務(wù)平臺(tái)

軟件開(kāi)發(fā)從開(kāi)始之初就已經(jīng)經(jīng)過(guò)了非常多的改變,其傳統(tǒng)的結(jié)構(gòu)已經(jīng)沒(méi)有辦法滿足現(xiàn)階段軟件的生存需要。隨著電腦的普及,軟件行業(yè)也迎來(lái)了面向服務(wù)的新型架構(gòu)階段。由于這個(gè)時(shí)期軟件的應(yīng)用范圍變得越來(lái)越大,開(kāi)發(fā)難度逐漸增加,究竟應(yīng)該怎樣降低開(kāi)發(fā)成本,提高現(xiàn)有資源的利用率,成為每一個(gè)軟件行業(yè)研究人員急需解決的問(wèn)題。在這樣的前提下,軟件行業(yè)提出了一個(gè)新型的概念,那就是所謂的“面向服務(wù)體系結(jié)構(gòu)”,即SOA。通過(guò)利用這樣的概念,能夠很好地提高軟件行業(yè)的敏捷性,使行業(yè)以更快的速度面對(duì)更新的挑戰(zhàn),增加行業(yè)本身的競(jìng)爭(zhēng)優(yōu)勢(shì),為消費(fèi)者提供更高水平的軟件服務(wù),使鍛件行業(yè)生產(chǎn)實(shí)現(xiàn)規(guī)?;?、流水線化、產(chǎn)業(yè)化。

1 軟件危機(jī)的表現(xiàn)

所謂軟件危機(jī)就是指在計(jì)算機(jī)軟件開(kāi)發(fā)時(shí)所遇到的各種各樣的問(wèn)題。實(shí)際上從計(jì)算機(jī)出現(xiàn)以來(lái),軟件危機(jī)就一直存在,但是因?yàn)樽畛踯浖鄬?duì)比較簡(jiǎn)單,并不像現(xiàn)在的軟件規(guī)模比較大,所以這種危機(jī)并沒(méi)有得到非常突出的表現(xiàn),近幾年由于軟件開(kāi)發(fā)的規(guī)模越來(lái)越大,復(fù)雜程度越來(lái)越高,日常運(yùn)營(yíng)和維護(hù)的成本也在逐漸增加,這就導(dǎo)致軟件危機(jī)變得越來(lái)越突出。

1.1 軟件成本越來(lái)越高

在計(jì)算機(jī)產(chǎn)生之初,最主要的應(yīng)用領(lǐng)域是軍事領(lǐng)域。正因?yàn)槿绱?,?dāng)時(shí)進(jìn)行計(jì)算機(jī)開(kāi)發(fā)的經(jīng)費(fèi)主要由國(guó)家承擔(dān),開(kāi)發(fā)者本身并不考慮成本的問(wèn)題。由于計(jì)算機(jī)越來(lái)越普及,表現(xiàn)出明顯的民用化傾向,投資者就必須考慮軟件開(kāi)發(fā)的成本問(wèn)題。與此同時(shí),計(jì)算機(jī)硬件的價(jià)錢(qián)出現(xiàn)了明顯的跳水,這就使軟件成本在計(jì)算機(jī)系統(tǒng)中所占比例越來(lái)越高。

1.2 開(kāi)發(fā)進(jìn)度難以控制

軟件實(shí)際上就是一種智力產(chǎn)品,其存在的前提是內(nèi)在的邏輯關(guān)系,這也是它相較于其他產(chǎn)品所表現(xiàn)出來(lái)的巨大不同。相較于硬件產(chǎn)品而言,傳統(tǒng)的加班制度以及倒班制度并沒(méi)有辦法應(yīng)用在現(xiàn)在的軟件開(kāi)發(fā)上。程序員在進(jìn)行軟件開(kāi)發(fā)的時(shí)候,會(huì)有非常多意料之外的因素出現(xiàn),影響了軟件開(kāi)發(fā)的整個(gè)流程,使其難以真正按照預(yù)先設(shè)置的計(jì)劃進(jìn)行。這也增加了項(xiàng)目計(jì)劃和項(xiàng)目論證的難度。此外,因?yàn)檐浖到y(tǒng)的結(jié)構(gòu)比較復(fù)雜,每一個(gè)部分都存在著非常密切的關(guān)系,簡(jiǎn)單地增加人手是沒(méi)有辦法提高軟件開(kāi)發(fā)的效率的,有些時(shí)候還有可能加重軟件開(kāi)發(fā)中出現(xiàn)的問(wèn)題。

1.3 軟件質(zhì)量難以令人滿意

軟件開(kāi)發(fā)中常遇到的另一個(gè)重要的問(wèn)題就是很多軟件雖然能夠按時(shí)完成相關(guān)任務(wù),但是其本身所表現(xiàn)出來(lái)的結(jié)果卻很難讓人滿意,這一點(diǎn)在全世界范圍內(nèi)都非常常見(jiàn),程序上的故障很有可能帶來(lái)更加嚴(yán)重的損失。在這個(gè)過(guò)程里,因?yàn)檎麄€(gè)軟件開(kāi)發(fā)并沒(méi)有整體的思想引導(dǎo),程序員本身習(xí)慣于根據(jù)自己的想法開(kāi)發(fā),這就導(dǎo)致軟件設(shè)計(jì)本身帶有非常大的主觀色彩,這也就是軟件產(chǎn)品本身質(zhì)量難以讓所有客戶滿意的最重要原因。

1.4 軟件維護(hù)成本高

大部分的軟件在投入使用之后還是存在著一定的錯(cuò)誤的,在一些情況下這種錯(cuò)誤就會(huì)導(dǎo)致故障,所以很多軟件都是需要進(jìn)行日常維護(hù)的。可是,因?yàn)樵谲浖_(kāi)發(fā)的過(guò)程里并沒(méi)有遵照相關(guān)的標(biāo)準(zhǔn)進(jìn)行,其本身帶有主觀色彩,缺乏必要的技術(shù)性文檔,這就增加了軟件維護(hù)的難度。同時(shí),軟件修改本身存在著非常大的危險(xiǎn),也有可能為軟件帶來(lái)新的潛在的問(wèn)題。

2 面向服務(wù)體系架構(gòu)理論概念

2.1 面向服務(wù)體系架構(gòu)的含義

實(shí)際上,現(xiàn)在學(xué)界對(duì)于面向服務(wù)體系架構(gòu)尚沒(méi)有形成統(tǒng)一的定義。很多組織從自己的角度對(duì)SOA進(jìn)行了定義,其中比較常見(jiàn)的包括以下幾種。

W3C認(rèn)為:“面向服務(wù)體系架構(gòu)實(shí)際上就是一種應(yīng)用體系架構(gòu),在這個(gè)概念中所有的功能實(shí)際上都是一種獨(dú)立的服務(wù),每一種服務(wù)都有著自己獨(dú)立的可調(diào)用接口,可以利用事先設(shè)計(jì)好的程序來(lái)調(diào)動(dòng)相關(guān)服務(wù)完成整個(gè)過(guò)程”。SOA的核心實(shí)際上就是服務(wù),對(duì)此W3C認(rèn)為,這里所說(shuō)的服務(wù)器本質(zhì)是一種結(jié)果,是服務(wù)提供者通過(guò)一系列的工作最終給服務(wù)使用者提供的結(jié)果。

而Service-architecture.com則認(rèn)為,SOA實(shí)際上是一種集合,是對(duì)各種服務(wù)的整合,每一種服務(wù)之間存在著必要的溝通,這種溝通的本質(zhì)就是簡(jiǎn)單、基本的數(shù)據(jù)傳輸。SOA實(shí)際上也可以通過(guò)各種各樣的服務(wù)協(xié)調(diào)完成活動(dòng),這些服務(wù)之間存在著一定的方法相互連接。這里所說(shuō)的服務(wù)強(qiáng)調(diào)的是精確的定義、完善的封裝。

2.2 面向服務(wù)體系架構(gòu)的優(yōu)點(diǎn)

面向服務(wù)體系架構(gòu)本身有著非常多的特點(diǎn),其抽象性比較高,操作起來(lái)比較靈活,這些特點(diǎn)決定了面向服務(wù)體系架構(gòu)在很多方面都能夠滿足用戶的需要。

(1)服務(wù)體系架構(gòu)能夠?yàn)檐浖_(kāi)發(fā)者提供一個(gè)更加自由的開(kāi)發(fā)模式,幫助軟件企業(yè)改善開(kāi)發(fā)方法,提高開(kāi)發(fā)技術(shù),改進(jìn)現(xiàn)有的開(kāi)發(fā)效率。服務(wù)架構(gòu)能夠利用現(xiàn)在的軟件提供者以及軟件的使用方之間存在的松散耦合關(guān)系,屏蔽其本身存在的過(guò)分復(fù)雜的內(nèi)在邏輯,相較于系統(tǒng)的表示層,它僅僅能夠照顧到服務(wù)接口,對(duì)于其本身的相關(guān)細(xì)節(jié)并不重視。利用標(biāo)準(zhǔn)的接口,各種服務(wù)能夠相互引用,不必再考慮服務(wù)的平臺(tái)、開(kāi)發(fā)的語(yǔ)言,大大提高了軟件開(kāi)發(fā)的效率。

(2)面向服務(wù)的體系結(jié)構(gòu)另一個(gè)最大的優(yōu)點(diǎn)就是能夠利用現(xiàn)有的系統(tǒng)進(jìn)行開(kāi)發(fā),并不需要對(duì)原有的系統(tǒng)重新創(chuàng)建,在合適的情況下,利用現(xiàn)有的框架能夠幫助整個(gè)企業(yè)改善服務(wù)效率,將現(xiàn)在的業(yè)務(wù)服務(wù)變成各種各樣的組件服務(wù)的綜合體。利用這一服務(wù)架構(gòu)能夠忽略其本身的細(xì)節(jié)性問(wèn)題,實(shí)現(xiàn)較為復(fù)雜的數(shù)據(jù)傳輸,提高軟件開(kāi)發(fā)的效率,為批量化生產(chǎn)奠定基礎(chǔ)。

3 SOA架構(gòu)的ECC系統(tǒng)總體設(shè)計(jì)

ECC利用面向服務(wù)體系架構(gòu),其相關(guān)的展開(kāi)技術(shù)可以利用微軟的XML Web Services完成。系統(tǒng)里的每一個(gè)部分實(shí)際上都有自己獨(dú)立的功能,而這每一種功能實(shí)際上就是一種獨(dú)立的服務(wù),而這些獨(dú)立的服務(wù)能夠給客戶端能夠提供網(wǎng)絡(luò)服務(wù)接口。業(yè)務(wù)外觀層,其業(yè)務(wù)流程的形成主要是通過(guò)2種途徑來(lái)實(shí)現(xiàn)的:一種是單個(gè)服務(wù),另一種是多種服務(wù)結(jié)合而成的,這也給表示層奠定了一個(gè)整體的輪廓。

實(shí)際上,在現(xiàn)有的各種各樣的客戶端中,大部分的客戶端實(shí)際上還是能夠利用標(biāo)準(zhǔn)化的網(wǎng)絡(luò)服務(wù)接口的應(yīng)用來(lái)實(shí)現(xiàn)業(yè)務(wù)邏輯的。通過(guò)這樣的設(shè)計(jì)能夠保證業(yè)務(wù)伙伴的外部用戶和內(nèi)部用戶訪問(wèn)一樣的服務(wù),這將能夠?qū)⑵髽I(yè)和其外部相應(yīng)合作伙伴之間的流程和業(yè)務(wù)進(jìn)行必要的整合。比如說(shuō),在需求鏈子系統(tǒng)的相關(guān)建構(gòu)工作中,可以利用產(chǎn)品查詢功能,幫助外部客戶在企業(yè)的系統(tǒng)里調(diào)動(dòng)需要的產(chǎn)品信息。與此同時(shí),企業(yè)不僅能夠給自己的合作伙伴提供必要的幫助,其本身也是服務(wù)的重大受益者。換言之,企業(yè)本身也能夠利用供應(yīng)商提供的各種各樣的訂單服務(wù)來(lái)完成訂單的相關(guān)工作。

而涉及系統(tǒng)的業(yè)務(wù)邏輯問(wèn)題時(shí),可以利用第三方提供的服務(wù)完成相關(guān)工作。比如當(dāng)一個(gè)企業(yè)想要在自己的系統(tǒng)中添加采購(gòu)、銷售、倉(cāng)庫(kù)、財(cái)務(wù)等內(nèi)容的時(shí)候,其最重要的工作就是利用企業(yè)自己的需求進(jìn)行相關(guān)的客戶端設(shè)計(jì),隨后通過(guò)遠(yuǎn)程連接,提供商提供一定的服務(wù),這不僅能夠大大降低軟件開(kāi)發(fā)的工作量,還能夠提高工作的效率,為軟件的批量化生產(chǎn)、規(guī)模化生產(chǎn)奠定扎實(shí)基礎(chǔ)。

4 結(jié)語(yǔ)

軟件開(kāi)發(fā)是近幾年軟件行業(yè)面對(duì)的最重要的障礙之_,也是軟件危機(jī)最重要的表現(xiàn)。國(guó)內(nèi)現(xiàn)在的軟件生產(chǎn)大多面臨著難以推進(jìn)規(guī)?;?、產(chǎn)業(yè)化生產(chǎn)的窘境。這也影響了軟件為客戶提供服務(wù)的整體質(zhì)量水平,對(duì)于整個(gè)軟件行業(yè)的發(fā)展是非常不利的,所以推進(jìn)軟件生產(chǎn)的改革已經(jīng)成為迫在眉睫的問(wèn)題。面向服務(wù)軟件體系架構(gòu)的實(shí)施,能夠極大地提高軟件開(kāi)發(fā)的效率,降低軟件開(kāi)發(fā)人員的工作量,保證軟件的質(zhì)量,為日后軟件的維護(hù)工作奠定扎實(shí)的基礎(chǔ),這也是幫助軟件行業(yè)克服危機(jī)的一個(gè)重要舉措,同時(shí)由于其本身對(duì)于硬件的要求比較低,成本相對(duì)也比較低,所以有著較強(qiáng)的可行性和可實(shí)踐性。本文主要對(duì)面向服務(wù)軟件體系架構(gòu)的相關(guān)原理進(jìn)行了簡(jiǎn)要的介紹,并對(duì)相關(guān)的范例進(jìn)行了簡(jiǎn)單的分析。

海门市| 九江市| 柏乡县| 永年县| 汪清县| 土默特右旗| 延津县| 铁力市| 共和县| 宣恩县| 吴旗县| 中牟县| 乌审旗| 奉节县| 巍山| 盐山县| 青田县| 雷山县| 乌兰县| 平谷区| 棋牌| 库车县| 莎车县| 元朗区| 吴堡县| 琼中| 西宁市| 东乌| 永靖县| 呈贡县| 安阳县| 德惠市| 景宁| 襄樊市| 文安县| 安岳县| 顺平县| 新密市| 舞阳县| 漯河市| 余姚市|