金融信息系統(tǒng)課程小組報(bào)告中小型連鎖超市會(huì)員積分管理系統(tǒng)_第1頁
金融信息系統(tǒng)課程小組報(bào)告中小型連鎖超市會(huì)員積分管理系統(tǒng)_第2頁
金融信息系統(tǒng)課程小組報(bào)告中小型連鎖超市會(huì)員積分管理系統(tǒng)_第3頁
金融信息系統(tǒng)課程小組報(bào)告中小型連鎖超市會(huì)員積分管理系統(tǒng)_第4頁
金融信息系統(tǒng)課程小組報(bào)告中小型連鎖超市會(huì)員積分管理系統(tǒng)_第5頁
已閱讀5頁,還剩59頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、1金融信息系統(tǒng)課程小組報(bào)告金融信息系統(tǒng)課程小組報(bào)告 中小型連鎖超市會(huì)員積分管理系統(tǒng)中小型連鎖超市會(huì)員積分管理系統(tǒng)目目 錄錄1 1項(xiàng)目章程項(xiàng)目章程.5 51.1 項(xiàng)目名稱 .51.2 項(xiàng)目概述與目標(biāo).51.2.1 項(xiàng)目概述.51.2.2 項(xiàng)目目標(biāo).51.3 參與者角色與職責(zé) .52 2基線項(xiàng)目計(jì)劃基線項(xiàng)目計(jì)劃.6 62.1 項(xiàng)目綜述.62.2 系統(tǒng)描述.622.3 可行性評估.62.3.1 技術(shù)可行性.62.3.2 管理可行性.72.3.3 經(jīng)濟(jì)可行性.7(1)項(xiàng)目收益.7(2)項(xiàng)目成本.8(3)項(xiàng)目收支平衡分析.92.4 管理問題.112.4.1 成員之間的溝通問題.112.4.2 項(xiàng)目進(jìn)度的

2、把握問題.113 3系統(tǒng)需求說明系統(tǒng)需求說明.12123.1 系統(tǒng)需求描述.123.1.1 用戶提出自己的需求.123.1.2 分析用戶的需求.133.1.3 與用戶確定最后的需求.143.1.4 根據(jù)最終需求確定系統(tǒng)工作環(huán)境.153.2 系統(tǒng)用例設(shè)計(jì).163.2.1 辦卡業(yè)務(wù)用例.163.2.2 銷售業(yè)務(wù)用例.163.2.3 退貨業(yè)務(wù)用例.173.2.4 查詢積分記錄用例.173.2.5 反饋業(yè)務(wù)用例.183.3 概念數(shù)據(jù)模型.193.3.1 商品相關(guān)表概念數(shù)據(jù)模型.193.3.2 顧客會(huì)員卡相關(guān)表概念數(shù)據(jù)模型.193.4 對象關(guān)系模型.203.4.1 商品相關(guān)表關(guān)系的模型轉(zhuǎn)化.203.4.

3、2 顧客會(huì)員卡相關(guān)表關(guān)系的模型轉(zhuǎn)化.203.5 順序圖.213.5.1 辦卡業(yè)務(wù)順序.213.5.2 銷售業(yè)務(wù)用例.223.5.3 退貨業(yè)務(wù)順序.223.5.4 查詢積分業(yè)務(wù)順序.233.5.5 反饋業(yè)務(wù)順序.233.6 活動(dòng)圖.243.6.2 辦卡業(yè)務(wù)活動(dòng)圖.243.6.2 銷售業(yè)務(wù)活動(dòng)圖.243.5.3 退貨業(yè)務(wù)活動(dòng)圖.253.5.4 查詢積分業(yè)務(wù)活動(dòng)圖.253.5.5 反饋業(yè)務(wù)活動(dòng)圖.263.7 業(yè)務(wù)規(guī)則模型.263.7.1 會(huì)員卡類型業(yè)務(wù)規(guī)則.263.7.2 會(huì)員資料管理業(yè)務(wù)規(guī)則.2733.7.3 商品管理業(yè)務(wù)規(guī)則.293.7.4 會(huì)員卡積分管理業(yè)務(wù)規(guī)則.304 4系統(tǒng)設(shè)計(jì)說明系統(tǒng)設(shè)計(jì)

4、說明.33334.1 物理數(shù)據(jù)庫設(shè)計(jì).334.1.1 數(shù)據(jù)表結(jié)構(gòu)設(shè)計(jì).334.1.2 數(shù)據(jù)庫表關(guān)系圖示.364.2 體系結(jié)構(gòu)設(shè)計(jì).374.2.1 三層架構(gòu)的組成.374.2.2 數(shù)據(jù)訪問層(data access layer dal).39(1)數(shù)據(jù)邏輯訪問組件(data access).39(2)業(yè)務(wù)實(shí)體組件(entity class).404.2.3 業(yè)務(wù)邏輯層(business logic layer bll).414.2.4 用戶界面層(web 層).424.3 系統(tǒng)模塊劃分.424.3.1 會(huì)員卡類型模塊.424.3.2 會(huì)員卡信息模塊.434.3.3 會(huì)員卡積分模塊.434.3.4

5、 商品信息模塊.434.3.5 基本操作模塊.444.3.6 配置模塊.444.4 設(shè)計(jì)類圖.444.4.1 會(huì)員卡類型管理.44(1)會(huì)員卡類型實(shí)體類.45(2)會(huì)員卡類型實(shí)體方法.454.4.2 會(huì)員資料管理模塊.46(1)會(huì)員資料管理實(shí)體類.46(2)會(huì)員資料管理實(shí)體方法.474.4.3 商品管理模塊.48(1)商品信息實(shí)體類.48(2)商品信息實(shí)體方法.494.4.4 會(huì)員卡積分管理模塊.50(1)會(huì)員卡積分管理方法.50(2)查詢積分功能.50(3)積分處理功能.51(4)積分反饋功能.524.5 界面設(shè)計(jì).524.5.1 母版頁設(shè)計(jì).524.5.2 站點(diǎn)地圖(sitemap)及導(dǎo)航

6、控件(treeview)設(shè)計(jì).534.5.3 主題皮膚文件設(shè)計(jì).544.6 表單與報(bào)表設(shè)計(jì).554.6.1 注冊新用戶表單設(shè)計(jì).554.6.2 會(huì)員資料登記表單設(shè)計(jì).554.6.3 瀏覽積分歷史記錄報(bào)表設(shè)計(jì).5645 5系統(tǒng)實(shí)施系統(tǒng)實(shí)施.56565.1 系統(tǒng)測試.565.1.1 測試目的.565.1.2 測試工具.565.1.3 測試類型.57(1)單元測試.58(2)web 測試.58(3)負(fù)載測試.58(4)一般測試.58(5)手動(dòng)測試.59(6)順序測試.595.2 測試用例設(shè)計(jì).595.2.1 注冊新用戶測試用例.59(1)密碼與確認(rèn)密碼不一致測試.59(2)電子郵箱格式不正確測試.6

7、05.2.2 會(huì)員資料登記測試用例.60(1)空值測試.60(2)錯(cuò)誤身份證號(hào)碼測試.615.3 系統(tǒng)部署及發(fā)行.615.3.1 軟件配置說明.61(1)服務(wù)器的配置要求.61(2)客戶機(jī)配置要求.625.3.2 軟件部署.62(1)整理軟件運(yùn)行需要的文件資源.62(2)創(chuàng)建 web 安裝項(xiàng)目.62(3)裸機(jī)測試部署好的系統(tǒng).63中小型連鎖超市會(huì)員積分管理系統(tǒng)開發(fā)1 1項(xiàng)目章程項(xiàng)目章程1.11.1 項(xiàng)目名稱項(xiàng)目名稱中小型連鎖超市會(huì)員積分管理系統(tǒng)51.21.2 項(xiàng)目概述與目標(biāo)項(xiàng)目概述與目標(biāo)1.2.1 項(xiàng)目概述本系統(tǒng)用戶是一家中小型連鎖超市,目前使用的是手工賬本記錄會(huì)員信息。隨著連鎖機(jī)構(gòu)的增大以及

8、市場促銷手段的變化,手工方式已經(jīng)無法記錄會(huì)員消費(fèi)的實(shí)時(shí)信息,超市決定啟用一套會(huì)員積分管理信息系統(tǒng)。系統(tǒng)設(shè)計(jì)以某中小型連鎖超市為研究對象,首先研究了該單位的業(yè)務(wù)現(xiàn)狀與開發(fā)管理信息系統(tǒng)的可行性;其次,在認(rèn)真分析并實(shí)際體驗(yàn)了該超市目前現(xiàn)有的業(yè)務(wù)需求的基礎(chǔ)上展開了系統(tǒng)設(shè)計(jì),明確了系統(tǒng)的基本結(jié)構(gòu),為系統(tǒng)設(shè)計(jì)了具體的開發(fā)方案。1.2.2 項(xiàng)目目標(biāo)實(shí)現(xiàn)一個(gè)具備會(huì)員卡類型管理、會(huì)員資料管理、商品管理、會(huì)員卡積分管理與權(quán)限管理等功能的管理信息系統(tǒng)。系統(tǒng)在結(jié)構(gòu)上采用 b/s 模式與三層體系結(jié)構(gòu),采用 asp.net 2.0 技術(shù)實(shí)現(xiàn)了系統(tǒng)的輸入輸出界面與處理邏輯,基于 sql server 平臺(tái)實(shí)現(xiàn)了系統(tǒng)的數(shù)據(jù)庫

9、。系統(tǒng)達(dá)到初步試運(yùn)行穩(wěn)定,訪問速度較快,功能較完整,用戶反映良好。1.31.3 參與者角色與職責(zé)參與者角色與職責(zé)姓名姓名角色角色職責(zé)職責(zé)詹春園項(xiàng)目負(fù)責(zé)人全面負(fù)責(zé)整體項(xiàng)目劉軍程序員數(shù)據(jù)庫設(shè)計(jì)、詳細(xì)設(shè)計(jì)、代碼編寫及測試劉乾楠程序員數(shù)據(jù)庫設(shè)計(jì)、詳細(xì)設(shè)計(jì)、代碼編寫及測試謝志健程序員詳細(xì)設(shè)計(jì)、代碼編寫及測試刁振亞程序員詳細(xì)設(shè)計(jì)、代碼編寫及測試姬浩程序員詳細(xì)設(shè)計(jì)、代碼編寫及測試62 2基線項(xiàng)目計(jì)劃基線項(xiàng)目計(jì)劃2.12.1 項(xiàng)目綜述項(xiàng)目綜述本系統(tǒng)用戶是一家中小型連鎖超市,目前使用的是手工賬本記錄會(huì)員信息。隨著連鎖機(jī)構(gòu)的增大以及市場促銷手段的變化,手工方式已經(jīng)無法記錄會(huì)員消費(fèi)的實(shí)時(shí)信息,超市決定啟用一套會(huì)員積

10、分管理信息系統(tǒng)。系統(tǒng)設(shè)計(jì)以某中小型連鎖超市為研究對象,首先研究了該單位的業(yè)務(wù)現(xiàn)狀與開發(fā)管理信息系統(tǒng)的可行性;其次,在認(rèn)真分析并實(shí)際體驗(yàn)了該超市目前現(xiàn)有的業(yè)務(wù)需求的基礎(chǔ)上展開了系統(tǒng)設(shè)計(jì),明確了系統(tǒng)的基本結(jié)構(gòu),為系統(tǒng)設(shè)計(jì)了具體的開發(fā)方案。2.22.2 系統(tǒng)描述系統(tǒng)描述系統(tǒng)在結(jié)構(gòu)上采用 b/s 模式與三層體系結(jié)構(gòu),采用 asp.net 2.0 技術(shù)實(shí)現(xiàn)了系統(tǒng)的輸入輸出界面與處理邏輯,基于 sql server 平臺(tái)實(shí)現(xiàn)了系統(tǒng)的數(shù)據(jù)庫。2.32.3 可行性評估可行性評估2.3.1 技術(shù)可行性asp.net 2.0 是 microsoft 公司推出的 web 開發(fā)平臺(tái),也是目前最先進(jìn)、特征最豐富、功能最

11、強(qiáng)大的 web 開發(fā)平臺(tái),與以前的版本相比,代碼量最大可以減少 70%。其添加主題解決方案,提升設(shè)計(jì)功能,允許不同級(jí)別的用戶看到的界面不同;添加新控件母版頁(masterpage.master),簡化了網(wǎng)站中各界面的統(tǒng)一布局;集成的用戶管理系統(tǒng),可視化的實(shí)現(xiàn)對用戶和角色權(quán)限的管理;站點(diǎn)導(dǎo)航新控件和 webpart 控件,可實(shí)現(xiàn)對門戶網(wǎng)站的自由定制等特點(diǎn);sql server 是微軟公司開發(fā)的一個(gè)關(guān)系數(shù)據(jù)庫管理系統(tǒng),以 transact-sql 作為它的數(shù)據(jù)庫查詢和編程語言,具有可視化操作、配置簡單、安全性高等特點(diǎn)。綜上所述,選用 asp.net 2.0+sql server的組合完全可以滿足中

12、小型連鎖超市會(huì)員積分管理信息系統(tǒng)開發(fā)的技術(shù)需求。72.3.2 管理可行性該中小型連鎖超市,目前使用的是手工賬本記錄會(huì)員信息。隨著連鎖機(jī)構(gòu)的增大以及市場促銷手段的變化,手工方式已經(jīng)無法記錄會(huì)員消費(fèi)的實(shí)時(shí)信息,所以公司高層決定啟用一套會(huì)員積分管理信息系統(tǒng)。故該系統(tǒng)從用戶的管理層上來講其管理是可行的。從軟件開發(fā)角度來講因?yàn)槭莻€(gè)人開發(fā),所以在人員管理方面是不存在問題的,而在系統(tǒng)開發(fā)的規(guī)劃方面問題也不大。所以總的來說該項(xiàng)目在管理方面是可行的。2.3.3 經(jīng)濟(jì)可行性(1)項(xiàng)目收益信息系統(tǒng)可以為一個(gè)組織提供很多收益,這些收益包括有形收益和無形收益。有形收益是一項(xiàng)可以用金錢和確定性衡量的收益,有形收益的例子包

13、括消減的人員開支、降低的交易費(fèi)用或提高的利潤率。關(guān)于本系統(tǒng)的有形收益具體如下圖所示:有形收益工作表中小型連鎖超市會(huì)員積分管理系統(tǒng)項(xiàng)目(15 年)費(fèi)用減少或避免 ¥7 000錯(cuò)誤減少 2 500增加的靈活性 8 000提高的活動(dòng)速度 25 000管理計(jì)劃或控制的改進(jìn) 7 500 增加銷售 30 000有形收益合計(jì) ¥80 000圖 1-2 中小型連鎖超市會(huì)員積分管理系統(tǒng)有形收益工作表無形收益指那些不容易用金錢或確定性衡量的收益項(xiàng),無形收益可能具有直接的組織效益,比如提高了員工的士氣,或者可能具有廣泛的社會(huì)影響,比如減少了廢物產(chǎn)生或資源耗費(fèi)。在項(xiàng)目的早期階段,潛在的有形收益可能不得不被認(rèn)為是無形的

14、,因?yàn)樵谏芷诘倪@個(gè)階段,要用金錢8或確定性量化它們也許是不可能的。在后期階段,隨著正被設(shè)計(jì)的系統(tǒng)的結(jié)果被更好地理解,這種無形收益可以變有形的。無形收益包括: 競爭的必要性。 組織靈活性增加。 員工士氣提高。 組織的學(xué)習(xí)和理解力的提升。 更及時(shí)的信息。 確定中小型連鎖超市會(huì)員積分管理系統(tǒng)成本(2)項(xiàng)目成本如同收益一樣,項(xiàng)目的成本包括有形成本和無形成本。有形成本是指能容易地用金錢和確定性衡量的一項(xiàng)成本。從系統(tǒng)開發(fā)的角度看,有形成本包括如硬件成本、人工成本、來自雇員培訓(xùn)和建筑物改造的實(shí)施成本這樣的項(xiàng)目。而無形成本包括損失顧客信譽(yù)、雇員士氣或運(yùn)營的低效率。除了有形成本和無形成本之外,與系統(tǒng)有關(guān)的開

15、發(fā)成本還可以被分為一次性的和續(xù)生的。一次性成本指與項(xiàng)目啟動(dòng)、系統(tǒng)開發(fā)和系統(tǒng)啟動(dòng)有關(guān)的費(fèi)用。這些成本典型地圍繞下列活動(dòng)。一次性成本工作表中小型連鎖超市會(huì)員積分管理系統(tǒng)項(xiàng)目(0 年)a開發(fā)費(fèi)用 ¥20 000 b新硬件 15 000c新(購買的)軟件,如果有的話應(yīng)用軟件包 40 000d用戶培訓(xùn) 5 000e其它 0一次性成本合計(jì) ¥80 000圖 1-3 中小型連鎖超市會(huì)員積分管理系統(tǒng)一次性成本工作表9續(xù)生成本指由于正在進(jìn)行的系統(tǒng)演化和使用而產(chǎn)生的費(fèi)用。這些成本的例子典型的包括:續(xù)生成本工作表中小型連鎖超市會(huì)員積分管理系統(tǒng)項(xiàng)目(15 年)a應(yīng)用軟件維護(hù) ¥25 000b增加的數(shù)據(jù)存儲(chǔ)需求估算費(fèi)用

16、 1 500 c新軟件或硬件租用 0d供給品 500e其他 0續(xù)生成本合計(jì) ¥32 000圖 1-4 中小型連鎖超市會(huì)員積分管理系統(tǒng)續(xù)生成本工作表(3)項(xiàng)目收支平衡分析對中小型連鎖超市會(huì)員積分管理系統(tǒng)進(jìn)行一個(gè)經(jīng)濟(jì)可行性分析1011圖 1-5 中小型連鎖超市會(huì)員積分管理系統(tǒng)經(jīng)濟(jì)可行性分析圖 1-5 所示的工作表的單元格 i6 匯總了項(xiàng)目 5 年的總有形收益的npv(242988.3 元),單元格 i13 匯總了項(xiàng)目總成本的 npv,這個(gè)項(xiàng)目的 npv在單元格 i15 中顯示(56681.09 元),它表明項(xiàng)目的收益超出了成本。這個(gè)項(xiàng)目的投資回報(bào)率(roi)也在工作表中的單元格 i16 中顯示(0

17、.304)。因?yàn)榭蛇x的項(xiàng)目可能會(huì)有不同的收益和成本值,也可能有不同的預(yù)期使用期限,所以總投資回報(bào)率對于在經(jīng)濟(jì)的基礎(chǔ)上進(jìn)行項(xiàng)目比較是有用的。圖 1-5 中最后一個(gè)圖是收支平衡圖,其目的是發(fā)現(xiàn)哪一個(gè)點(diǎn)是積累收益等于成本(即收支平衡的時(shí)候) 。為了進(jìn)行收支平衡分析,確定了每年的現(xiàn)金流量的 npv。這里,每年現(xiàn)金流量的計(jì)算是從每年收益的現(xiàn)值中減去一次性成本和續(xù)生成本的現(xiàn)值。現(xiàn)金流量的總 npv 反映了以前所有多年的總現(xiàn)金流量。最后得到一個(gè)收支平衡比率(0.7616)。122.42.4 管理問題管理問題2.4.1 成員之間的溝通問題成員之間的溝通是項(xiàng)目整體計(jì)劃中的一個(gè)部分,它的作用非常重要,也常常容易被

18、忽視。經(jīng)常出現(xiàn)的問題是項(xiàng)目經(jīng)理憑自己的經(jīng)驗(yàn)進(jìn)行口頭安排與交待,項(xiàng)目成員按經(jīng)理的指示被動(dòng)地、應(yīng)付式地完成信息溝通工作。這種問題的原因主要是項(xiàng)目計(jì)劃階段項(xiàng)目經(jīng)理嫌麻煩或不重視沒有進(jìn)行嚴(yán)格的溝通計(jì)劃。一種高效的體系不應(yīng)該僅僅靠口頭傳授,落實(shí)到規(guī)范的計(jì)劃編制中很有必有。項(xiàng)目干系人眾多,沒有溝通管理計(jì)劃,溝通必然混亂。由其是對于一些新型的項(xiàng)目,項(xiàng)目經(jīng)驗(yàn)缺乏,那么通過對項(xiàng)目的建設(shè),把項(xiàng)目成員個(gè)人的成功經(jīng)驗(yàn)通過信息共享、傳遞和使用轉(zhuǎn)化為團(tuán)隊(duì)以及整個(gè)項(xiàng)目公司的組織經(jīng)驗(yàn),是我們在項(xiàng)目溝通管理中要考慮的重要問題。2.4.2 項(xiàng)目進(jìn)度的把握問題作為一個(gè)項(xiàng)目主管人員,應(yīng)該及時(shí)了解組員的進(jìn)度,切實(shí)把握項(xiàng)目的流程。作為一

19、個(gè)組員,應(yīng)該隨時(shí)向管理者匯報(bào)自己的工作,讓上級(jí)放心。關(guān)于項(xiàng)目進(jìn)度的把握問題主要要注意以下幾點(diǎn): 關(guān)開計(jì)劃的周密性 計(jì)劃要分粗細(xì),粗的計(jì)劃就是里程碑,界定某段時(shí)間內(nèi)要出哪些成果。細(xì)的計(jì)劃也就是任務(wù)執(zhí)行計(jì)劃,要注意預(yù)留單元測試修改的時(shí)間,并且要預(yù)留未知干擾的時(shí)間。否則計(jì)劃太脆弱,稍有意外就要面臨大調(diào)整。計(jì)劃的制定不單單要滿足工期要求還要可行,再漂亮的計(jì)劃如果不可行就是花瓶。計(jì)劃是可以調(diào)整的,但里程碑計(jì)劃盡量不要調(diào)整。 計(jì)劃執(zhí)行情況跟蹤 必須定期跟蹤計(jì)劃的執(zhí)行情況,根據(jù)實(shí)際情況做相應(yīng)調(diào)整。也就是要監(jiān)督計(jì)劃執(zhí)行。每個(gè)開發(fā)任務(wù)的嚴(yán)格驗(yàn)收 每個(gè)任務(wù)的成果都要嚴(yán)格驗(yàn)收,如果有問題沒有及時(shí)解決,對后面的13工

20、作壓力太大,往往出現(xiàn)前面都是“按計(jì)劃執(zhí)行” ,到后面爆發(fā)性的延期。 風(fēng)險(xiǎn)預(yù)測 不論是項(xiàng)目經(jīng)理還是成員,都要有風(fēng)險(xiǎn)意識(shí)。最大的風(fēng)險(xiǎn)不是在技術(shù)層面上,而是在項(xiàng)目組成員上,要注意在項(xiàng)目開發(fā)期間會(huì)不會(huì)有人離開,會(huì)不會(huì)有人參加,項(xiàng)目組成員在此期間會(huì)不會(huì)休假或外出,某人生病了,要及時(shí)做好調(diào)整計(jì)劃準(zhǔn)備等等。技術(shù)方面的可以適當(dāng)預(yù)留新技術(shù)的摸索時(shí)間。3 3系統(tǒng)需求說明系統(tǒng)需求說明3.13.1 系統(tǒng)需求描述系統(tǒng)需求描述3.1.1 用戶提出自己的需求(1)新會(huì)員卡卡使用磁卡及防偽標(biāo)志,免費(fèi)更換舊版會(huì)員卡。在更換卡進(jìn),要求用戶重新填寫詳細(xì)資料,并錄入電腦。會(huì)員卡如果遺失,超市方面給予補(bǔ)辦,但不補(bǔ)積分。新版會(huì)員卡無有效

21、期限。(2)新會(huì)員卡分不同級(jí)別:白金卡、金卡、銀卡。卡的級(jí)別由超市自己決定,并根據(jù)市場行情隨時(shí)做出變化。不同卡有不同的辦理方法和優(yōu)惠政策。一個(gè)人只能辦一張卡,根據(jù)辦卡時(shí)的身份證號(hào)來識(shí)別。(3)會(huì)員卡不能銷售,辦卡人員不能以各種名目向辦卡人索取錢財(cái)或其他優(yōu)惠。除更換新卡的會(huì)員外,其他辦理新卡的會(huì)員一律憑銷售單據(jù)辦理,辦卡人員仔細(xì)核對銷售單據(jù),并要求用戶留下詳細(xì)信息。(4)新會(huì)員卡使用積分制,積多少分由超市根據(jù)促銷力度的大小決定。除管理人員外,其他任何人不能隨便修改積分比率。憑留念單據(jù)辦卡的顧客,在新辦的卡中加入此次消費(fèi)的積分,換卡顧客因?yàn)闆]有歷史手工數(shù)據(jù)的記錄,所以新卡中無積分。(5)顧客在每次

22、結(jié)賬時(shí)需要出示會(huì)員卡,款臺(tái)人員將卡號(hào)掃描到電腦里,軟件系統(tǒng)可以自動(dòng)根據(jù)顧客此次消費(fèi)金額積分,款臺(tái)人員不能看到顧客的任何信息。顧客可到服務(wù)臺(tái)更改信息、查詢積分、查詢歷史消費(fèi)記14錄等。(6)顧客如果退貨,服務(wù)臺(tái)人員要先根據(jù)銷售單據(jù)查看當(dāng)初是否使用會(huì)員卡,如使用了,則要求顧客出示會(huì)員卡,并減去當(dāng)初單據(jù)所加的積分。(7)在大型節(jié)假日將推行“憑會(huì)員卡積分免費(fèi)得商品”的活動(dòng),具體商品由超市根據(jù)庫存決定,并且只能由管理人員修改,其他任何人不得擅自更改。反饋商品時(shí),要求顧出示會(huì)員卡,電腦算出顧客總積分,如滿足免費(fèi)條件,將給予商品并送去相應(yīng)積分,免費(fèi)商品不能退換。超市需要的就是能滿足以上需要的軟件。需求就是一

23、套軟件的終極目標(biāo),但并不是每一個(gè)需求才能達(dá)到,還需要根據(jù)開發(fā)環(huán)境一條條地分析這些需求。3.1.2 分析用戶的需求根據(jù)用戶的需求一條條地分析具體流程的有效性和可行性,從軟件的角度完善了其中的細(xì)節(jié),得出了用戶需求中的不可行部分。不可行需求(包括有局限性的需求)列表如下:(1) “新會(huì)員卡使用磁卡及防偽標(biāo)志” 。使用磁卡可以,但必須具備掃描磁卡的專用設(shè)備,僅僅依靠軟件無法實(shí)現(xiàn)。防偽標(biāo)志的使用由用戶自己決定,也不能通過軟件實(shí)現(xiàn)。(2) “辦卡人員不能以各種名目向辦卡人索取錢財(cái)或其它優(yōu)惠” 。軟件不是萬能的,無法監(jiān)督辦卡人員,此需求只能由用戶管理部門實(shí)施各種監(jiān)管制度來滿足。(3) “卡的級(jí)別由超市自己決

24、定,并根據(jù)市場行情隨時(shí)做出變化” 。由于卡級(jí)別是與卡的消費(fèi)記錄和客戶信息等關(guān)聯(lián)在一起的,所以如果刪除卡級(jí)別,則有可能導(dǎo)致客戶信息丟失或消費(fèi)記錄混亂等局面,所以建議卡級(jí)別一但建立,不要隨便修改。(4) “會(huì)員卡如果遺失,超市方面給予補(bǔ)辦,但不補(bǔ)積分” 。會(huì)員卡是通過身份證號(hào)來確定的,一人只辦一張,如果顧客遺失,重新辦理時(shí),舊的客戶、積分以及消費(fèi)記錄都存在,卻不給顧客補(bǔ)積分,這樣明顯與以15前的歷史記錄沖突。建議要么直接不給補(bǔ)辦,要么補(bǔ)辦卡時(shí)同時(shí)補(bǔ)積分。(5)換卡顧客因?yàn)闆]有歷史手工數(shù)據(jù)的記錄,所以新卡中無積分。顧客手中有卡,說明在此消費(fèi)過,是否允許顧客憑借以前的銷售單據(jù)補(bǔ)積分?(6)由于用戶已經(jīng)

25、存在一套銷售系統(tǒng),為了不沖突,建議會(huì)員卡積分統(tǒng)一到服務(wù)臺(tái)辦理,與款臺(tái)分離。3.1.3 與用戶確定最后的需求對于不清晰的地方再與用戶進(jìn)行溝通,做到清楚地明白用戶究竟要什么樣的功能。在雙方的一致協(xié)商下,軟件的最終需求如下:(1)會(huì)員卡使用磁卡,允許手工輸入卡號(hào)和掃描器輸入兩種方式。會(huì)員卡號(hào)的長度為 10 位:前 2 位是各分店的英文簡稱,后 8 位是連續(xù)的號(hào)碼,從 01 開始。會(huì)員卡號(hào)編制由公司統(tǒng)一管理。一旦確定,不能隨意更改。(2)會(huì)員卡辦卡方式有兩種:一種是舊卡免費(fèi)換新卡,一種是憑銷售單據(jù)免費(fèi)辦理。消費(fèi)單據(jù)一旦確定,不能隨意更改。(3)目前會(huì)員卡分 3 種級(jí)別;白金、金卡、銀卡,允許用戶修改級(jí)

26、別。三種級(jí)別的卡積分不同,分別是 3 分/元、2 分/元、1 分/元,積分規(guī)則允許用戶自己修改。(4)會(huì)員卡辦理時(shí)登記用戶資料,尤其是身份證號(hào),并以此作為每個(gè)會(huì)員只能辦理一張卡的憑證。除了身份證之外,會(huì)員卡的其他資料允許修改。(5)為了不與用戶目前的銷售系統(tǒng)不起沖突,銷售時(shí)并不積分,而是要求顧客到服務(wù)臺(tái)統(tǒng)一辦理積分。退貨時(shí),要求顧客出示銷售單據(jù),如果當(dāng)初使用了會(huì)員卡,同時(shí)要求出示會(huì)員卡,并減去當(dāng)初所得積分。(6)顧客憑積分可以免費(fèi)兌換商品,兌換時(shí)減去相應(yīng)積分。軟件允許修改兌換原則,所換商品必須為庫存商品。兌換商品不區(qū)分卡的類型,只要積分達(dá)到要求就可以。(7)軟件系統(tǒng)包括以下方式的查詢操作:16

27、 根據(jù)用戶名、卡號(hào)或身份證號(hào)查詢用戶資料 根據(jù)卡號(hào)查詢積分 根據(jù)卡號(hào)查詢消費(fèi)歷史 根據(jù)商品編碼,查詢商品庫存(8)軟件使用權(quán)限管理方式。根據(jù)工作流程,軟件初期有 3 種角色:服務(wù)臺(tái)人員、管理人員、用戶(會(huì)員) 。管理人員允許對各種規(guī)則進(jìn)行增刪改的操作,服務(wù)人員允許進(jìn)行所有查詢操作;會(huì)員具有修改自己資料的權(quán)限。3.1.4 根據(jù)最終需求確定系統(tǒng)工作環(huán)境(1)軟件環(huán)境服務(wù)器除了安裝會(huì)員積分系統(tǒng)外,還必須具備相應(yīng)的支持系統(tǒng)的軟件環(huán)境,才能使軟件系統(tǒng)正常的運(yùn)行。要求如下: .net framework2.0 框架,這是軟件運(yùn)行的必須環(huán)境 應(yīng)采用統(tǒng)一的操作系統(tǒng)(如 windows xp) ,這是為了更好的

28、地管理 服務(wù)器上安裝數(shù)據(jù)庫管理系統(tǒng)(如 sql server 2005) ,從而實(shí)現(xiàn)數(shù)據(jù)庫的管理和信息資源安全化管理 安裝防病毒軟件、病毒防火墻等。(2)硬件環(huán)境 cpu 必須是奔騰以上,128m 內(nèi)存配置。為了更好更快地運(yùn)行,如果情況允許,建議盡量采用配置更好的電腦 運(yùn)行通暢的網(wǎng)絡(luò)環(huán)境。由于超市是連鎖機(jī)構(gòu),所有的內(nèi)容都是通過網(wǎng)絡(luò)傳輸,如果網(wǎng)絡(luò)出現(xiàn)問題,則系統(tǒng)將無法正常工作 服務(wù)器:由于系統(tǒng)采用 b/s 結(jié)構(gòu),為了數(shù)據(jù)安全和速度問題,數(shù)據(jù)庫和系統(tǒng)文件等要求單獨(dú)安裝在一臺(tái)機(jī)器上,服務(wù)器選擇是系統(tǒng)穩(wěn)定性的關(guān)鍵因素 寫卡及刷卡器:會(huì)員卡全部采用新版磁卡,必須具備讀寫磁17卡的裝備才能進(jìn)行正確的掃描。

29、寫卡器一般用于向會(huì)員卡寫入會(huì)員卡號(hào)等簡單信息,刷卡器則放在服務(wù)臺(tái)以備顧客積分使用3.23.2 系統(tǒng)用例設(shè)計(jì)系統(tǒng)用例設(shè)計(jì)用例圖是描述業(yè)務(wù)流程的一種設(shè)計(jì)圖簡單易懂,需求分析過程中在體驗(yàn)用戶業(yè)務(wù)為了比較接近事實(shí)上的業(yè)務(wù),畫出用例圖與用戶就用例進(jìn)行磋商。經(jīng)與用戶磋商后確定以下五個(gè)用例:3.2.1 辦卡業(yè)務(wù)用例主要角色是:顧客、系統(tǒng)、服務(wù)臺(tái)人員。用例包括:填寫資料、辦卡、積分、蓋戳確認(rèn)。辦卡業(yè)務(wù)最終用例如下圖所示:顧客填寫資料辦卡積分蓋戳確認(rèn)記錄積分服務(wù)臺(tái)人員系統(tǒng)圖 3-1 辦卡業(yè)務(wù)用例圖3.2.2 銷售業(yè)務(wù)用例主要角色是:顧客、款臺(tái)人員和系統(tǒng)。用例包括:款臺(tái)結(jié)賬、減庫存、收款。銷售業(yè)務(wù)最終用例如下圖所

30、示:18顧客款臺(tái)結(jié)帳減庫存收款系統(tǒng)賬臺(tái)人員圖 3-2 銷售業(yè)務(wù)用例圖3.2.3 退貨業(yè)務(wù)用例主要角色是:顧客、服務(wù)臺(tái)人員和系統(tǒng)。用例包括:退貨、加庫存、退款、退積分、記錄積分歷史。退貨業(yè)務(wù)最終用例如下圖所示:顧客2退貨加庫存退款退積分記錄積分歷史系統(tǒng)2款臺(tái)2圖 3-3 退貨業(yè)務(wù)用例圖3.2.4 查詢積分記錄用例主要角色是:顧客、服務(wù)臺(tái)人員和系統(tǒng)。用例包括:出示卡號(hào)、查詢、系統(tǒng)搜索。系統(tǒng)搜索可以放在一個(gè)包內(nèi),包內(nèi)包括 3 個(gè)用例:搜索銷售記錄、搜索退貨記錄、搜索反饋商品記錄。查詢積分記錄用最終例如下圖所示:顧客3出示卡號(hào)查詢系系統(tǒng)統(tǒng)搜搜索索系統(tǒng)3服務(wù)臺(tái)人員3圖 3-4 查詢積分記錄用例圖193.

31、2.5 反饋業(yè)務(wù)用例主要角色是:顧客、服務(wù)臺(tái)人員和系統(tǒng)。用例包括:出示卡號(hào)、查詢積分、減少庫存、記錄積分歷史。反饋業(yè)務(wù)最終用例如下圖所示:顧客4出示卡號(hào)查詢積分兌換積分減少庫存記錄積分歷史系統(tǒng)4服務(wù)臺(tái)人員圖 3-5 反饋業(yè)務(wù)用例圖3.33.3 概念數(shù)據(jù)模型概念數(shù)據(jù)模型3.3.1 商品相關(guān)表概念數(shù)據(jù)模型商品相關(guān)表概念數(shù)據(jù)模型salepksaleidstockidstockcountsaledatestockpkstockidstocknamestockpricestockcountbackstockpkbackidstockidstockcountbackdategiftrulepkruleid

32、stockidcardcountfreestockpkfreeidstockidfreedate10.n1.n11.n10.n1圖 3-6 商品相關(guān)表關(guān)系203.3.2 顧客會(huì)員卡相關(guān)表概念數(shù)據(jù)模型cardtypepkcardidcardtypenamecardrulememberinfopkmemberidcardidpkcustnumcustnamecustidentitycustphonecustaddresscarddate11圖 3-7 顧客會(huì)員卡相關(guān)表關(guān)系3.43.4 對象關(guān)系模型對象關(guān)系模型3.4.1 商品相關(guān)表關(guān)系的模型轉(zhuǎn)化1將類轉(zhuǎn)化為對象關(guān)系。stock(stockid、st

33、ockname、stockprice、stockcount)sale(saleid、stockcount)backstock(backid、stockcount、backdate)giftrule(ruleid、cardcount)freestock(freeid、freedate)2為 1:m 關(guān)系安排外鍵。stock(stockid、stockname、stockprice、stockcount)sale(saleid、stockid、stockcount)backstock(backid、stockid、stockcount、backdate)giftrule(ruleid、stocki

34、d、cardcount)freestock(freeid、stockid、freedate)這樣產(chǎn)生的結(jié)果是 5 個(gè)對象類中,stockid 作為 stock 的主鍵,并作21為其他 4 個(gè)類的外鍵。3.4.2 顧客會(huì)員卡相關(guān)表關(guān)系的模型轉(zhuǎn)化1將類轉(zhuǎn)化為對象關(guān)系。memberinfo(memberid、custnum、custname、custidentity、custphone、custaddress、carddate)cardtype(cardid、cardtypename、cardrule)2為 1:m 關(guān)系安排外鍵。memberinfo(memberid、cardid、custnum、

35、custname、custidentity、custphone、custaddress、carddate)cardtype(cardid、cardtypename、cardrule)這樣產(chǎn)生的結(jié)果是 2 個(gè)對象類中,cardid 作為 cardtype 的主鍵,并作為 memberinfo 類的外鍵。3.3.5 5 順序圖順序圖3.5.1 辦卡業(yè)務(wù)順序顧客顧客服務(wù)臺(tái)人員系統(tǒng)辦卡業(yè)務(wù)辦卡from填寫資料填寫資料辦卡積分記錄積分記錄積分蓋戳確認(rèn)圖 3-8 辦卡業(yè)務(wù)順序圖223.5.2 銷售業(yè)務(wù)用例顧客顧客賬臺(tái)人員系統(tǒng)銷售業(yè)務(wù)銷售from購買商品購買商品賬臺(tái)結(jié)賬減庫存收款購買商品圖 3-9 銷售業(yè)務(wù)

36、順序圖3.5.3 退貨業(yè)務(wù)順序顧客顧服務(wù)臺(tái)人員退貨from退回商品退回商品加庫存退款退積分記錄歷史積分退回商品圖 3-10 退貨業(yè)務(wù)順序圖233.5.4 查詢積分業(yè)務(wù)順序顧客顧客服務(wù)臺(tái)人員系統(tǒng)查詢積分from查詢積分查詢積分出示卡或卡號(hào)查詢系統(tǒng)搜索圖 3-11 查詢積分業(yè)務(wù)順序圖3.5.5 反饋業(yè)務(wù)順序顧客顧客服務(wù)臺(tái)人員系統(tǒng)反饋業(yè)務(wù)from出示卡或卡號(hào)出示卡或卡號(hào)查詢積分兌換積分減少庫存記錄歷史積分圖 3-12 反饋業(yè)務(wù)順序圖243.63.6 活動(dòng)圖活動(dòng)圖3.6.2 辦卡業(yè)務(wù)活動(dòng)圖給顧客辦卡添加一項(xiàng)新記錄填寫資料蓋戳確認(rèn)記錄積分在本超市購買商品-是-否圖 3-13 辦卡業(yè)務(wù)活動(dòng)圖3.6.2 銷

37、售業(yè)務(wù)活動(dòng)圖款臺(tái)結(jié)賬減庫存收款購買商品圖 3-14 銷售業(yè)務(wù)活動(dòng)圖253.5.3 退貨業(yè)務(wù)活動(dòng)圖退貨加庫存記錄積分歷史退款退積分圖 3-15 退貨業(yè)務(wù)活動(dòng)圖3.5.4 查詢積分業(yè)務(wù)活動(dòng)圖出示卡或卡號(hào)查詢告知查詢結(jié)果用戶是否存在-否-是圖 3-16 查詢業(yè)務(wù)活動(dòng)圖263.5.5 反饋業(yè)務(wù)活動(dòng)圖減少庫存積分兌換記錄歷史積分出示卡或卡號(hào)查詢用戶是否存在-否-是-否-是圖 3-17 反饋業(yè)務(wù)活動(dòng)圖3.73.7 業(yè)務(wù)規(guī)則模型業(yè)務(wù)規(guī)則模型3.7.1 會(huì)員卡類型業(yè)務(wù)規(guī)則實(shí)體的方法根據(jù)業(yè)務(wù)的主要功能來創(chuàng)建,該類有以下 4 個(gè)方法: 添加會(huì)員卡類型輸入的參數(shù)是卡類型和積分規(guī)則。如果成功,方法返回 true,否則

38、返回 false。如果添加的會(huì)員卡類型已經(jīng)存在,返回 false,在外部處理此異常。 獲取積分規(guī)則因?yàn)榭愋陀形ㄒ恍?,所以可以通過卡類型來獲取積分規(guī)則 更新卡類型名稱輸入?yún)?shù)是要更改的卡類型和更改后的名稱。更新成功,方法返回 true,否則返回 false 更新卡積分規(guī)則輸入?yún)?shù)為卡類型和新規(guī)則,更新成功返回 true。27這些方法的實(shí)現(xiàn)流程如下圖所示:添加會(huì)員卡修改卡類型修改積分規(guī)則獲取卡積分規(guī)則判斷卡類型是否重復(fù)判斷卡類型是否重復(fù)執(zhí)行添加命令執(zhí)行修改命令執(zhí)行修改命令執(zhí)行獲取命令sql server會(huì)員卡類型實(shí)體方法用戶的輸入實(shí)體訪問方法類是是否否更新更新添加到數(shù)據(jù)庫執(zhí)行并返回到數(shù)據(jù)庫 實(shí)體

39、方法訪問流程圖 3-18 實(shí)體方法訪問流程圖3.7.2 會(huì)員資料管理業(yè)務(wù)規(guī)則實(shí)體的方法根據(jù)業(yè)務(wù)的主要功能來創(chuàng)建。會(huì)員資料管理主要有 3 個(gè)功能:查詢、添加和修改。查詢根據(jù)輸入?yún)?shù)的不同,又可以分通過會(huì)員卡號(hào)查詢、通過身份證號(hào)查詢和通過會(huì)員姓名查詢 3 種。綜合來講,會(huì)員資料實(shí)體共有 5 個(gè)方法: 添加會(huì)員資料添加時(shí),要求輸入會(huì)員的所有信息,添加成功返回 true。因?yàn)槌惺歉鶕?jù)身份證來判斷一人一卡,所以在添加前要判斷身份證是否已經(jīng)登記過,如果是,則返回 false 交由外部程序處理。 修改會(huì)員資料用戶在修改時(shí),程序并不知道具體哪些字段做了改動(dòng),為了方便28操作,要將所有信息更新回?cái)?shù)據(jù)庫。根據(jù)業(yè)

40、務(wù)實(shí)際情況,會(huì)員資料的卡號(hào)、身份號(hào)、 姓名、辦卡日期不允許修改。修改成功返回 true。 通過會(huì)員卡獲取會(huì)員資料用戶輸入會(huì)員卡號(hào),返回此會(huì)員的所有信息。 通過身份證號(hào)獲取會(huì)員資料用戶輸入身份證號(hào),返回會(huì)員所有資料。 通過會(huì)員姓名獲取會(huì)員資料用戶輸入姓名,返回會(huì)員所有資料.這些方法的實(shí)現(xiàn)流程如下圖所示:添加會(huì)員資料獲取會(huì)員資料修改會(huì)員資料執(zhí)行獲取命令執(zhí)行修改命令執(zhí)行添加命令判斷身份證號(hào)是否重復(fù)可通過三種途徑獲?。簳?huì)員卡號(hào)、身份證號(hào)、會(huì)員姓名sql server會(huì)員資料實(shí)體方法用戶的輸入實(shí)體的訪問方法類是否返回結(jié)果返回結(jié)果獲取更新添加到數(shù)據(jù)庫 會(huì)員資料實(shí)體方法流程圖圖 3-19 會(huì)員資料實(shí)體方法流

41、程圖3.7.3 商品管理業(yè)務(wù)規(guī)則商品信息實(shí)體只有 2 個(gè)方法29 通過商品編碼獲取商品信息方法:輸入商品編碼和需要的數(shù)量,返回商品信息實(shí)體。 更新商品庫存方法:銷售、退貨和反饋這 3 個(gè)操作,都要更新商品的庫存。不同的是,銷售和反饋是減庫存,退貨是加庫存。更新時(shí)程序需要知道要更新的商品的編碼,以及更新的數(shù)量。選擇操作類型商品編號(hào)執(zhí)行獲取命令事務(wù)處理執(zhí)行更新命令銷售、退貨、反饋獲取商品名稱、庫存和價(jià)格sql server返回結(jié)果獲取返回結(jié)果更新調(diào)用商品信息實(shí)體方法用戶的輸入實(shí)體訪問方法類商品實(shí)體方法流程圖圖 3-20 商品實(shí)體流程圖3.7.4 會(huì)員卡積分管理業(yè)務(wù)規(guī)則會(huì)員卡積分管理模塊包括:通過卡

42、號(hào)獲取積分和查詢積分歷史記錄。為了保持用戶以前的系統(tǒng)不作改動(dòng),本模塊還添加了一個(gè)積分處理的功能,處理銷售、退貨和反饋時(shí),積分所發(fā)生的變化。 會(huì)員卡積分管理方法會(huì)員卡積分管理模塊并無實(shí)體類,因?yàn)槠渲饕翘幚硪恍┓椒?,屬于功能模塊。其處理流程如下圖所示:30用戶輸入卡號(hào)用sql實(shí)現(xiàn)sum思想?yún)R總獲取方法getcountbycardnumsqlcommand執(zhí)行獲取方法executescalarsql server獲取會(huì)員卡積分流程圖方法類cardcountinfosqlheper調(diào)用返回積分調(diào)用返回積分調(diào)用返回積分通過卡號(hào)獲取積分流程圖圖 3-21 通過卡號(hào)獲取積分流程圖 積分處理功能積分處理功能

43、的主要任務(wù)就是,將銷售、退貨、反饋 3 個(gè)操作過程中發(fā)生的積分變化記錄下來。用戶輸入條件后,單擊“確定”按鈕,系統(tǒng)自動(dòng)記錄歷史信息。其處理流程如下圖所示:31用戶輸入卡號(hào),操作類型,金額sqlcommand執(zhí)行獲取方法executescalar獲取積分規(guī)則sqlcommand執(zhí)行方法executenonquery分析卡積分規(guī)則,計(jì)算積分添加記錄方法addhistorysql sever積分處理方法流程圖方法類cardcountinfosqlheper調(diào)用返回結(jié)果返回結(jié)果調(diào)用調(diào)用返回行數(shù)調(diào)用返回結(jié)果調(diào)用調(diào)用返回返回積分規(guī)則積分處理流程圖 3-22 積分處理流程 查詢積分功能查詢積分功能可以通過會(huì)

44、員的卡號(hào)查詢其到目前為止的積分。其處理流程如下圖所示32用戶輸入會(huì)員卡號(hào)獲取方法gethistorysqlcommand執(zhí)行獲取方法executereadersql server獲取會(huì)員卡積分記錄流程圖方法類cardcountinfosqlheper調(diào)用返回結(jié)果調(diào)用返回積分調(diào)用返回結(jié)果查詢積分歷史流程圖 3-23 查詢積分歷史流程圖 積分反饋功能積分反饋功能的要求是:根據(jù)卡號(hào),查詢積分,并根據(jù)積分反饋規(guī)則反饋商品。4 4系統(tǒng)設(shè)計(jì)說明系統(tǒng)設(shè)計(jì)說明4.14.1 物理數(shù)據(jù)庫設(shè)計(jì)物理數(shù)據(jù)庫設(shè)計(jì)4.1.1 數(shù)據(jù)表結(jié)構(gòu)設(shè)計(jì)表 4-1 銷售表(sale)33表 4-2 商品表(stock)表 4-3 卡類型

45、表(cardtype)表 4-4 會(huì)員資料表(memberinfo)表 4-5 退貨表(backstock)34表 4-6 反饋規(guī)則表(giftrule)表 4-7 反饋商品表(freestock)表 4-8 會(huì)員卡歷史記錄表(cardhistroy)權(quán)限管理模塊用到了 asp.net 2.0 自帶的 membership 數(shù)據(jù)庫,因?yàn)槔锩娴谋磔^多就不一一列出只列出權(quán)限管理涉及到的幾個(gè)表:表 4-9 用戶表35表 4-10 角色表表 4-11 角色與用戶聯(lián)系表4.1.2 數(shù)據(jù)庫表關(guān)系圖示圖 4-1 數(shù)據(jù)庫表間關(guān)系圖4.24.2 體系結(jié)構(gòu)設(shè)計(jì)體系結(jié)構(gòu)設(shè)計(jì)系統(tǒng)架構(gòu)就是一個(gè)軟件系統(tǒng)從整體到到部分的最

46、高層次的劃分。系統(tǒng)36通常由很多元件組成,而系統(tǒng)架構(gòu)的主要功能就是設(shè)計(jì)有哪些元件以及這些元件之間的關(guān)系。系統(tǒng)架構(gòu)設(shè)計(jì)除了要實(shí)現(xiàn)用戶要求的主要功能外,還要實(shí)現(xiàn)以下目標(biāo): 可擴(kuò)展性:滿足用戶對新增功能的需求 安全性:保護(hù)用戶的數(shù)據(jù)是一個(gè)系統(tǒng)必須面對的問題 可定制性:允許根據(jù)不同用戶的需求進(jìn)行調(diào)整 穩(wěn)定性:軟件運(yùn)行時(shí)保持穩(wěn)定的性能,才可以提高用戶的效率系統(tǒng)架構(gòu)設(shè)計(jì)主要包括:應(yīng)用軟件系統(tǒng)架構(gòu)、系統(tǒng)集成架構(gòu)設(shè)計(jì)、系統(tǒng)接口設(shè)計(jì)等。以下研究的是應(yīng)用軟件系統(tǒng)架構(gòu),即從整個(gè)系統(tǒng)的功能著手,分析系統(tǒng)所包括的元件以及這些元件之間的通信關(guān)系。4.2.1 三層架構(gòu)的組成三層架就是將系統(tǒng)分為用戶界面層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪

47、問層。下圖是一個(gè) b/s 模式的三層細(xì)分系統(tǒng)架構(gòu)組成圖:b br ro ow ws se eh ht tm ml l服服務(wù)務(wù)c co oo ok ki ie e服服務(wù)務(wù)用用戶戶表表示示層層業(yè)業(yè)務(wù)務(wù)邏邏輯輯層層數(shù)數(shù)據(jù)據(jù)訪訪問問層層w we eb b s se er rv ve er r安安全全處處理理緩緩沖沖處處理理任任務(wù)務(wù)處處理理d da at ta a s se er rv ve er r業(yè)業(yè)務(wù)務(wù)實(shí)實(shí)體體類類數(shù)數(shù)據(jù)據(jù)操操作作類類圖 4-2 三層架構(gòu)圖37(1)用戶界面層用戶接口部分,擔(dān)負(fù)著用戶與系統(tǒng)的對話功能。主要用于檢查用戶的鍵盤輸入和運(yùn)算結(jié)果輸出。現(xiàn)在都采用圖形用戶接口,便于用戶直觀操作

48、。asp.net 2.0 使用了可視化編程界面,更輕松地實(shí)現(xiàn)了與用戶的圖形交互界面。(2)業(yè)務(wù)邏輯層實(shí)現(xiàn)業(yè)務(wù)邏輯功能的算法和處理。處理用戶界面層的輸入或調(diào)用數(shù)據(jù)訪問層返回?cái)?shù)據(jù)結(jié)果。業(yè)務(wù)邏輯層主要包括業(yè)務(wù)功能和數(shù)據(jù)功能兩部分。業(yè)務(wù)功能在功能層內(nèi)部就可以解決,數(shù)據(jù)功能必須依靠與數(shù)據(jù)訪問層的交互才可以完成。(3)數(shù)據(jù)訪問層就是對數(shù)據(jù)庫中數(shù)據(jù)的管理。通常為了提高數(shù)據(jù)讀取速度,在數(shù)據(jù)庫在使用大量的存儲(chǔ)過程。在數(shù)據(jù)層中使用盡量少的 sql 語句,便于以后的維護(hù)。數(shù)據(jù)層一般情況下與用戶界面層沒有任何關(guān)聯(lián)。(4)三層架構(gòu)的優(yōu)點(diǎn) 提高程序的可維護(hù)性:三層架構(gòu)層次分明,一旦運(yùn)行出現(xiàn)問題,可以很快的判斷是哪一層的問

49、題,利于維護(hù)。 可以合理快速的開發(fā):因?yàn)槿龑又g除了調(diào)用沒有其他關(guān)聯(lián),只需先把三層之間的接口定義好,則程序員可以并行開發(fā),提高開發(fā)進(jìn)度。 提高了系統(tǒng)安全性:每層都有安全設(shè)置,即使用戶界面層被攻破,但下一層的安全還有保障。 提高了系統(tǒng)的擴(kuò)展性:三層結(jié)構(gòu)最大的好處就是在擴(kuò)展應(yīng)用系統(tǒng)時(shí),改動(dòng)的部分不會(huì)影響大局。4.2.2 數(shù)據(jù)訪問層(data access layer dal)數(shù)據(jù)訪問層一般由兩部分組成:業(yè)務(wù)實(shí)體組件和數(shù)據(jù)訪問邏輯組件。38在三層架構(gòu)中數(shù)據(jù)訪問層是唯一與數(shù)據(jù)庫打交道的層,所以該層的設(shè)計(jì)要盡量以提高速度和安全為目標(biāo)。業(yè)務(wù)實(shí)體組件體現(xiàn)的是現(xiàn)實(shí)生活中的業(yè)務(wù)數(shù)據(jù),而數(shù)據(jù)訪問邏輯組件則是在數(shù)據(jù)

50、庫中檢索數(shù)據(jù)或把業(yè)務(wù)數(shù)據(jù)保存回?cái)?shù)據(jù)庫。(1)數(shù)據(jù)邏輯訪問組件(data access)數(shù)據(jù)邏輯訪問組件是一組通用的訪問數(shù)據(jù)庫的代碼,在所有項(xiàng)目中都可以用,一般不需要修改。本系統(tǒng)采用的是 micrsoft 提供的數(shù)據(jù)訪問助手 sqlhelper,其封裝嚴(yán)密,且應(yīng)用簡單。下圖是 sqlhelper 的功能圖:圖 4-3 sqlhelper 功能圖(2)業(yè)務(wù)實(shí)體組件(entity class)業(yè)務(wù)實(shí)體是以數(shù)據(jù)的形式表示現(xiàn)實(shí)生活中的業(yè)務(wù)模型。業(yè)務(wù)實(shí)體的屬性與數(shù)據(jù)庫中的表有一一對應(yīng)的關(guān)系。業(yè)務(wù)實(shí)體不參與事務(wù)處理,只是事務(wù)處理過程中的一部分?jǐn)?shù)據(jù)。事務(wù)處理由數(shù)據(jù)訪問組件完成。sqlhelpersql ser

51、ver用戶修改信息用戶添加信息用戶獲取信息修改添加返回?cái)?shù)據(jù)獲取數(shù)據(jù)返回結(jié)果執(zhí)行命令39下圖為本系統(tǒng)中一個(gè)業(yè)務(wù)實(shí)體:圖 4-4 業(yè)務(wù)實(shí)體圖本系統(tǒng)中數(shù)據(jù)訪問層的文件結(jié)構(gòu)如下圖所示:圖 4-5 數(shù)據(jù)訪問層的文件結(jié)構(gòu)圖404.2.3 業(yè)務(wù)邏輯層(business logic layer bll)業(yè)務(wù)邏輯層主要由一些數(shù)據(jù)操作類組成,通過這些數(shù)據(jù)操作類來完成系統(tǒng)的業(yè)務(wù)邏輯,本系統(tǒng)的業(yè)務(wù)邏輯層由以下 4 個(gè)數(shù)據(jù)操作類(cardcountinfo、cardtypeda、memberinfoda、stockda)組成:圖 4-6 業(yè)務(wù)層操作類圖本系統(tǒng)中業(yè)務(wù)邏輯層的文件結(jié)構(gòu)如下圖所示:圖 4-7 業(yè)務(wù)邏輯層的文件

52、結(jié)構(gòu)4.2.4 用戶界面層(web 層) 用戶界面的規(guī)則不僅影響到軟件外觀的可觀賞性,而且對應(yīng)用程序的易用性和可操作性也有很重要的作用。所以界面的設(shè)計(jì)從用戶的角度出發(fā),以方便用戶使用作為軟件設(shè)計(jì)的目標(biāo)。軟件與用戶之間的交互都是通過用41戶界面來完成的,簡捷直觀的界面讓用戶對軟件的使用不再有陌生感。4.34.3 系統(tǒng)模塊劃分系統(tǒng)模塊劃分4.3.1 會(huì)員卡類型模塊圖 4-8 會(huì)員卡類型模塊4.3.2 會(huì)員卡信息模塊圖 4-9 會(huì)員卡信息模塊辦理會(huì)員卡獲取會(huì)員信息會(huì)員卡信息修改會(huì)員信息會(huì)員卡類型添加卡類型修改卡類型名稱獲取卡積分規(guī)則修改卡積分規(guī)則424.3.3 會(huì)員卡積分模塊圖 4-10 會(huì)員卡積分

53、模塊4.3.4 商品信息模塊圖 4-11 商品信息模塊4.3.5 基本操作模塊圖 4-12 基本操作模塊銷售積分會(huì)員卡積分反饋積分查詢積分歷史記錄退貨積分查詢積分增加庫存獲取商品名稱減少庫存查詢積分歷史記錄獲取商品數(shù)量商品信息基本操作反饋商品退貨銷售434.3.6 配置模塊包括權(quán)限安全等功能。由于 visual studio 2005 提供配置安全功能,在此不作描述,在接下面的實(shí)際應(yīng)用時(shí)再進(jìn)行說明。4.44.4 設(shè)計(jì)類圖設(shè)計(jì)類圖4.4.1 會(huì)員卡類型管理會(huì)員卡類型管理模塊的主要功能包括:添加卡類型、獲取卡積分規(guī)則、修改卡類型名稱、修改卡積分規(guī)則。(1)會(huì)員卡類型實(shí)體類在模塊正式開發(fā)之前,先用

54、codesmith(codesmith 是一款基于模板的代碼生成工具)生成初期的會(huì)員卡類型實(shí)體類,整理后如下所示:圖 4-13 會(huì)員卡類型實(shí)體類(2)會(huì)員卡類型實(shí)體方法實(shí)體的方法根據(jù)業(yè)務(wù)的主要功能來創(chuàng)建。根據(jù)會(huì)員卡類型管理模塊的功能,可以為該類設(shè)計(jì)以下 4 個(gè)方法: 添加會(huì)員卡類型輸入的參數(shù)是卡類型和積分規(guī)則。如果成功,方法返回 true,否44則返回 false。如果添加的會(huì)員卡類型已經(jīng)存在,返回 false,在外部處理此異常。 獲取積分規(guī)則因?yàn)榭愋陀形ㄒ恍?,所以可以通過卡類型來獲取積分規(guī)則 更新卡類型名稱輸入?yún)?shù)是要更改的卡類型和更改后的名稱。更新成功,方法返回 true,否則返回 fa

55、lse 更新卡積分規(guī)則輸入?yún)?shù)為卡類型和新規(guī)則,更新成功返回 true。會(huì)員卡類型實(shí)體方法類如圖所示:圖 4-14 會(huì)員卡類型實(shí)體方法類4.4.2 會(huì)員資料管理模塊會(huì)員資料管理模塊的主要功能包括:添加會(huì)員資料、獲取會(huì)員資料、修改會(huì)員資料,并設(shè)計(jì)這些功能的界面和在整體框架中的布局。此模塊是45保存用戶與顧客信息的重要模塊。(1)會(huì)員資料管理實(shí)體類會(huì)員資料實(shí)體類的設(shè)計(jì)有點(diǎn)麻煩,因?yàn)闀?huì)員資料表通過會(huì)員卡類型 id與會(huì)員卡類型表關(guān)聯(lián),而且會(huì)員資料會(huì)經(jīng)常用到這個(gè)字段。在設(shè)計(jì)實(shí)體方法的時(shí)候必須時(shí)刻注意這些關(guān)系。使用 codesmith 模塊生成初期的會(huì)員資料實(shí)體類,整理后如下所示:圖 4-15 會(huì)員資料管

56、理實(shí)體類(2)會(huì)員資料管理實(shí)體方法實(shí)體的方法根據(jù)業(yè)務(wù)的主要功能來創(chuàng)建。會(huì)員資料管理模塊主要有 3個(gè)功能:查詢、添加和修改。查詢根據(jù)輸入?yún)?shù)的不同,又可以分通過會(huì)員卡號(hào)查詢、通過身份證號(hào)查詢和通過會(huì)員姓名查詢 3 種。綜合來講,會(huì)46員資料實(shí)體共有 5 個(gè)方法: 添加會(huì)員資料添加時(shí),要求輸入會(huì)員的所有信息,添加成功返回 true。因?yàn)槌惺歉鶕?jù)身份證來判斷一人一卡,所以在添加前要判斷身份證是否已經(jīng)登記過,如果是,則返回 false 交由外部程序處理。 修改會(huì)員資料用戶在修改時(shí),程序并不知道具體哪些字段做了改動(dòng),為了方便操作,要將所有信息更新回?cái)?shù)據(jù)庫。根據(jù)業(yè)務(wù)實(shí)際情況,會(huì)員資料的卡號(hào)、身份號(hào)、 姓

57、名、辦卡日期不允許修改。修改成功返回 true。 通過會(huì)員卡獲取會(huì)員資料用戶輸入會(huì)員卡號(hào),返回此會(huì)員的所有信息。 通過身份證號(hào)獲取會(huì)員資料用戶輸入身份證號(hào),返回會(huì)員所有資料。 通過會(huì)員姓名獲取會(huì)員資料用戶輸入姓名,返回會(huì)員所有資料.47圖 4-16 會(huì)員資料管理實(shí)體方法類4.4.3 商品管理模塊商品管理模塊包括商品信息和基本操作兩大部分。商品信息的獲取是在操作過程中進(jìn)行的,操作主要包括:銷售、退貨和反饋。(1)商品信息實(shí)體類商品信息包括 3 個(gè)屬性:商品的數(shù)量、價(jià)格、庫存。使用 codesmith模板生成初期的商品信息實(shí)體類,稍加整理后如下所示:圖 4-17 商品信息實(shí)體類(2)商品信息實(shí)體方

58、法商品信息實(shí)體只有 2 個(gè)方法 通過商品編碼獲取商品信息方法:輸入商品編碼和需要的數(shù)量,返回商品信息實(shí)體。48 更新商品庫存方法:銷售、退貨和反饋這 3 個(gè)操作,都要更新商品的庫存。不同的是,銷售和反饋是減庫存,退貨是加庫存。更新時(shí)程序需要知道要更新的商品的編碼,以及更新的數(shù)量。圖 4-18 商品信息實(shí)體方法類4.4.4 會(huì)員卡積分管理模塊會(huì)員卡積分管理模塊包括:通過卡號(hào)獲取積分和查詢積分歷史記錄。為了保持用戶以前的系統(tǒng)不作改動(dòng),本模塊還添加了一個(gè)積分處理的功能,處理銷售、退貨和反饋時(shí),積分所發(fā)生的變化。49(1)會(huì)員卡積分管理方法會(huì)員卡積分管理模塊并無實(shí)體類,因?yàn)槠渲饕翘幚硪恍┓椒?,屬于?/p>

59、能模塊。其主要方法如下圖所示:圖 4-19 會(huì)員積分管理方法類(2)查詢積分功能查詢積分功能可以通過會(huì)員的卡號(hào)查詢其到目前為止的積分。其實(shí)現(xiàn)圖如下所示:50圖 4-20 會(huì)員積分查詢功能圖(3)積分處理功能積分處理功能的主要任務(wù)就是,將銷售、退貨、反饋 3 個(gè)操作過程中發(fā)生的積分變化記錄下來。用戶輸入條件后,單擊“確定”按鈕,系統(tǒng)自動(dòng)記錄歷史信息。其實(shí)現(xiàn)圖如下所示:圖 4-21 會(huì)員積分處理功能圖51(4)積分反饋功能積分反饋功能的要求是:根據(jù)卡號(hào),查詢積分,并根據(jù)積分反饋規(guī)則反饋商品。其實(shí)現(xiàn)圖如下所示:圖 4-22 會(huì)員積分反饋功能圖4.54.5 界面設(shè)計(jì)界面設(shè)計(jì) 用戶界面的規(guī)則不僅影響到軟

60、件外觀的可觀賞性,而且對應(yīng)用程序的易用性和可操作性也有很重要的作用。所以界面的設(shè)計(jì)從用戶的角度出發(fā),以方便用戶使用作為軟件設(shè)計(jì)的目標(biāo)。軟件與用戶之間的交互都是通過用戶界面來完成的,簡捷直觀的界面讓用戶對軟件的使用不再有陌生感。4.5.1 母版頁設(shè)計(jì)用戶要求頁面頁眉處顯示連鎖集團(tuán)名稱,頁腳處顯示服務(wù)電話、網(wǎng)址、52聯(lián)系人等總部詳細(xì)信息。左側(cè)要求顯示功能列表,允許用戶清楚的瀏覽項(xiàng)目功能。根據(jù)用戶需求,設(shè)計(jì)如下所示的母版頁(masterpage.master):圖 4-23 系統(tǒng)母版頁4.5.2 站點(diǎn)地圖(sitemap)及導(dǎo)航控件(treeview)設(shè)計(jì)根據(jù)用戶需求,頁面中要求顯示功能列表,使用

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論