新聞中心
傳統(tǒng)的三層架構(gòu)通常包括一個(gè)呈現(xiàn)層、一個(gè)中間層或應(yīng)用層,和一個(gè)數(shù)據(jù)層。在某些情況下,開(kāi)發(fā)人員要負(fù)責(zé)這三層的所有工作。在較大規(guī)模的公司中,可能會(huì)有專門的UI開(kāi)發(fā)人員、應(yīng)用開(kāi)發(fā)人員和數(shù)據(jù)庫(kù)開(kāi)發(fā)人員等。在SOA中,除了在集成應(yīng)用時(shí),可以說(shuō)應(yīng)用這個(gè)概念已經(jīng)與SOA毫無(wú)干系。在SOA中,我們構(gòu)建的是獨(dú)立于應(yīng)用的業(yè)務(wù)服務(wù)。下圖列出了SOA所需要的開(kāi)發(fā)人員的類型。

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于做網(wǎng)站、成都網(wǎng)站制作、浦東網(wǎng)絡(luò)推廣、成都微信小程序、浦東網(wǎng)絡(luò)營(yíng)銷、浦東企業(yè)策劃、浦東品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供浦東建站搭建服務(wù),24小時(shí)服務(wù)熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
現(xiàn)在來(lái)談?wù)剺I(yè)務(wù)服務(wù)。業(yè)務(wù)服務(wù)是各層所有開(kāi)發(fā)人員所做的工作的集合體。比如一個(gè)像在亞馬遜上所用的“購(gòu)物車”這樣的業(yè)務(wù)服務(wù),它很可能是由服務(wù)和/或寄存在這個(gè)架構(gòu)中的各層組件所構(gòu)成。呈現(xiàn)層包含最終的使用方式,也就是用戶最終看到并在瀏覽器上使用的樣子。業(yè)務(wù)過(guò)程層包含引導(dǎo)用戶從開(kāi)始到最后付款結(jié)束的整套邏輯流。業(yè)務(wù)規(guī)則層包含稅收、折扣、會(huì)員等規(guī)則,而底層的數(shù)據(jù)元素和結(jié)構(gòu)則是在數(shù)據(jù)層處理的。在許多情況下,由于合并、兼并、多年的遺留系統(tǒng)、第三方應(yīng)用的購(gòu)買等諸多因素,公司會(huì)使用多種數(shù)據(jù)結(jié)構(gòu)提供相似的功能。數(shù)據(jù)層的存在就是為了提取這些數(shù)據(jù)結(jié)構(gòu)并以相同的形式呈現(xiàn)出來(lái),掩蓋底層的復(fù)雜實(shí)現(xiàn)方式(可以想像主數(shù)據(jù)管理)。
所以,要開(kāi)發(fā)這樣一個(gè)購(gòu)物車的業(yè)務(wù)服務(wù),所有工作在架構(gòu)中不同層上的開(kāi)發(fā)人員都要全力協(xié)作,并以滿足公司所采用的SOA治理中所定義的業(yè)務(wù)需求與技術(shù)需要為前提。其中的技術(shù)需要可能是:
◆遵守WS-*安全標(biāo)準(zhǔn)
◆數(shù)據(jù)加密策略
◆平臺(tái)無(wú)關(guān)
◆滿足具體的性能要求
為什么要說(shuō)這么多呢?因?yàn)樵诿嫦蚍?wù)的架構(gòu)中,一個(gè)成功的開(kāi)發(fā)人員需要具備以下特征:
◆靈活、變通
◆協(xié)作能力
◆可以與同僚一起檢查他們的工作
◆能看清大局
◆不會(huì)固執(zhí)地偏好某種特定技術(shù)
◆能接受建設(shè)性的批評(píng)
◆創(chuàng)新精神
那些不容別人批評(píng)自己的工作或偏好某一種技術(shù)的人可能會(huì)在SOA中遇到不少困難。SOA目標(biāo)之一就是構(gòu)建靈活、可維護(hù)性好、松耦合、與平臺(tái)無(wú)關(guān)的軟件。要構(gòu)建這樣一個(gè)軟件就必須從軟件開(kāi)發(fā)轉(zhuǎn)向軟件工程。簡(jiǎn)單來(lái)說(shuō),我們必須從拖曳的工作方式轉(zhuǎn)向計(jì)劃建模的工作方式。我們必須能夠接受協(xié)作、同行審查和治理。如果開(kāi)發(fā)人員不喜歡這些東西,他們要么選擇改變,要么選擇離開(kāi)。否則他們將成為巨大隱患,并且一直拖后腿。
好了,現(xiàn)在我們來(lái)談?wù)勯_(kāi)發(fā)人員的分類。但是在此之前需要強(qiáng)調(diào)一下,這里討論的是分類,而不是個(gè)體。在小型企業(yè)里,一個(gè)開(kāi)發(fā)人員可能會(huì)跨越多個(gè)分類。在大型企業(yè)中,我們可能會(huì)看到非常專業(yè)化的開(kāi)發(fā)人員工作在架構(gòu)中的單獨(dú)一層。最后聲明一點(diǎn):討論的默認(rèn)前提是存在一個(gè)架構(gòu)團(tuán)隊(duì),并且各層中存在一定程度的標(biāo)準(zhǔn)與治理。
UI開(kāi)發(fā)人員
如果公司有能力專門化,那么這會(huì)是非常棒的一層。這層的開(kāi)發(fā)人員并不需要非常高深的技術(shù)。重要的是他們要明白可用性、UI標(biāo)準(zhǔn)和Web界面的最佳實(shí)踐。這些人可以從模擬開(kāi)始,與業(yè)務(wù)部門或業(yè)務(wù)分析員合作分析各種情況,最終達(dá)到一致的結(jié)果。這些開(kāi)發(fā)人員必須能用業(yè)務(wù)用語(yǔ)和業(yè)務(wù)部門交流,并且能明白商務(wù)用戶如何使用網(wǎng)絡(luò)技術(shù)進(jìn)行交互。
業(yè)務(wù)過(guò)程開(kāi)發(fā)人員
在這個(gè)業(yè)務(wù)過(guò)程層中有兩種截然不同的類型:一種處理業(yè)務(wù)過(guò)程建模,另一種處理業(yè)務(wù)過(guò)程與底層服務(wù)和系統(tǒng)的集成。在某些公司里可能會(huì)讓一個(gè)人完成這兩項(xiàng)任務(wù),但是更多情況下這會(huì)是兩個(gè)人的工作,因?yàn)檫@兩方面需要不同的技能。負(fù)責(zé)業(yè)務(wù)過(guò)程建模的人甚至可以不是IT人士。某些公司在業(yè)務(wù)方面設(shè)有專門部門,部門中的人主要負(fù)責(zé)改善并自動(dòng)化業(yè)務(wù)過(guò)程。(這種公司都是使用6Six Sigma或全員質(zhì)量管理的公司。)
業(yè)務(wù)過(guò)程集成是一個(gè)技術(shù)活,它需要Web服務(wù)、REST、JMS隊(duì)列或其它類似的專業(yè)知識(shí)。負(fù)責(zé)集成的人是將業(yè)務(wù)過(guò)程與控制業(yè)務(wù)服務(wù)流程和組合業(yè)務(wù)應(yīng)用(通常稱為編排)的后端技術(shù)聯(lián)系到一起的人。
業(yè)務(wù)規(guī)則開(kāi)發(fā)人員
這一類型有點(diǎn)模糊,并不是所有架構(gòu)都有一個(gè)具體的業(yè)務(wù)規(guī)則層。某些情況下,這些業(yè)務(wù)規(guī)則是在數(shù)據(jù)層中進(jìn)行控制的。對(duì)于那些有非常動(dòng)態(tài)的業(yè)務(wù)規(guī)則,特別是以客戶為中心并且允許終端用戶甚至顧客更新規(guī)則的公司來(lái)說(shuō),提取出一個(gè)業(yè)務(wù)規(guī)則層來(lái)是很有必要的。如果公司有一個(gè)業(yè)務(wù)規(guī)則層,并且使用某個(gè)工具來(lái)管理業(yè)務(wù)規(guī)則,那么這個(gè)公司很可能會(huì)需要一個(gè)技師來(lái)管理這一層,就像數(shù)據(jù)庫(kù)維護(hù)人員維護(hù)數(shù)據(jù)庫(kù)層一樣。在某些情況下,這份工作也可能交給數(shù)據(jù)庫(kù)維護(hù)人員來(lái)做,當(dāng)然這是靈活的。
不管由誰(shuí)來(lái)做,他們都必須明白這一層的含義并尋找能讓終端用戶更快地對(duì)業(yè)務(wù)變化做出反應(yīng)的辦法。比如,一個(gè)貸款審批程序需要這樣的一個(gè)特定狀態(tài)的業(yè)務(wù)規(guī)則:貸款申請(qǐng)人需要具備多少比例的資產(chǎn)才有可能得到審批。這個(gè)比例值經(jīng)常要根據(jù)狀態(tài)進(jìn)行改動(dòng),所以必須能夠盡量快地保持更新。最佳的辦法是把IT從這個(gè)過(guò)程中剔除出去,讓某個(gè)具有授權(quán)的特定的人(或系統(tǒng))按需對(duì)這個(gè)值進(jìn)行更新。不管是誰(shuí)負(fù)責(zé)這個(gè)業(yè)務(wù)規(guī)則,他都必須能夠與業(yè)務(wù)部門和/或業(yè)務(wù)分析員共同協(xié)作,明白變動(dòng)的頻率、許可權(quán)限以及各種業(yè)務(wù)規(guī)則所帶來(lái)的影響。另外,與此相關(guān)的還有大量與創(chuàng)建和管理規(guī)則相關(guān)的日常支出,負(fù)責(zé)人必須能夠權(quán)衡利弊并做出決定。
數(shù)據(jù)服務(wù)開(kāi)發(fā)人員
或許我們應(yīng)該稱他為信息結(jié)構(gòu)工程師。他要負(fù)責(zé)提取底層的數(shù)據(jù)層并將其暴露給架構(gòu)中的其它層,甚至提供給外部的其它系統(tǒng)。比如,假如購(gòu)物車業(yè)務(wù)服務(wù)允許多種支付方式(美國(guó)運(yùn)通卡、Visa和Pay Pal)。另外,不同產(chǎn)品(書籍、DVD、衣物等)分別由不同的庫(kù)存系統(tǒng)進(jìn)行管理。我們需要隱藏這些復(fù)雜的東西,并可以隨時(shí)添加其它的支付服務(wù)和庫(kù)存管理方式。因此,我們使用數(shù)據(jù)服務(wù)來(lái)為購(gòu)物車提供數(shù)據(jù)的邏輯視圖。也就是說(shuō),我們創(chuàng)建了一個(gè)可以提供給購(gòu)物車的標(biāo)準(zhǔn)的支付與庫(kù)存信息。只要購(gòu)物車使用的是這些標(biāo)準(zhǔn)消息,那么底層的各種支付與庫(kù)存服務(wù)的物理實(shí)現(xiàn)就毫無(wú)干系。購(gòu)物車服務(wù)只需要識(shí)別這些信息的標(biāo)準(zhǔn)格式,而標(biāo)準(zhǔn)信息到接收系統(tǒng)的轉(zhuǎn)換工作就交給數(shù)據(jù)服務(wù)層。
這一層的開(kāi)發(fā)人員(或架構(gòu)師)必須具備數(shù)據(jù)建模和數(shù)據(jù)庫(kù)設(shè)計(jì)領(lǐng)域方面的知識(shí)。即使公司有工具可以管理這一層(我們也建議這樣做),管理員這一職位也是需要的。
數(shù)據(jù)庫(kù)開(kāi)發(fā)人員
現(xiàn)在各個(gè)企業(yè)通常都有這一層,這就是DBA工作的地方。在SOA環(huán)境下,DBA必須更緊密地與架構(gòu)中其它層的開(kāi)發(fā)人員合作。他們必須明白各層的安全與性能要求,并保證底層的數(shù)據(jù)模型能夠滿足這些要求。因?yàn)榕f系統(tǒng)的集成在當(dāng)前的SOA建設(shè)中還很常見(jiàn),所以通常都會(huì)需要DBA創(chuàng)建結(jié)構(gòu)的視圖,甚至建立新的ETL過(guò)程為架構(gòu)中的其它層提供數(shù)據(jù)視圖。
安全開(kāi)發(fā)人員
雖然安全專家們可以不做實(shí)際的開(kāi)發(fā)工作,但是必須有人或者有團(tuán)隊(duì)能夠了解當(dāng)前SOA所面臨的安全方面的挑戰(zhàn)。SOA可能會(huì)產(chǎn)生以下威脅:
◆暴露原本不可暴露在防火墻外的舊系統(tǒng)
◆多系統(tǒng)之間的免登錄切換需要信任
◆將一條信息分別按不同的安全準(zhǔn)則發(fā)往多個(gè)合作伙伴
◆將信用卡或其它隱私問(wèn)題暴露到網(wǎng)絡(luò)上
現(xiàn)在的多層安全模型在B2B類型的SOA上尚存在許多不足。這一領(lǐng)域的開(kāi)發(fā)人員必須對(duì)信息協(xié)議、安全性最佳實(shí)踐、網(wǎng)絡(luò)架構(gòu)、法案(比如HIPAA、SOX、PCI)和WS-*或其它標(biāo)準(zhǔn)有深入的了解。
總結(jié)
我們可以看到,成功實(shí)現(xiàn)SOA需要多種截然不同的開(kāi)發(fā)技能。要找到一個(gè)熟練掌握所有技能的人是不實(shí)際的。即使有這么一個(gè)人,那么他也只可能在你的架構(gòu)團(tuán)隊(duì)里。這個(gè)架構(gòu)的高明之處在于它能夠把各層的問(wèn)題分解并解決掉。一個(gè)業(yè)務(wù)服務(wù)可以由各層的許多人員共同完成。這需要堅(jiān)固的治理、扎實(shí)的技巧和團(tuán)隊(duì)協(xié)作,而這也正是為什么需要在合適的位置安排合適的人來(lái)解決SOA中出現(xiàn)問(wèn)題的原因。下一篇文章將討論SOA系統(tǒng)中測(cè)試人員所需技能,以及他們與開(kāi)發(fā)團(tuán)隊(duì)的關(guān)系。
網(wǎng)頁(yè)名稱:SOA開(kāi)發(fā)技能中的不同開(kāi)發(fā)人員類型介紹
瀏覽地址:http://www.dlmjj.cn/article/dpdcpgd.html


咨詢
建站咨詢
