SIX移動云應用開發平臺
2013-05-23 23:08:02
平臺定位
平臺的定位是云應用開發平臺(PAAS平臺)。適用的開發場景包括:
(1) 云應用系統(SAAS)
基于云計算部署模式的應用系統。
(2) 基于WEB瀏覽器的應用系統
包括各種ERP、CRM、電子商務、電子政務、門戶網站等。
(3) 基于html5的WEB應用系統
使用html5瀏覽器的各種瀏覽器應用,包括移動瀏覽器應用。
(4) 基于手機瀏覽器的應用系統
基于手機瀏覽器的專用顯示應用。
(5) 手機App應用系統
App方式運行的應用,其數據和服務來自服務器。
技術路線
領域模型驅動的MVC分層配置開發
平臺結構
SIX平臺的總體結構如下圖所示:

平臺的部署包括兩種方式,一種是PAAS平臺部署方式,作為云平臺部署在云服務器上,成為一種云服務,此時,必須先構建云基礎設施,安裝IAAS軟件,將計算資源、存儲、網絡等硬件設備池化,虛擬成資源池,并且安裝云操作系統,在此基礎上進行平臺的部署,以PAAS服務方式運行。另一種方式是以傳統方式進行部署,部署在單獨的開發服務器環境。
平臺在部署時必須部署在應用容器中,通過部署成某個應用,來提供應用服務。平臺可以部署在各個主流的應用服務器上。
作為PAAS平臺部署時,系統可以進行租戶應用的創建,可以為租戶分配可以使用的資源、應用服務器、數據源、磁盤空間等。
SIX平臺認為,業務模型和數據模型應該獨立于平臺和應用,是業務系統的真實描述。一個良好的系統必須有業務模型和數據模型,而SIX平臺提供一系列的工具,將表現層的各種業務操作與業務模型掛接,完成各種業務功能操作。SIX平臺對業務模型的各種調用采用開放透明的方式進行調用。業務模型和數據模型的生命周期甚至可以超過平臺的生命周期,并且這部分模型獨立于平臺,甚至可以獨立于業務系統。在進行業務系統升級改造時,業務模型和數據模型可以不變,可以變更開發中間件甚至使用MVC框架重寫系統,改造完成后,新的業務系統完成相同的業務,但是使用不同的技術來實現,業務從始至終沒有變化。這也正是SIX平臺倡導的開發和透明體系。
平臺包括兩大部分:
(1) 模型
模型包括業務模型和數據模型。這兩個模型是組成應用的兩大核心部分。應用的其他部分通過調用模型中的資源,來完成應用的搭建。一個設計良好的業務系統需要有數據模型和業務模型,這兩個模型可以獨立于開發中間件,應該在設計階段就完成。
數據模型用來描述存儲業務數據的庫表,包括數據表的字段、約束、規則、關系等內容,是總體業務的在數據描述角度的抽象。按照數據的類型包括元數據和業務數據。在SIX平臺中,提供對數據模型中的元數據的管理。
業務模型這里也叫業務對象模型,主要包括元數據類和業務處理類,是領域模型的最終表達。領域模型中涉及的各個實體、角色和關系,通過POJO類和業務處理類來實現和表達。所有業務對象模型中的類,都可以發布成服務,為其他系統調用。
SIX平臺對于業務類和POJO類的開發設計沒有任何的限制和約束,開發人員可以根據領域模型的設計,獨立于平臺來進行編碼開發實現。SIX平臺提供一系列的工具類,供開發人員進行開發實現,能夠極大地減少業務類的編碼量。
(2) 工具
SIX平臺提供一系列的核心工具和核心服務供開發人員進行業務系統的構建。核心工具包括:
? 組織建模
提供構建組織結構、部門、角色、崗位、群組、帳號等管理要素的工具。包括權限的授予、人員管理、登陸、注銷、兼職等業務的處理。
? 應用建模
平臺對每個應用分四層進行管理,這四層包括:數據層、業務層、控制層、表現層。通過這四層來全面地描述一個應用功能。所有四層設置完成后,業務應用的功能就完成了。其中數據層和業務層的內容分別來自數據模型和業務模型。
SIX平臺的統一建模,分層設置開發,其分層設置開發主要體現在應用建模的過程。其詳細介紹請參考后續章節。
? 流程建模
提供流程開發設置調試監控的工具集合。包括流程設計開發、流程調試、流程監控等工具。流程建模的過程通過流程設計工具來完成,每個流程都由節點和路由組成,根據業務需求通過設置節點和路由的屬性來完成流程的功能。
? Portal門戶
提供對窗體、布局、模板的管理,包括使用應用建模來開發portlet,以及portal模板的定制。
SIX平臺的核心服務包括:
? 組件服務
提供對業務組件的擴展服務,包括業務組件的注冊、擴展、調試、接口等服務。
? 消息服務
提供業務消息通知服務,包括短信、即時消息、WEB網頁消息、電子郵件消息等。消息服務提供豐富的應用接口,供業務應用需要時調用。
? 接口服務
提供對應用系統的接口的開發和管理,包括各種業務的接口擴展和為外部系統所能提供的業務接口。
? 應用服務
包括定時服務,LICENSE服務等。
模型和工具是構成SIX平臺的兩大要素,業務實現先從建模開始,然后使用工具進行分層設置,完成業務系統的搭建。
在平臺的基礎上,可以搭建各類復雜的業務應用。通過使用SIX平臺,支持領域建模,統一建模,為業務系統搭建了業務模型和數據模型。
設計理念
SIX平臺的設計理念是:為開發人員提供一個開放透明松耦合的應用開發中間件。主要的意義如下:
? 開放
開放的理念主要體現在開放的模型和開放的分層架構。
采用標準的MVC框架模型,分層設置開發的開發模式,就是一個開放的技術框架體系。按照MVC框架的分層理念,將每個業務應用的實現分四層來完成,包括:數據層、業務層、控制層、表現層。相鄰各層之間可以相互調用,相互隔離的各層之間不允許調用。在平臺層面,提供業務模型管理和數據模型管理,提供一個開放的建模過程和方法,完全可以為任何其他系統所重用。
? 透明
透明的理念主要體現在一個業務實現過程的透明,包括表現層頁面的要素通過提交,傳遞到控制層,控制處理后調用相關的業務操作進行處理,處理完成后,返回到控制層,通過控制層的拉處理,完成信息的反饋,整個過程透明清晰,開發人員可以自由跟蹤和監控。
透明還表現在開發人員可以監控到業務是如何在各層之間進行數據傳遞和處理。以及控制層的各種操作細節。
? 松耦合
松耦合就是要盡量減少業務應用系統與平臺之間的耦合,做到耦合越少越好。從某種意義上來說,平臺要做的應該越少越好,平臺做的越少,應用的自由度越大。同時,在平臺設計中,全面圍繞業務應用實現的分層實現來開發,除了各層的各項參數和各層需要調用的延伸的參數,其他無關的內容全部從平臺中撤消。
開發人員在使用本平臺時,基本上不需要記憶一些額外的規則和方法,根據業務設計需要,先創建業務模型和數據模型,然后掛接業務就可以完成業務的搭建。
應用價值
通過大量用戶應用的實踐表明,SIX移動云應用開發平臺能夠為用戶帶來的不僅僅是成本的降低和開發效率的大幅度的提升,還帶來了如下的應用價值:
(1)為應用延伸到云端提供了便捷途徑
提供云計算的各種開發要素,是一個PAAS開發平臺,能夠快速實現各種SAAS應用。
(2)為業務構建了業界領先的開放式的技術架構
使用SIX平臺開發業務系統,其統一建模分層設置開發的構架,為應用導入了一個業界領先的技術架構。
(3)為業務系統建立了業務模型和數據模型,實現完全意義上的應用融合,構建了一個可集成的業務體系。
(4)極大地延長了業務系統的生命周期
通過進行統一建模,實現了業務系統的跨開發工具。業務模型和數據模型的生命周期已經超過了平臺的生命周期。
(5)為應用延伸到手機和移動端提供了快捷的途徑
提供html5以及IOS/ANDROID的App客戶端應用。
(6)業務系統的可維護性達到了前所未有的高度
采用經典的MVC四層開發模式和模型開發,整個業務系統的可維護性大大提高,構建了一個開放透明的業務系統。





