Posted on 2006-10-03 17:14
Dart 閱讀(1873)
評論(6) 編輯 收藏 所屬分類:
SCA
發(fā)個鬧騷
我們習(xí)慣把那些給企業(yè)單位做項目的公司稱為集成商。
現(xiàn)在來看,很多集成商日子并不好過,集成商由于競爭激烈,拿到項目變得比以前困難了,再加上現(xiàn)在給企業(yè)和單位做項目越來越難,
一個項目的實際投入和最后的回報越來越接近相等,于是利潤變得越來越少。
現(xiàn)在的項目開發(fā)商的投入越來越大,比如一個金融行業(yè)的項目開發(fā)商,從程序員到行業(yè)專家,各個層面的人才都要有;一個項目開發(fā)過程基本就是從無到有,而以前的項目積累,真正能復(fù)用的部分很少,最多的就是拿上一個項目的需求分析,作為這個項目開發(fā)的參考,將以前的代碼摘出來,能用就用,不能用的也將就用。
為了獲得最大利潤,開發(fā)商想盡了一切方法:比如加強(qiáng)對軟件開發(fā)過程的管理,盡量優(yōu)化開發(fā)過程;構(gòu)建自己的重用庫,盡量做到一勞永逸;壓縮開發(fā)人員的成本支出(薪水下降),盡可能提供工作效率(加班),但是誰有能想到,即使這么做了,還是難以應(yīng)付日趨增加的項目的開發(fā)成本呢,再加上國內(nèi)軟件行業(yè)的不規(guī)范化,錢是越來越難掙了。
而我們這些處于低層的開發(fā)人員是直接受害者:項目獎金成為了美麗的傳說,按時發(fā)放工資已經(jīng)成為我們在同行面前驕傲的資本,于是開發(fā)人員紛紛以跳槽向公司提出抗議。領(lǐng)導(dǎo)們的日子更不好過,面對人才流動的加劇,項目周期不得不一拖再拖,最后也只能接受客戶壓價的決定,面對這種得不符失的情況,領(lǐng)導(dǎo)們開始吶喊:拿什么奉賢給你,我的員工?能
發(fā)工資就不錯了,還奢望項目獎金呢。就這樣,惡性循環(huán)開始了。
1.1 離職
這種現(xiàn)象我想并不是某一家公司是這樣的,應(yīng)該說在很多公司都存在這種問題。那為什么導(dǎo)致這種問題的存在呢?競爭激烈?客戶越來越難擺平?還是公司自身存在的諸多問題呢?其實,這些都不是問題,每個行業(yè)都存在上述問題,軟件企業(yè)需要做的并不是解決上述問題,而是認(rèn)真思考如何去降低我們的開發(fā)成本。
開發(fā)
平臺/框架的誕生
就如同上面所說的,多少年來,我們?yōu)樵S多企業(yè),政府部門,銀行等單位開發(fā)了一套又一套的系統(tǒng),每套系統(tǒng)的開發(fā)過程都如出一轍:需求分析,概要設(shè)計,詳細(xì)設(shè)計,編碼,
Debug
,交付,然后緊接著就是不停地根據(jù)用戶的需求更改或者增加系統(tǒng)功能,假設(shè)在需求分析和設(shè)計階段,我們做得很好,能夠很容易地應(yīng)付用戶的需求變更,但是也不能做到應(yīng)變自如。
在這種前提下,近年來,有很多公司開發(fā)研發(fā)“框架平臺”類產(chǎn)品,這一類產(chǎn)品可以分到中間件的范疇,作為業(yè)務(wù)邏輯層的中間件存在,它的任務(wù)就是將一些已經(jīng)成型的技術(shù)和行業(yè)業(yè)務(wù)邏輯成了組件的形式,這些組件之間有著很強(qiáng)的交互性能,然后通過開發(fā)工具將這些組件按照業(yè)務(wù)需要像搭積木一樣組合起來,形成一套業(yè)務(wù)邏輯框架。這大大縮短了開發(fā)時間。這一類的產(chǎn)品目前不少,比如我以前所在公司的
ezONE
平臺,普元的
EOS
平臺,科諾的
KA
平臺,還有東方通的
BOA
等。
而這些“平臺”真的能夠提高我們的開發(fā)效率嗎?在一定程度上說是可以的,但是這需要我們已經(jīng)擁有了大量現(xiàn)成的行業(yè)組件。
大量的可用組件,能夠讓開發(fā)人員更少地去關(guān)注技術(shù)細(xì)節(jié),而把更多精力投入到對業(yè)務(wù)本身,讓我們的項目開發(fā)不會由于技術(shù)細(xì)節(jié)而耗費更多的時間。由于組件之間的可以動態(tài)進(jìn)行配置,所以用戶的需求變更對于開發(fā)人員來說只不過是替換一個新的組件,再改變一下組件之間的連接調(diào)用順序而已。
2.1 “就像搭積木一樣簡單”
可惜的是,這些平臺都各自為戰(zhàn),并沒有一個統(tǒng)一的標(biāo)準(zhǔn)。
SOA
和
SCA
SOA(面向服務(wù))并不是什么技術(shù)標(biāo)準(zhǔn),而是一種思想,它是方法論層面上的東西,就像當(dāng)年的
OOP
一樣,只是一種指導(dǎo)我們思考問題的方法。
上面所提到的諸多平臺可以說就是基于
SOA
思想的,但是大部分還是基于構(gòu)件或者組件的。它們把業(yè)務(wù)功能單元設(shè)計成了服務(wù)構(gòu)件,服務(wù)之間通過明確的接口定義進(jìn)行連接起來,這些粗粒度,松偶合的服務(wù)能夠很容易地進(jìn)行整合。
但是
SOA
僅僅是一種思想,并沒有一個特定的技術(shù)規(guī)范或者標(biāo)準(zhǔn),各個廠商為了能夠盡快讓
SOA
“落地”,于是就由數(shù)家比較大的
IT
公司推出了一個基于
SOA
思想的
SCA
框架標(biāo)準(zhǔn)。
SCA
標(biāo)準(zhǔn)目前還在完善階段,它于
2005
年
11
月發(fā)布了
0.9
版本,目前版本已經(jīng)到了
0.96
。在
0.9
版本中,
SCA
標(biāo)準(zhǔn)就提出了
Java
實現(xiàn)以及
C++
實現(xiàn)標(biāo)準(zhǔn),而且在以后的版本中,會陸續(xù)加入其他的實現(xiàn)標(biāo)準(zhǔn),也就是說
SCA
并不是只針對某一種語言的,不同語言或者環(huán)境之間通過開放的,標(biāo)準(zhǔn)的技術(shù)來實現(xiàn)互操作,比如我們常見的WebService等
。
SCA
提出的這套基于
SOA
去構(gòu)建企業(yè)應(yīng)用的編程模型,它的基礎(chǔ)思想就將業(yè)務(wù)功能構(gòu)造成一系列的服務(wù),并且能夠很好地將這些服務(wù)組合起來,達(dá)到解決業(yè)務(wù)需求的目的。在構(gòu)建這些應(yīng)用時所用到的服務(wù),不僅包含新建服務(wù),而且可以包括已有的業(yè)務(wù)應(yīng)用中的業(yè)務(wù)功能,也就是說,
SCA
提供了一套針對服務(wù)組合和服務(wù)創(chuàng)建的模型。
目前國內(nèi)的
普元
已經(jīng)加入到了OSOA組織,參與到了SCA/SDO的規(guī)范制定中,而且
中企動力
和
方欣科技
也作為Supporter加入到OSOA中。
而在實際開發(fā)中,很難說真存在這種一勞永逸的開發(fā)模式
可是隨著時間的推移,誰能保證這些組件庫的功能還能夠滿足用戶的需要呢?退一步說,這些粗粒度的組件庫能夠承擔(dān)多年后的開發(fā)任務(wù)嗎?而對這些組件庫的維護(hù)又怎么辦?
所有的一切我們只能拭目以待。
異想天開
假如真的存在一個完善的,標(biāo)準(zhǔn)化的面向服務(wù)的框架平臺,那我們以后的項目開發(fā)可能會是另外一種模式。
首先,在完善的面向服務(wù)框架平下,很多服務(wù)提供商開始誕生,這些提供商都是有多年行業(yè)經(jīng)驗的開發(fā)商演變而來,他們將以前的項目積累作為服務(wù)發(fā)布出來,根據(jù)業(yè)務(wù)不同,創(chuàng)建出不同的服務(wù),每個服務(wù)能夠完成一定的業(yè)務(wù)邏輯,但是需要進(jìn)行整合或者二次開發(fā)。
然后在這種環(huán)境下,行業(yè)咨詢公司如同雨后春筍一般不斷涌現(xiàn),這些公司都是由行業(yè)內(nèi)部人士為核心的咨詢公司,他們將多年在行業(yè)內(nèi)部的經(jīng)驗轉(zhuǎn)變成需求,提供給集成商。
而集成商還需要一些外包開發(fā)商進(jìn)行支持(不是人才外包),外包開發(fā)商具有很強(qiáng)的技術(shù)背景,擁有一批技術(shù)開發(fā)能力很強(qiáng)的開發(fā)人員,專門從事技術(shù)細(xì)節(jié)的實現(xiàn),能夠很好地解決較難的技術(shù)細(xì)節(jié)問題。
一個項目的開發(fā)過程變成了由企業(yè)提出需求,然后通過行業(yè)咨詢公司,作出更專業(yè)需求以及解決方案,跟著企業(yè)會根據(jù)咨詢公司提供的方案和建議,去采購服務(wù)提供商的產(chǎn)品,然后將項目發(fā)給集成商,集成商再根據(jù)需要進(jìn)行服務(wù)的組裝集成,然后在外包公司的協(xié)助下完成項目。
以后的項目開發(fā),不再是一家公司從頭做到尾了,開發(fā)一個項目需要設(shè)計到各個領(lǐng)域?qū)I(yè)性比較強(qiáng)的公司,這樣一來,開發(fā)任務(wù)分?jǐn)偟搅烁鱾€公司頭上,項目開發(fā)難度大大降低。
?
?
4.1 聯(lián)合起來
結(jié)束語
面向服務(wù)很有可能是以后的一種開發(fā)趨勢,各位開發(fā)同仁們不妨做做技術(shù)前瞻,多關(guān)注一下SCA/SDO的發(fā)展趨勢,為下一階段的工作做好準(zhǔn)備。
有小道消息稱,現(xiàn)在企業(yè)的CIO一聽到“基于SOA”眼睛就放光……