彭偉宇,鄧 芳
?
O2O平臺的框架設計
彭偉宇,鄧 芳
(北京郵電大學計算機學院,北京 100876)
O2O即Online To Offline,是一種將線下的商務機會與互聯網結合,讓互聯網成為線下交易的前臺的電子商務模式。本論文旨在研究O2O平臺的特點,抽象O2O平臺的共性,設計和開發一套基于O2O技術的框架。為所有的O2O開發者提供一個高效、便捷、易于使用的中間服務層,以減少工程師開發O2O應用的開發周期和成本。
O2O;框架設計;網站開發
現在基于O2O的應用已經漸漸融入人們的日常生活,不論外賣網站還是團購網站,甚至是旅游酒店租賃,都是基于O2O思想而發展出來的應用。例如滴滴打車、百度外賣、以及大眾點評網等都是國內知名的基于O2O的技術應用。甚至像美團、拉手、窩窩團這類傳統團購網站[1],他們的模式也包含了很多O2O的成分。國外對O2O技術的應用也是非常的廣泛,例如Uber、Airbnb、Zaarly等[8]。具有線上結合線下運行模式的O2O平臺已經成為許多傳統企業進軍互聯網的首要選擇,各種五花八門的基于O2O平臺的應用也在互聯網上興起。甚至有一些公司以專門幫人搭建O2O平臺為業務,例如易得網絡等。
盡管O2O技術被廣泛的應用在不同的行業中,但是目前國內外各大公司企業還是獨自開發自己的相關應用。目前還沒有任何文獻結合O2O技術的相關性,對各式各樣的O2O平臺進行抽象,研究開發一套專門關于O2O的應用的框架。
本文在總結了O2O的應用特點和技術特性的基礎之上,研究了如何抽象O2O應用的共性特征,設計一套專門針對O2O應用平臺的框架。讓O2O的應用開發者能復用O2O通用的共性模塊[2],從而能更專注于自己的業務邏輯。
O2O作為當下最為廣泛應用的電子商務平臺平臺,在業務邏輯層面,都具有以下幾個特征:
所有的O2O應用都對不同的運用群體提供雙端服務。本論文定義了信息發布者和信息訂閱者兩種不同類型的用戶[10]。O2O需要對這兩種不同類別的用戶(提供不同的服務內容。信息發布者在O2O平臺發布自己的服務信息,信息訂閱者通過O2O平臺進行服務檢索并匹配[9]。例如,在外賣平臺中,商戶發布了提供餐飲的信息,食客通過外賣平臺進行檢索和匹配自己想要的服務。這是O2O平臺特有的和最基本服務模式。為了方便信息的管理,大部分O2O應用還需要提供信息管理者的角色。
盡管所提供的服務不同,所有O2O應用的用戶都具有相同的行為模式。在不同的O2O應用中,首先信息發布者需要通過O2O平臺發布信息,等待與訂閱者匹配。信息訂閱者需要檢索自己想匹配的信息并向該信息的發布者發送匹配請求。信息匹配成功后,信息發布者和信息訂閱者會形成產生交易。交易將會從線下進行,不過交易的信息應該能夠在線上查詢和更新。
在絕大部分O2O應用中,信息發布者和信息訂閱者都具有消息交互和互相評價的需求。消息交互和用戶評價是兩種不同用戶間溝通的橋梁,良好的消息交互系統和評價系統能夠顯著提升用戶體驗。
絕大部分O2O應用都擁有相似的信息管理系統。由于O2O應用場景的相似性,大部分O2O應用的信息管理方式有著高度的邏輯重合。例如針對不同的用戶以及不同的用戶需求,系統需要提供一套根據不同用戶角色和不同用戶信息的搜索系統,系統中的信息在不同時間段會有不同的狀態等。由于不同O2O平臺面向的應用場景不同,其各自的信息管理方式也會有差異。但是對于信息管理的邏輯是具有高度相似性的。
本框架的設計要點是設計理論模型共性對框架模型的映射和框架模型對數據模型的映射[3]。
理論模型對框架模型的映射需要將O2O應用的的共性在計算機系統中表征。在本論文中,理論模型對框架模型的映射即是將理論模型在框架中以類間關系表示。例如設計不同的用戶類及其相關關系等等。類之間將會用繼承和委托以建立聯系,從而實現不同類之間的信息交互。
框架模型對數據模型的映射即是研究如何將框架模型設計成相應的數據模型并進行存儲。其核心是實現對象與關系型數據庫表之間的映射。ORM(對象關系映射)技術幫助本框架實現這種映射關系。應用該技術,系統將會把框架模型中的類及其類間關系轉化成關系型數據表結構。該模型簡化了數據模型的創建過程和查詢過程,從而在框架設計中,屏蔽了數據庫的底層結構。即使用戶在使用本框架時創建了新的類間關系,ORM技術也能自動將其映射到相應的關系型數據庫表當中[4]。
本平臺的整體結構模型如圖1所示。物理層和網絡層提供了最基本的硬件及軟件需求,框架使用者可以根據需求自行適配[5]。框架包含了用戶交互層,業務交互層,邏輯處理層,數據處理層等層次。用戶交互層封裝了對框架使用者提供的接口;業務交互層負責不同用戶之間的業務關系;邏輯處理層提供了信息管理的基本方法;數據處理層定義了框架的數據模型和數據關系,對象關系映射層和數據存儲層負責數據的存儲管理。

圖1 O2O應用平臺開發框架抽象模型
當開發者在使用本框架時,只需要定義與自己業務邏輯相關的模塊并建立與框架自帶模塊的鏈接。框架能將用戶定義的數據模型與自帶數據模型映射到關系數據庫中并提供操作接口[6]。O2O開發者還可以調用系統中自帶的功能模塊,實現某些O2O系統的共性功能。例如交易查詢、歷史記錄追蹤、用戶消息匹配等功能模塊。通過使用本設計,框架對使用者屏蔽了數據存儲以及以及模型封裝的細節,使用戶能更加專注于自己的業務邏輯開發,提高編程效率。
本框架模型包括了用戶信息模塊,信息發布管理模塊和交易信息管理模塊。用戶管理模塊包含了所有和用戶有關的數據和操作;信息發布平臺管理模塊控制了信息發布和信息檢索等功能;當信息發布者和信息訂閱者達成協議后,交易信息管理模塊會接管所有邏輯直到交易結束為止。系統結構如圖2、圖3所示。
用戶信息管理模塊定義了所有與用戶相關的數據及操作。該框架包含了信息發布者、信息訂閱者和平臺管理者三種不同的用戶。本系統將該三種不同用戶的共同信息抽象成元用戶,元用戶包含了向用戶名密碼等共同信息,也定了登錄、注冊以及信息安全相關的操作。信息發布者通過繼承元用戶實現了用戶通用功能,同時也增加了如公司信息管理以及消息發布等功能模塊。當用戶在創建自定義自己的信息發布者時,只需繼承框架定義的信息發布者通過添加對框架信息發布者的依賴實現[7]。同理,信息訂閱者和平臺管理者也根據相同的原理實現。本模塊亦提供了信息傳遞的子模塊,保證了不同用戶能夠高效及時的進行溝通。
當信息發布者發布信息后,信息發布管理模塊將負責發布信息的管理和匹配。信息發布管理模塊不僅要保證信息發布者能夠隨時檢索和修改自己已經發布的信息,同時信息發布管理模塊也需要提供信息訂閱者信息檢索的接口。本框架除定義了發布信息所包含的狀態、日期、地點等基本要素以外,也定了了發布信息與框架內部其他模塊的交互關系。例如,當信息發布者和信息訂者形成契約后,信息發布管理模塊需要結合信息訂閱的信息和發布信息生成新的交易等。本框架也提供了支付系統的接口。本框架的使用者可以直接調用框架的支付系統也可以通過實現支付接口自定義自己的支付方式。

圖2 系統模塊設計

圖3 系統模塊交互圖
交易信息管理模塊負責管理管理交易信息的整個生命周期。當信息發布者和信息訂者形成契約并生成交易信息后,交易信息管理模塊需要能夠跟蹤、管理和更新交易的基本信息。交易信息包含生成、進行、結束、評價,錯誤等不同的狀態,狀態管理也是交易系統的核心之一。當交易結束后,交易信息管理模塊提供了評級和評價接口,意圖更方便的評價交易質量,提升用戶體驗。
本文總結了當下大部分O2O平臺的共性,抽象了O2O平臺的特征,設計和實現了一款專門針對O2O應用開發的框架,也給出了該框架的業務邏輯以及應用方法。開發者在進行O2O平臺的相關開發時,本框架對開發者屏蔽了O2O平臺功能的細節,使開發者能夠只專注于自己應用的業務邏輯,不用考慮O2O平臺通用功能的實現。提供給了開發者更簡潔和高效的開發環境。
[1] 蘇奎, 董默, 張彥超. 響應式Web開發模式分析[J]. 軟件, 2015, 36(6): 92-96.
[2] 黃沛. 基于RESTful架構的科技信息共享接口系統的設計[J]. 軟件, 2018, 39(7): 170-172.
[3] 王二偉, 姚文斌. 一種基于REST 的物聯網資源模型和分布策略[J].軟件, 2015, 36(12): 128-131.
[4] 王美榮, 鄭廣成. 高職教學研資源管理與考核平臺的研發[J]. 軟件, 2012,33(12): 28-30.
[5] 馮海平. 開放式上網學習管理系統研究與實現[J]. 軟件, 2012,33(11): 99-100.
[6] 徐航軍. 中航建開物業管理中心OA 系統設計[J]. 軟件, 2015, 36(8): 88-91.
[7] 朱騰蛟, 馬柯, 樊琳. 基于B/S架構的庫存風險預警平臺的研究[J]. 軟件, 2015, 36(5): 133-135.
[8] Rigby, D. The Future of Shopping. Harvard Business Review, 2011, 64-75.
[9] Lynne, S. G. Designing Services that Deliver, Harvard Business Review, 19849(62): 133-139.
[10] Tsai, T., Yang, P., & Wang, W. Pilot Study toward Realizing Social Effect in O2O Commerce Services. International conference of Social.
Framework Design for O2O Platform
PENG Wei-yu, DENG fang
(School of Computer Science, Beijing University of Posts and Telecommunications, Beijing 100876, China)
O2O, Online To Offline, is an e-commerce model that combines offline business opportunities with the Internet to make Internet becomes to the front-end platform for offline transactions. This paper aims to study the commonality of all O2O platforms, abstract common features of those O2O platforms, design and Develop a framework based on O2O technology. This framework provide an efficient, convenient, and easy-to-use middle service layer for all O2O developers to reduce the development cost of developing O2O applications.
O2O; Platform design; Framework design
TP302.1
A
10.3969/j.issn.1003-6970.2018.12.024
彭偉宇(1994-),男,研究生,主要研究方向:智能信息處理;鄧芳(1972-),女,副教授,主要研究方向:智能信息處理。
彭偉宇,鄧芳. O2O平臺的框架設計[J]. 軟件,2018,39(12):103-106