詹金珍ZHAN Jin-zhen
(西北工業(yè)大學(xué)明德學(xué)院,西安710124)
高校學(xué)生水電收費管理系統(tǒng)是將復(fù)雜的水電收費管理進(jìn)行歸納、分析和總結(jié),再轉(zhuǎn)化成計算機(jī)化管理。采用面向?qū)ο蟮木幊蹋瑥木唧w的管理及業(yè)務(wù)出發(fā),進(jìn)行編程和設(shè)計,實現(xiàn)水電收費人員日常工作的抄表、水電費結(jié)算、查詢、報表生成、報表輸出的計算機(jī)信息化管理。同時也可以清楚地了解學(xué)生整體或個體的水電費使用情況,當(dāng)學(xué)生水電費欠繳的時候能夠及時地提醒。為提高高校后勤水電收費的工作效率和管理質(zhì)量、提供優(yōu)質(zhì)服務(wù)奠定基礎(chǔ)。
.NET框架4.0包括ADO.NET實體框架,該框架允許開發(fā)人員對他們的關(guān)系數(shù)據(jù)定義較高層次的視圖數(shù)據(jù)對象,然后通過這個模型進(jìn)行編程。對繼承,復(fù)雜類型和關(guān)系(包括多對多支持)等均可以用該框架來建模。
學(xué)生公寓的水電收費系統(tǒng)的數(shù)據(jù)庫設(shè)計需求分析要從學(xué)生公寓表、房間表、學(xué)生表、自來水使用數(shù)據(jù)表、地?zé)崴褂脭?shù)據(jù)表和電使用數(shù)據(jù)表等數(shù)據(jù)源入手,分析相關(guān)報表、各種業(yè)務(wù)查詢之間的數(shù)據(jù)處理關(guān)系。根據(jù)數(shù)據(jù)庫的需求分析,得出高校學(xué)生公寓水電收費管理系統(tǒng)的系統(tǒng)數(shù)據(jù)流圖,如圖1所示。
學(xué)生公寓的水電收費系統(tǒng)的數(shù)據(jù)流圖采用數(shù)據(jù)庫模型設(shè)計工具Sybase PowerDesigner來進(jìn)行設(shè)計。系統(tǒng)的物理數(shù)據(jù)模型如圖2所示。
用戶在注冊或登錄時,為了防止非法用戶通過機(jī)器人軟件進(jìn)行惡意登錄,網(wǎng)站采用動態(tài)生成的圖形碼或附加碼進(jìn)行驗證。驗證碼技術(shù)是在服務(wù)器端生成一個隨機(jī)數(shù),并將其保存在內(nèi)存中,然后將隨機(jī)數(shù)寫入設(shè)計好的圖片中,發(fā)送給瀏覽器,并以圖片形式顯示給最終用戶。扭曲驗證碼如圖3所示。
圖1 系統(tǒng)數(shù)據(jù)流圖
圖2 系統(tǒng)的物理數(shù)據(jù)模型
圖3 扭曲驗證碼
采用母板頁可以將每個網(wǎng)頁都一致的部件提取出來。母板頁可以被多個內(nèi)容頁所共享,母板頁中的ContentPlaceHolder控件是特意留給內(nèi)容頁的。把本系統(tǒng)的不同用戶類型登錄的用戶制作成母板頁,這樣就將同一用戶類型的每個網(wǎng)頁中共有的頂部系統(tǒng)LOGO、導(dǎo)航信息的菜單欄、網(wǎng)頁底部版權(quán)信息欄分別做成系統(tǒng)管理員登錄的母板頁、工作用戶登錄的母板頁和查詢用戶登錄的母板頁。依據(jù)系統(tǒng)的需求分析分別確定不同用戶類型的母板頁中的菜單與子菜單。系統(tǒng)管理員登錄功能結(jié)構(gòu)圖如圖4所示。工作用戶登錄功能結(jié)構(gòu)圖如圖5所示。查詢用戶登錄功能結(jié)構(gòu)圖如圖6所示。
圖4 系統(tǒng)管理員登錄功能結(jié)構(gòu)圖
圖5 工作用戶登錄功能結(jié)構(gòu)圖
圖6 查詢用戶登錄功能結(jié)構(gòu)圖
本系統(tǒng)將母板頁上常用的導(dǎo)航信息菜單與子菜單、以及母板頁底部的版權(quán),設(shè)計為Web用戶控件,然后重復(fù)使用。如果母板頁上的菜單與子菜單需要改變,只需要修改用戶控件中的內(nèi)容即可。此外,使用用戶控件的高速緩存功能,可以提高頁面的性能,因此母板頁其實也是一種用戶控件。
加載母板頁的菜單及子菜單的Web用戶控件又分為三種,分別是系統(tǒng)管理員登錄的母板頁加載的菜單及子菜單的用戶控件、工作用戶登錄的母板頁加載的菜單及子菜單的用戶控件、查詢用戶登錄的母板頁加載的菜單及子菜單的用戶控件。
系統(tǒng)登錄功能結(jié)構(gòu)圖如圖7所示。
圖7 系統(tǒng)登錄功能結(jié)構(gòu)圖
2.1 公共類的設(shè)計 在系統(tǒng)開發(fā)中,把系統(tǒng)常用的數(shù)據(jù)庫操作類以及數(shù)據(jù)庫的查詢、添加、刪除和修改操作,編寫到一個公共類里,可以減少重復(fù)代碼的編寫,有利于代碼的維護(hù)。因此,在開發(fā)系統(tǒng)前,首先需要設(shè)計這些公共類。
2.2 扭曲驗證碼的設(shè)計 在頁面的事件中,調(diào)用公用類PublicCode中的CreateImage()方法生成校驗碼圖片,在該方法中又調(diào)用了繪制扭曲驗證碼的核心方法TwistImaga(),接著遍歷驗證碼圖像的所有區(qū)域,獲取每個像素的顏色,最后通過SetPixel()方法重新設(shè)置像素點顏色的位置,從而實現(xiàn)扭曲的效果。
2.3 水晶報表的設(shè)計 利用Visual Studio 2010中的標(biāo)準(zhǔn)報表創(chuàng)建工具,它可以從任何數(shù)據(jù)源生成所需要的報表。水晶報表也可以用Word、Excel、電子郵件和Web幾種形式發(fā)布。
2.4 各功能模塊的設(shè)計 利用Visual Studio 2010開發(fā)平臺、C#語言和系統(tǒng)分析的結(jié)果,分別設(shè)計系統(tǒng)管理員登錄母版頁、工作用戶登錄母版頁和查詢用戶登錄母版頁。系統(tǒng)管理模塊、學(xué)生管理模塊、公寓房間管理模塊、水電表資費標(biāo)準(zhǔn)模塊和水電費管理模塊。
2.5 系統(tǒng)測試 編寫本系統(tǒng)各頁面的功能測試用例表。使用功能測試用例,利用Visual Studio 2010自帶的測試工具M(jìn)TM對本系統(tǒng)進(jìn)行編碼的UI測試和Web測試。添加公寓樓信息的編碼的UI測試的文件代碼如圖8所示。
圖8 添加公寓樓信息的編碼的UI測試的文件代碼
LoadRunner是一種業(yè)界標(biāo)準(zhǔn)的預(yù)測系統(tǒng)行為和性能的負(fù)載測試工具。RoadRunner由三部分組成:VuGen用來錄制腳本和編輯腳本;Controller用來測試場景和執(zhí)行測試場景;Analysis用來對測試結(jié)果進(jìn)行分析。用LoadRunner進(jìn)行性能測試的六個步驟包括:測試設(shè)計→創(chuàng)建腳本→定義場景→運行場景→監(jiān)視場景→分析結(jié)果。使用添加公寓樓信息功能測試用例,利用LoadRunner的性能測試工具進(jìn)行添加公寓樓信息的負(fù)載測試,其腳本視圖如圖9所示。
圖9 添加公寓樓信息的負(fù)載測試的腳本視圖
將系統(tǒng)數(shù)據(jù)庫常用的一些數(shù)據(jù)操作編寫到一個公共類里,可以減少重復(fù)代碼的編寫,有利于代碼的維護(hù)。采用扭曲驗證碼技術(shù),可防止非法用戶通過機(jī)器人軟件進(jìn)行惡意登錄系統(tǒng)。本系統(tǒng)設(shè)計了不同用戶類型登錄的母板頁,提高系統(tǒng)的開發(fā)效率。本系統(tǒng)將母板頁上常用的導(dǎo)航菜單與子菜單、以及母板頁底部的版權(quán)欄設(shè)計為不同用戶類型登錄的Web用戶控件,提高了代碼的重用率。
通過大量數(shù)據(jù)實際測試,驗證了所有功能,說明了本系統(tǒng)的設(shè)計方案是可行的。
[1]詹金珍.高校學(xué)生水電收費管理系統(tǒng)的設(shè)計與開發(fā)[D].西安:西北工業(yè)大學(xué)軟件與微電子學(xué)院,2012.
[2]Kun Xu,Jingfeng Shao.Analysis and Modeling of Production Information Management System Based on Multi-Agent for Textile Enterprise,FSKD,2012:2586-2589.
[3]Liang Zhihong,Lu Jun.Design on Information management System of Gas Station,ICICTA,2012:139-142.