摘 要: 從網站需求入手,,提出了C2C電子商務網站設計方案。采用自頂而下的設計方法給出網站的三層架構,。以架構為基礎,,分別對網站界面、網站安全,、信息發(fā)布,、在線交易和系統(tǒng)管理模塊進行分析和設計,同時重點對網站的緩存策略和異常處理進行了說明,。
關鍵詞: C2C電子商務網站; 軟件架構; 緩存; 異常處理
C2C電子商務網站是消費者與消費者之間的電子商務[1],。高職院校中高年級學生的圖書資料或其他一些物品在畢業(yè)時往往會被當成廢舊物品處理,給學生提供一個平臺,,可以讓學生在網上發(fā)布資料和物品信息,,同時其他學生也可以發(fā)出借閱請求或在線訂單,就能形成資料或其他物品的共享,。
1 C2C網站的解決方案
對高職院校C2C網站進行業(yè)務需求分析,,提出網站的設計方案包括以下幾個方面:
(1) 高職院校C2C網站界面
作為C2C網站頁面,需要為用戶提供良好的用戶體驗,,讓用戶能夠方便地找到他們所需要的信息,,可以通過搜索、分類瀏覽或瀏覽網店等方式查找圖書資料和其他物品信息,,必要時還必須為用戶提供幫助文檔,、使用指南或出錯提示等。
(2) 安全設計
網站的很多信息是不能對外公開的,,因此提供一個安全,、可靠的認證體系很重要,,例如一般用戶可以瀏覽網站的圖書資料信息;每個會員的個人信息及其交易信息只有會員自己才可以查看和修改,;網站系統(tǒng)的維護工作,,只有具有管理員權限的人才能使用。
(3) 信息發(fā)布
信息的發(fā)布是為高職學生之間建立一個共享的信息平臺,,因此要求會員只有在申請開店并得到管理員的審批獲得發(fā)布空間后才能發(fā)布資料和維護資料信息,。
(4) 消息通知
作為一個信息發(fā)布和共享平臺,需要網站能與會員之間形成互動,,例如某會員尋找到需要的某本書或資料,,而書已被借走,可以向該書添加訂閱信息,,一旦該書返還,即可接到消息,;當管理員開通網店后通過發(fā)送消息通知會員,,其最簡單的方法就是通過電子郵件發(fā)送消息。
(5) 在線交易
會員可以在線選購圖書或發(fā)布交換請求,,信息的提供者在收到訂單或請求后,,根據信息處理訂單或請求,并完成一次交易或取消交易,。由于高職學院主要是針對圖書資料進行交易,,因此真實交易可以通過線下電話聯(lián)系完成。
(6) 系統(tǒng)維護
對網站的一些日常維護工作和基本信息維護,。
2 網站架構
網站的軟件架構對網站的搜索引擎友好性及用戶體驗有著非常重要的影響,,高職院校C2C網站架構不一定非要復雜,但一定要做到層次清晰,、業(yè)務分明,。業(yè)務邏輯從界面分離出來,數據訪問應從業(yè)務邏輯中分離出來,;明確業(yè)務實體與數據庫之間的關系,、系統(tǒng)異常的處理、數據的呈現以及緩存策略等,。C2C網站的架構采用典型的三層邏輯架構[2],,其組件架構如圖1所示。
(1)通用組件
包含網站的一些通用的模塊,,通用模塊將被其他組件所引用,,主要有異常處理、日志處理,。
?。?)業(yè)務實體
表示真實的業(yè)務數據,,如產品信息、訂單等,,用于在各層之間傳遞數據,。
(3)業(yè)務邏輯
業(yè)務邏輯組件封裝各種業(yè)務邏輯,,包括網站的事務處理與數據緩存,使用數據訪問層提供的數據訪問服務,。
(4)數據訪問層
實現網站的數據訪問邏輯,對數據進行新增,、刪除,、查詢、修改等操作,,主要是為業(yè)務邏輯組件服務,。
(5)企業(yè)數據庫數據庫訪問塊
是微軟的企業(yè)數據庫的數據訪問模塊,抽象成對底層數據庫的訪問操作,,完成數據的讀取與寫入,。
(6)網站界面
用于向用戶顯示數據,接收用戶響應和響應用戶事件,使用業(yè)務邏輯層或數據訪問層提供的數據訪問服務,。
3 C2C網站的功能模塊設計
3.1 網站設計
C2C網站設計上應從最終用戶的角度出發(fā),,提高用戶體驗,網站要有統(tǒng)一外觀,、布局合理,、交互性良好,因此網站設計包含網站的母版頁,、網站的導航系統(tǒng),、系統(tǒng)錯誤提示頁面和幫助頁面等,其中網站的響應速度和網站交互性尤其重要,。
(1)網站緩存
C2C網站往往存在一些數據不會經常發(fā)生變化,,但會被用戶經常請求,用戶每次都需要從數據庫中查詢這些數據,,這對數據庫服務器的負荷和網絡流量造成浪費,,并降低了響應速度,如果從數據庫讀取出來后將其緩存起來,,以后的請求則可以緩存中獲取數據,。從分層邏輯組件圖中可以看出,用戶既可以從業(yè)務邏輯層獲取服務,,也可以直接從數據訪問層獲得數據,,此外還有一些頁面是屬于不會經常變化的,也可以在業(yè)務邏輯層中實現頁面緩存,。圖2所示為網站的緩存機制[3],。
(2)異常處理
網站在運行時不可避免地會發(fā)生異?;蝈e誤,異常發(fā)生時不能向用戶顯示技術細節(jié),,需要記錄下異常信息供管理員查看,,并向用戶顯示一個友好的錯誤提示頁面[4]。網站的數據訪問層或業(yè)務邏輯層出現異常時,應捕獲異常,,然后記錄異?;虬l(fā)送異常特定消息,并將這些信息記錄下來,,然后拋出異常,,直至較高層捕獲并處理異常,此外網站運行時出現未處理的異常,也需要向最終用戶顯示友好的自定義錯誤信息,。圖3所示為網站的異常處理機制,。
3.2 網站安全
C2C網站必須提供一個安全的系統(tǒng)保護用戶的利益,必須對用戶進行身份驗證,,確保用戶的合法性,;在用戶身份得到驗證后還需要對用戶授予不同的權限,以保證該用戶具有對某些資源的訪問權限,。網站主要有4類用戶:一般用戶、會員,、店長和管理員,。一般用戶可以瀏覽網站中部分資源,如瀏覽網店,、圖書等,,但不能發(fā)生交易,這類用戶可以通過在線注冊成為會員,;會員即已經注冊成為網站的認證用戶,,該類用戶在瀏覽網站時可以在線發(fā)出借閱請求和下訂單購買圖書資料,并具有個人管理區(qū)域,,可以維護自己的個人信息,、密碼和查看自己的交易記錄等;店長是成功申請開店的會員,,該類用戶除擁有一般會員的所有服務外,,還可以發(fā)布和維護圖書資料,以網店形式向其他用戶共享資料,,并且處理其他會員提交的交易請求,;管理員負責系統(tǒng)的維護,包括一些基本資料的維護,、會員的管理等,。
3.2.1 認證
認證即確定當前用戶是否為系統(tǒng)的有效用戶,,包含許多需要身份認證的模塊,如“會員信息管理”,、“店長信息管理”,、“管理員模塊”。NET.Framework的成員資格架構使用成員資格應用程序接口(Membership API),、提供程序(Providers)和數據存儲(Data Stores)來驗證是否是合格用戶[5],。
(1) Membership API:主要完成創(chuàng)建用戶、對訪問網站的用戶進行身份驗證,,以及管理密碼,。另外ASP.NET提供Form認證方式,將兩者結合可以容易實現網站身份驗證。
(2) Providers:使用提供程序模式與不同的數據源之間通信,,C2C網站使用SqlMembershipProviders類與數據庫進行通信,。
(3) Data Stores:是數據存儲區(qū),負責成員資格數據的長久存儲,,C2C網站使用MS SQL Server進行成員存儲,。
3.2.2 授權
授權是當用戶經過系統(tǒng)驗證后系統(tǒng)為用戶分配具有訪問什么資源的權限,采用角色管理指定用戶可以訪問的資源[5],。在C2C網站中建立Administrator,、Sales、Member等角色,,例如授予Member角色可以訪問的權限,,當一般用戶注冊成為會員后,將注冊會員添加到Member角色中,,提供給用戶可以訪問的頁面和文件夾的權限,。在ASP.NET中通過Roles、RoleProvider以編程方式確定是否屬于某個角色,。
3.3 信息發(fā)布
網站會員通過開店申請成為店長后,,需要發(fā)布和維護圖書資料信息,以供網站的訪問者瀏覽,。因此,信息發(fā)布主要完成以下功能:
(1)店長可以方便查詢店中的資料,,可以對資料進行分類瀏覽、可方便地對資料進行排序等操作,。
(2)店長能快速錄入圖書資料信息,,例如書名、類別,、單價,、數量、折扣、交易類型,、圖片等,。
(3)店長能方便地更改某本書的資料,,如修改價格,、折扣、交易類型,、內容簡介等,。
(4)店長能方便地刪除圖書資料,。
3.4 在線交易
高職院校的C2C網站,,商品的提供者是學生,購買者是學生,,因此他們之間不需要在線支付和物流配送,,只需要線下商品提供者通過訂單的聯(lián)系信息聯(lián)系購買者來完成交易,另外除了使用銷售方式來共享圖書資料外,,還可以通過借閱方式來實現資料的共享,。這種方式與訂單方式類似,只是通過向提供者發(fā)出借閱請求,,然后提供者根據借閱請求信息聯(lián)系請求者完成借閱活動,,當然當圖書資料已被購買或借閱,應顯示相應圖書資料狀態(tài),,避免消費者繼續(xù)向該書發(fā)出請求[6],。圖4所示為在線交易中的訂單流程。
在線交易模塊主要完成的功能如下:
(1)訂單功能:在線會員下訂單,,如果圖書資料交易類型可以出售,則會員用戶可以填寫聯(lián)系人姓名,、送資料地址,、聯(lián)系電話等并提交訂單;當店長收到訂單后,,根據聯(lián)系信息聯(lián)系訂購者完成交易,,并更新訂單狀態(tài),更新圖書資料狀態(tài),,向圖書資料的收藏者發(fā)出郵件以通知圖書狀態(tài)的變化,;當會員提交訂單后可隨時查詢訂單處理情況,對于未處理的訂單,,發(fā)起人可取消訂單,。
(2)借閱功能:會員瀏覽圖書資料信息時,如果資料狀態(tài)為可以借閱,則用戶可以通過填寫聯(lián)系信息并提交借閱請求,;店長收到請求后,,根據聯(lián)系信息聯(lián)系借閱者完成交易,并更新請求狀態(tài),,修改圖示資料的狀態(tài)為“借出”,,同時發(fā)送郵件給所有收藏者以通知圖書資料狀態(tài)的變化。
(3)收藏夾功能:當用戶瀏覽圖書資料信息時,,可以將該書添加到收藏夾,;當用戶進入網站后,可以在頁面中顯示收藏夾的內容項目,,通過鏈接可進入收藏夾,;可以在收藏夾中刪除商品。
3.5 系統(tǒng)管理
C2C網站的正常運行離不開基礎數據支持,,這些信息比較穩(wěn)定,,網站運行時這些數據很少發(fā)生變化,在整個系統(tǒng)中被共享使用,,一般是由具有管理員權限的用戶使用,,在系統(tǒng)管理模塊中主要實現圖書類別、院系信息和專業(yè)信息的增加,、刪除和修改操作,。
高職院校的C2C網站的設計雖然功能上相對簡單,但也需要進行深入的分析,,最終確定技術解決方案,,然后再針對解決方案中功能模塊進行更詳細的設計。當然作為一個對高職院校自身服務的電子商務網站,,在建設之前應該考慮好網站模式,、技術手段和客戶服務,才能使網站處于良性的運行狀態(tài),。
參考文獻
[1] 王宇川.電子商務網站規(guī)劃與建設[M].北京:電子工業(yè)出版社,,2007:2-8.
[2] [美]PFLEEGER S L, [加]JOANNE M A. 軟件工程[M].楊衛(wèi)東,譯.北京:人民郵電出版社,2010:169-171.
[3] [美]BOOCH G, RUMBAUGH J, JACOBSON I.UML用戶指南[M].英文版第二版.北京:機械工業(yè)出版社,,2006:252-256.
[4] (美)HART C, KAUFFMAN J, SUSSMAN D,et al.Beginning ASP.NET 2.0 with C#[M].孟憲瑞,,易磊,譯. 北京:人民郵電出版社,,2007:526-537.
[5] [美]BAIER D.開發(fā)更安全的ASP.NET 2.0應用程序[M].華中宇,,田亮君,陳文,譯.北京:人民郵電出版社,,2008:125-137.
[6] 微軟公司.Web應用,、分析與實踐[M].北京:人民郵電出版社,2008:318-320.