B/S架構下CRM的新挑戰(zhàn)(一)

肖東軍 2004/09/14

  瀏覽器(Browser)誕生之初,人們僅能用它在互聯(lián)網上瀏覽靜態(tài)網頁。傳統(tǒng)印刷媒介的內容排列是固定的。而靜態(tài)網頁的革命性變化在于,它可以使用"超文本鏈接"技術,依據閱讀者的興趣重組信息顯示的次序。您在網站看到的藍色帶下劃線的新聞標題,點擊后彈出新聞正文,就是使用了"超文本鏈接"技術。

  靜態(tài)網頁一旦下載到本機的瀏覽器,其樣式就不能再變動,表現(xiàn)力有限。動態(tài)HTML技術使網頁"活"起來:數據下載到瀏覽器后,頁面的樣式仍然可以依據瀏覽者的鼠標或鍵盤命令產生變化,這種變化并不需要本機瀏覽器再次向服務器去請求新的數據。例如,鼠標指針指向頁面的某個段文字的時候,文字的顏色隨即改變。

  人們希望能夠模仿人-人交互的模式,與互聯(lián)網上的網頁實現(xiàn)人-機互動。例如,鼠標指針懸浮某個統(tǒng)計圖表上的時候,有關的詳細信息就會浮現(xiàn)出來。對動態(tài)網頁的需求直接促進了嵌入網頁的各類交互式技術的發(fā)展,例如Javascript、VBscript等腳本語言, XML可擴展標志語言,XSL可擴展樣式語言,DOM文檔對象模型等。


圖1 SynleadCRM4.0 軟件在瀏覽器端實現(xiàn)圖表的人-機交互

(點擊看大圖)

  HTML語言僅僅由瀏覽器解釋、執(zhí)行就可以生成靜態(tài)網頁。動態(tài)交互式網頁的實現(xiàn),不僅需要瀏覽器有較新的版本以支持其功能,而且依賴一些控制程序(控件或組件,可以用多種語言編寫)來解釋、執(zhí)行有關的數據,以便臨時動態(tài)生成網頁,產生各種復雜的、與操作者友好的行為。動態(tài)網頁的生成有主要三種方式。第一種方式,是在服務器端完成數據檢索、讀出和頁面生成,然后將頁面?zhèn)鞯綖g覽器端顯示,頁面到達瀏覽器后基本喪失了交互性;第二種方式,服務器端主要完成數據檢索、讀出,數據到達瀏覽器后再在依據控件或組件的解釋,動態(tài)生成頁面,頁面到達瀏覽器后可具有高度的交互性;第三種方式是前兩者某種程度的結合,交互性能依結合程度在前兩者間變動。

  CRM等管理軟件領域曾經是由客戶機/服務器(Client/Server,簡稱C/S)架構一統(tǒng)天下。在C/S架構下,服務器端主要負責數據存取和檢索等計算,客戶機端需要安裝特定的客戶端程序,參與應用程序的計算工作:處理從服務器獲得的數據,顯示給操作者,接受操作者的指令并提交給服務器處理。在C/S架構下,無論是人-機交互,還是客戶端-服務器端的交互能力都比較強。C/S架構的管理軟件,可以在互聯(lián)網環(huán)境中運行,但前提是所有的客戶機與服務器必須處于一個邏輯上的局域網內。假如某些客戶機在遠程分支機構,或者某些客戶機是筆記本遠程移動用戶,那么這些遠程的客戶機通常需要借助虛擬專用網(VPN)技術與服務器連接起來,形成一個邏輯上的局域網,才能在遠程正常啟動管理軟件的客戶端程序。

  瀏覽器技術的發(fā)展給CRM等管理軟件的技術走向提供了新的契機。如果能在普通的互聯(lián)網環(huán)境下,客戶端無須安裝特定的軟件,而僅僅使用通用的瀏覽器,就可以動態(tài)交互地聯(lián)機處理企業(yè)事務,乃至進行聯(lián)機在線的數據分析,那該多好。≡谶@一巨大市場需求的推動下,管理軟件領域當仁不讓地成為了探索動態(tài)交互式網頁技術的急先鋒。

  管理軟件采用瀏覽器/服務器(Browser/Server,簡稱B/S)架構的時候,如果在瀏覽器端動態(tài)交互性能上做出較大的讓步,那么技術門檻并不高。這種方式,頁面的主體是在服務器端生成的,傳送到瀏覽器端的是一種"準靜態(tài)網頁":交互性能比較差,不能比較精細地表達管理所需要的一些表格、表單或圖表樣式。由于所有的計算都集中在服務器端,這種方式對于服務器端硬件配置的要求比較高。瀏覽器端的頁面每變動一次,都要向服務器端提出請求,服務器端計算后再把頁面?zhèn)鹘o瀏覽器端,這對服務器-客戶機之間的通訊資源消耗比較大。

  技術先鋒們?yōu)榱俗屍胀ú僮髡咴跒g覽器上體驗到傳統(tǒng)C/S架構下人機交互的便利性,往往要克服數不勝數的難關。其中的一些來自瀏覽器,例如微軟最新版本的瀏覽器IE6.0 SP1, 包含著一些"無意中固定的設置"或者程序瑕疵,這會影響到基于IE的應用程序的執(zhí)行;更多地則挑戰(zhàn)則來自產品設計人員對開發(fā)工具的掌控能力。我們經常看到某些管理軟件突出宣傳自己是用Java語言開發(fā)的、或者是基于微軟.net技術開發(fā)的,仿佛一旦使用了這些工具,開發(fā)出來的軟件就自動先進了。這無疑是一種誤導。

  北京起點公司總裁鄧猛先生說:"對于專業(yè)的CRM軟件廠商來說,自行開發(fā)控件或組件是一項繁重、艱苦但又難以逃避的工作。僅僅利用現(xiàn)有的商業(yè)控件,功能和性能上達不到設計要求。"北京起點公司前不久發(fā)布了全面基于動態(tài)交互式技術的B/S架構軟件--SynleadCRM企業(yè)版4.0。自行開發(fā)控件或組件與使用現(xiàn)成的控件或組件進行可視化程序開發(fā)存在著極大的不同?丶蚪M件的是純粹的代碼,其開發(fā)不是可視化的過程,而是用VB,C++或Java嚴格編制代碼的工作。雖然這是一個復雜的過程,但也是一個一勞永逸的過程。創(chuàng)建控件或組件的最大意義在于封裝重復的工作--一旦建成,它就可以被重復使用?丶蚪M件的開發(fā)水準,是檢驗軟件廠商技術水準的試金石,也是B/S架構帶來的最大的挑戰(zhàn)之一。

  在萬維網聯(lián)盟(World Wide Web Consortium,簡稱W3C)以及幾乎所有IT業(yè)巨頭(微軟、SUN、IBM、HP等)的合力推動下,互聯(lián)網最重要的標準之一--可擴展標志語言XML的技術標準日臻成熟;赬ML架構傳輸數據、在瀏覽器端實現(xiàn)動態(tài)交互日益成為管理軟件的主流技術取向。

  服務器端檢索得出數據,并不立即在服務器端生成網頁,而是基于XML標準,將數據和對應的控制程序(控件或組件)傳送到瀏覽器。在瀏覽器的支持下,控制程序對數據的顯示方式進行解釋、執(zhí)行,動態(tài)生成網頁。人-機的交互,可以在這一組控制程序的協(xié)助下完成。由于存在基于XML標準的本地數據源,瀏覽器端不必每一個操作都返回服務器端請求計算再刷新網頁。例如,您查詢"過去10天新建立的客戶",服務器端計算得出的查詢結果集是60條記錄,其中的25條記錄基于XML標準傳送到客戶端形成一個獨立的數據源,通過控制程序解釋、執(zhí)行后,在瀏覽器界面顯示前20條客戶記錄,另有5條記錄作為冗余存在于本機。當您刪除一條客戶記錄,控制程序自動將本地數據源中冗余的5條記錄中挑選一條替補到當前界面,并在后臺將刪除記錄的請求提交給服務器。本地瀏覽器界面顯示的變動,由本地的控制程序處理本地的數據源即可快速完成,無需請求服務器。

  理論上看,上述方式相當不錯。而要投入實際應用,仍有許多障礙需要克服。首當其沖的是運行的效率。如果每次跳轉功能模塊、刷新瀏覽器頁面的時候,都要重復傳送控制程序,或者控制程序比較大,或者控制程序在瀏覽器端處理本地數據的方式不夠科學,那么軟件運行的速度將被顯著拖慢。

  首先做的是控制程序的"瘦身"。例如,常規(guī)的模式描述一個表格的列寬度,可能要用10行程序代碼,而采用更精練的方式只需要一行程序代碼。這個工作與寫詩類似,要達到以寥寥20字寫出"窗前明月光,疑似地上霜。舉頭望明月,低頭思故鄉(xiāng)"的境界,是多么不容易。∑浯我龅氖菧p少控制程序重復下載的次數。當跳轉界面等操作發(fā)生的時候,不再是不加區(qū)別地全部下載一次控制程序,而是先通過瀏覽器端與服務器端握手檢查,如確認是本地已經存在某些控制程序,且版本正確,則不再下載,只下載那些需要更新的程序,從而減少數據傳輸的總量。再次,控制程序和數據源達到本機后,處理顯示的方式也會影響到效率,例如傳統(tǒng)的線性添加數據到表格的方式比較慢,而塊狀添加數據則能在瞬間完成畫表、把數據字段嵌入表格的工作。

  在下一期的話題里,我們會接著關注CRM等管理軟件采取B/S架構后的其他挑戰(zhàn),例如在互聯(lián)網上運行時的安全性問題,以及與在桌面辦公領域占統(tǒng)治地位的微軟OFFICE集成的問題。

BS架構下CRM的新挑戰(zhàn)(二) 肖東軍 2004/09/15

起點公司公司供稿 CTI論壇編輯



相關鏈接:
上海申克(SCHENCK) 升級、擴容SynleadCRM 2006-08-07
在CRM自定義報表里增加分析圖表 2006-07-24
錢盛化工升級SynleadCRM 女強人推動精確管理 2006-07-05
別讓CRM軟件變成恐怖的《超級立方體2》 2006-06-12
三豐精密量儀SynleadCRM升級 深挖市場潛力 2006-05-16

分類信息:     文摘   技術_CRM_技術文摘