版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、<p> 螆膃薅蚆肅膂芅葿羈節(jié)莇蚅袇芁蒀蕆螃芀腿蚃蠆艿莂蒆肈羋蒄螁羃芇薆薄衿芆芆蝿螅芆莈薂肄蒞蒀螈羀莄薃薁袆莃節(jié)螆螂羀蒅蕿螈罿薇襖肇羈芇蚇羃羇荿袃衿羆蒁蚅螅肅薄蒈肅肄芃蚄罿肄莆蕆裊肅薈螞袁肂羋薅螇肁莀螀肆肀蒂薃羂聿薅蝿袈膈芄薁螄膈莆螇蝕膇葿薀肈膆羋螅羄膅莁蚈袀膄蒃袃螆膃薅蚆肅膂芅葿羈節(jié)莇蚅袇芁蒀蕆螃芀腿蚃蠆艿莂蒆肈羋蒄螁羃芇薆薄衿芆芆蝿螅芆莈薂肄蒞蒀螈羀莄薃薁袆莃節(jié)螆螂羀蒅蕿螈罿薇襖肇羈芇蚇羃羇荿袃衿羆蒁蚅螅肅薄蒈肅肄芃蚄罿
2、肄莆蕆裊肅薈螞袁肂羋薅螇肁莀螀肆肀蒂薃羂聿薅蝿袈膈芄薁螄膈莆螇蝕膇葿薀肈膆羋螅羄膅莁蚈袀膄蒃袃螆膃薅蚆肅膂芅葿羈節(jié)莇蚅袇芁蒀蕆螃芀腿蚃蠆艿莂蒆肈羋蒄螁羃芇薆薄衿芆芆蝿螅芆莈薂肄蒞蒀螈羀莄薃薁袆莃節(jié)螆螂羀蒅蕿螈罿薇襖肇羈芇蚇羃羇荿袃衿羆蒁蚅螅肅薄蒈肅肄芃蚄罿肄莆蕆裊肅薈螞袁肂羋薅螇肁莀螀肆肀蒂薃羂聿薅蝿袈膈芄薁螄膈莆螇蝕膇葿薀肈膆羋螅羄膅莁蚈袀膄蒃袃螆膃薅蚆肅膂芅葿羈節(jié)莇蚅袇芁蒀蕆螃芀腿蚃蠆艿莂蒆肈羋蒄螁羃芇薆薄衿芆芆蝿螅芆莈薂肄蒞蒀螈羀
3、莄薃薁袆莃節(jié)螆螂羀蒅蕿螈罿薇襖肇羈芇蚇羃羇荿袃衿羆蒁蚅螅肅薄蒈肅肄芃蚄罿肄莆蕆裊肅薈螞袁肂羋薅螇肁莀螀肆肀蒂薃羂聿薅蝿袈膈芄薁螄膈莆螇蝕膇葿薀</p><p><b> 課程設計說明書</b></p><p> 2011年6月30日</p><p> 課程設計任務書及成績評定</p><p> 1、設計的目的與要
4、求 </p><p> 1)加強學生的實踐能力;</p><p> 2)理解小型系統(tǒng)開發(fā)的基本步驟;</p><p> 3)本系統(tǒng)的功能包括:學生信息管理模塊、刷卡消費、查詢、存款模塊(包括基本的添加、修改、刪除功能)。</p><p> 2、設計進度及完成情況</p><p><b> 3、成績評
5、定</b></p><p> 設計成績: (教師填寫)</p><p> 指導老師: (簽 字)</p><p> 2011 年 月 日</p><p><b> 目錄</b></p><p> 第
6、一章 項目開發(fā)計劃書5</p><p><b> 1.1引言5</b></p><p> 1.1.1編寫目的5</p><p><b> 1.1.2背景5</b></p><p><b> 1.2項目概述5</b></p><p>
7、1.2.1工作內(nèi)容5</p><p> 1.2.2主要參加人員5</p><p><b> 1.2.3產(chǎn)品6</b></p><p><b> 1.2.4服務6</b></p><p> 1.2.5驗收標準6</p><p> 1.2.6本計劃的批準者和批
8、準日期6</p><p><b> 1.3實施計劃6</b></p><p> 1.3.1工作任務的分配與人員分工6</p><p><b> 1.3.2進度7</b></p><p><b> 1.4支持條件7</b></p><p>
9、; 第二章 可行性分析8</p><p> 2.1可行性研究的前提8</p><p> 2.2 對現(xiàn)有系統(tǒng)的分析8</p><p> 2.3 所建議的系統(tǒng)8</p><p> 2.3.1對所建議系統(tǒng)的說明8</p><p> 2.3.2處理流程和數(shù)據(jù)流程8</p><p>
10、; 2.4經(jīng)濟上可行性9</p><p> 2.5技術(shù)可行性9</p><p> 2.6開發(fā)工具的選擇9</p><p> 2.7 新系統(tǒng)的影響10</p><p> 2.8投資及效益分析10</p><p><b> 2.9 結(jié)論10</b></p><
11、;p> 第三章 需求分析11</p><p> 3.1市場需求分析11</p><p> 3.2系統(tǒng)功能性需求分析11</p><p> 3.2.1對功能的規(guī)定11</p><p> 3.2.2對性能的規(guī)定13</p><p> 3.3系統(tǒng)非功能性需求14</p><p
12、> 3.3.1故障處理要求14</p><p> 3.3.2其他專門要求14</p><p> 3.3 數(shù)據(jù)字典14</p><p> 3.4運行環(huán)境規(guī)定15</p><p> 3.5實體-聯(lián)系圖16</p><p> 第四章 系統(tǒng)設計17</p><p> 4.
13、1 總體設計17</p><p> 4.1.1需求概述17</p><p> 4.1.2校園卡管理信息系統(tǒng)概要設計17</p><p> 4.2詳細設計19</p><p> 4.2.1編寫定義19</p><p> 4.2.2功能模塊的設計與實現(xiàn)19</p><p>
14、4.2.3運行設計20</p><p> 4.2.4系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設計20</p><p> 4.2.5系統(tǒng)出錯處理設計21</p><p> 4.2.6數(shù)據(jù)流劃分21</p><p> 4.3 功能模塊設計22</p><p> 4.3.1 入口程序entry() 設計說明22</p>
15、<p> 4.3.2 查詢模塊search() 設計說明25</p><p> 4.3.3 存儲、消費模塊pay() 設計說明26</p><p> 4.3.4 掛失模塊deposit() 設計說明31</p><p> 第五章 系統(tǒng)測試33</p><p> 5.1 測試的作用和意義33</p>
16、<p> 5.2 測試方法33</p><p> 5.3 測試內(nèi)容33</p><p> 5.4 測試結(jié)果34</p><p> 5.4.1 注冊和登錄模塊測試34</p><p> 5.4.3 卡密碼修改模塊測試36</p><p> 5.4.4 賬戶充值、消費模塊測試36<
17、;/p><p><b> 5.5 結(jié)論37</b></p><p><b> 第六章 總結(jié)38</b></p><p> 參考文獻和資料39</p><p> 第一章 項目開發(fā)計劃書</p><p><b> 1.1引言 </b></p
18、><p><b> 1.1.1編寫目的</b></p><p> 此項目開發(fā)計劃書的編寫主要是為了給開發(fā)《校園卡管理系統(tǒng)》做主要的規(guī)劃和整合,在開發(fā)過程中起到引導作用,以及給使用者提供簡要的說明。</p><p><b> 1.1.2背景</b></p><p> 校園卡管理系統(tǒng)是一套針對大學校
19、園食堂飲食交費,一般消費等方面的信息管理系統(tǒng),它包括了同學在校內(nèi)消費各方面內(nèi)容:刷卡消費、查詢、存款,學生信息管理等。方便的對同學飯卡信息進行各項操作,定時進行數(shù)據(jù)的備份更新,保持數(shù)據(jù)的一致性和準確性,各方面的內(nèi)容應該相互聯(lián)系,最終產(chǎn)生各種查詢統(tǒng)計報表,以供同學進行檢查。</p><p> 用戶通過系統(tǒng)首頁面,創(chuàng)建飯卡,存入錢。消費時根據(jù)飯卡ID判斷該用戶是否是合法用戶,同時進行消費操作。管理員可以對系統(tǒng)進行新
20、建飯卡、注銷飯卡、修改飯卡信息等操作,而學生進行消費的操作。</p><p><b> 1.2項目概述</b></p><p><b> 1.2.1工作內(nèi)容</b></p><p> 校園卡卡管理系統(tǒng)的主要任務就是把人們從繁瑣的交費,找零工作中解放出來,用計算機實現(xiàn)對銷售合同資料進行存款,消費,查詢、修改、刪除以及存
21、儲等功能。同時,用計算機能夠快速準確地完成共檔案資料的統(tǒng)計和匯總工作,迅速地打印出各種報表資料以供使用。</p><p> 1.2.2主要參加人員 </p><p><b> 組長:蔣瑞</b></p><p><b> 設計:劉嘉柏、蔣瑞</b></p><p><b> 開發(fā):
22、楊金、鄒振兵</b></p><p><b> 1.2.3產(chǎn)品</b></p><p><b> 系統(tǒng)開發(fā)計劃書</b></p><p><b> 系統(tǒng)需求說明書</b></p><p><b> 系統(tǒng)設計說明書</b></p&g
23、t;<p><b> 測試計劃</b></p><p> 一個能正確運行的可執(zhí)行程序,源程序清單(有注釋)</p><p><b> 1.2.4服務</b></p><p> 安裝、維護和運行支持從使用該系統(tǒng)開始,維護期限為一年。 </p><p> 1.2.5驗收標準 &l
24、t;/p><p> 各個功能均能正常使用,滿足用戶的需求。</p><p> 1.2.6本計劃的批準者和批準日期 </p><p><b> 批準者:顏富強</b></p><p> 批準日期:2011年6月6日</p><p><b> 1.3實施計劃 </b><
25、;/p><p> 1.3.1工作任務的分配與人員分工 </p><p> 組長: 蔣瑞 任務: (1)系統(tǒng)總的開發(fā)計劃書</p><p> ?。?)每周至少組織小組討論一次,列出本周開發(fā)計劃</p><p> ?。?)項目開發(fā)進度的管理</p><p>
26、?。?)團隊的組織和協(xié)調(diào)</p><p> 設計: 劉嘉柏、蔣瑞 任務: (1)參與小組討論</p><p> ?。?)進行系統(tǒng)的需求分析和系統(tǒng)設計</p><p> ?。?)完成系統(tǒng)需求說明書和系統(tǒng)設計說明書</p><p> ?。?)編寫測試計劃,參與系統(tǒng)測試</p><p> ?。?)協(xié)助
27、文檔人員完成用戶相關文檔</p><p> 開發(fā):鄒振兵、楊金 任務: (1)參與小組討論</p><p> ?。?)根據(jù)設計完成編碼,并注釋</p><p><b> (3)進行單元測試</b></p><p><b> 1.3.2進度 </b></p>
28、<p> 系統(tǒng)規(guī)劃階段: 項目標志性事件 開始到完成</p><p> 開發(fā)階段: 項目開發(fā)計劃書的完成 6.6-6.7</p><p> 需求分析階段: 系統(tǒng)需求說明書完成 6.8-6.10</p><p> 設計階段: 系統(tǒng)設計說明書
29、 6.11-6.15</p><p> 編碼實現(xiàn): 項目的形成 6.16-6.23</p><p> 測試階段: 測試計劃 6.24-6.27</p><p> 移交階段: 項目的遞交 6.28-6.30
30、</p><p><b> 1.4支持條件</b></p><p> 操作系統(tǒng)需要 windows 2000以上;</p><p> 操作系統(tǒng)環(huán)境:java虛擬機,.netFrameWork3.0;</p><p> 數(shù)據(jù)庫需要SQL Server 2000;</p><p><b&
31、gt; 第二章 可行性分析</b></p><p> 2.1可行性研究的前提</p><p> 要求:滿足客戶使用校園卡的各項功能及要求,并對客戶資料具有保密性</p><p> 目標:提高處理速度,改進安全系統(tǒng),方便用戶使用。</p><p> 條件、假定和限制:所建議系統(tǒng)的運行壽命最少1年;進行系統(tǒng)方案選擇比較的時間
32、為1天。 </p><p> 2.2 對現(xiàn)有系統(tǒng)的分析</p><p> 人工操作頻繁加減存款。工作繁瑣,枯燥,容易出錯,完成工作所需要的時間較長,工作效率比較低?,F(xiàn)有系統(tǒng)技術(shù)性含量比較低,操作不便,工作量大,需要較多的人才能完成工作。系統(tǒng)依賴于大量的人力和物質(zhì)投入,工作效率較低和成本較高。</p><p> 2.3 所建議的系統(tǒng)</p><
33、;p> 2.3.1對所建議系統(tǒng)的說明</p><p> 使用飯卡可以快速便捷的進行消費。中央電腦--數(shù)據(jù)庫對飯卡的操作相應至關重要。在高峰時刻,也能保證,存款,消費無錯誤,并且可記錄,撤銷操作。</p><p> 2.3.2處理流程和數(shù)據(jù)流程</p><p><b> 系統(tǒng)的處理流程</b></p><p>
34、; 圖1 系統(tǒng)的處理流程圖</p><p><b> 2.4經(jīng)濟上可行性</b></p><p> 開發(fā)成本:200元人民幣。</p><p> 效益:暫時無法具體衡量。</p><p> 效益/投資比:暫時無法估算。</p><p> 投資回收期:大約2個月。</p>
35、<p><b> 2.5技術(shù)可行性</b></p><p> a.在當前的限制條件下,該系統(tǒng)的功能目標能夠達到;</p><p> b.利用現(xiàn)有的技術(shù),該系統(tǒng)的功能能實現(xiàn);</p><p> c.對開發(fā)人員的數(shù)量和質(zhì)量的要求能滿足;</p><p> d.在規(guī)定的期限內(nèi),本系統(tǒng)的開發(fā)能夠完成。<
36、/p><p> 2.6開發(fā)工具的選擇</p><p><b> Java概述</b></p><p> Java語言的優(yōu)良特性使得Java應用具有無比的健壯性和可靠性,這也減少了應用系統(tǒng)的維護費用。Java對對象技術(shù)的全面支持和Java平臺內(nèi)嵌的API能縮短應用系統(tǒng)的開發(fā)時間并降低成本。Java的編譯一次,到處可運行的特性使得它能夠提供一個隨
37、處可用的開放結(jié)構(gòu)和在多平臺之間傳遞信息的低成本方式。特別是Java企業(yè)應用編程接口(Java Enterprise APIs)為企業(yè)計算及電子商務應用系統(tǒng)提供了有關技術(shù)和豐富的類庫。</p><p> 2.7 新系統(tǒng)的影響</p><p><b> 1對設備的影響 </b></p><p><b> 設備不變</b>
38、</p><p><b> 2對軟件的影響 </b></p><p> 新系統(tǒng)使用具有較高技術(shù)的軟件</p><p><b> 3對對象的影響:</b></p><p> 新系統(tǒng)要求對客戶、合同、操作人員有較為詳細地記錄。</p><p> 4對系統(tǒng)運行過程的影響:
39、</p><p> 系統(tǒng)的運行更加高速、有效。</p><p><b> 5對開發(fā)的影響:</b></p><p> 新系統(tǒng)的開發(fā)環(huán)境要求不高,只需要現(xiàn)有設備就可以完成,且不會在開發(fā)過程中影響到現(xiàn)有系統(tǒng)的使用。</p><p> 6對地點和設施的影響:</p><p> 開發(fā)新系統(tǒng)不用考
40、慮地點等方面的問題。</p><p> 7技術(shù)條件方面的可能性</p><p> 開發(fā)新系統(tǒng)的技術(shù)雖較現(xiàn)有系統(tǒng)比較先進,但總的來看,這些技術(shù)均已比較成熟,因此新系統(tǒng)的開發(fā)在技術(shù)方面應該不會有帶大的困難。</p><p> 2.8投資及效益分析 </p><p> 新系統(tǒng)開發(fā)完成后,只需要2~3面管理員,大大減少的人員方面的開支,同時由
41、于數(shù)據(jù)冗余度也大大降低,在物質(zhì)方面也降低了開銷,因此會有較好的市場效益。</p><p><b> 2.9 結(jié)論</b></p><p> 通過技術(shù)、經(jīng)濟、具體操作等方面的研究可知,新系統(tǒng)可開發(fā)風險較低,可以開始進行具體的開發(fā)工作。</p><p><b> 第三章 需求分析</b></p><p
42、><b> 3.1市場需求分析</b></p><p> 過去的系統(tǒng)技術(shù)性含量比較低,操作不便,工作量大,需要較多的人才能完成工作,而且還依賴大量人力物力的投入,工作效率低,成本高。相比于過去低級的系統(tǒng),現(xiàn)在經(jīng)過改良之后的系統(tǒng)不但操作簡便,而且只需要極少數(shù)的管理人員,大大的提高的工作效率。</p><p> 3.2系統(tǒng)功能性需求分析</p>
43、<p> 3.2.1對功能的規(guī)定</p><p> 本系統(tǒng)面向全體學生,所以需要錄入學生的一些信息,然后再創(chuàng)建飯卡。最后才是學生向飯卡中存款,進行刷卡消費。由于存儲了學生的信息,所以掛失起來也更為的方便。</p><p> 以下給予數(shù)據(jù)流圖來更為直觀的描述出此系統(tǒng)的功能:</p><p><b> 圖2 頂層數(shù)據(jù)流圖</b>&
44、lt;/p><p> 圖3 創(chuàng)建校園卡ID數(shù)據(jù)流圖</p><p> 圖4 校園卡消費數(shù)據(jù)流圖</p><p> 圖5 校園卡信息查詢數(shù)據(jù)流圖</p><p> 圖6 校園卡存款流圖</p><p> 3.2.2對性能的規(guī)定</p><p><b> ?。?)精度</b&g
45、t;</p><p> 輸入數(shù)據(jù):查詢最大查詢范圍1年內(nèi);卡ID合法性;客戶信息合法性;</p><p> 輸出數(shù)據(jù):余額以 213.12的形式最多小數(shù)點后兩位,即到分為止顯示。(小于的部分不可能出現(xiàn))</p><p><b> (2)時間特性要求</b></p><p> 刷卡響應時間不超過1秒;</p
46、><p> 查詢響應時間不超過5秒;</p><p> 3.3系統(tǒng)非功能性需求</p><p> 3.3.1故障處理要求</p><p> 刷卡響應時間超過1秒后,自動提出警告。要求重新刷卡。</p><p> 查詢超過5秒,要顯示查詢時間長的提示信息。以免誤認為死機。</p><p>
47、 當計算機突然死機、重啟、斷電時自動存儲備份數(shù)據(jù)。即便沒有存上。也有備份數(shù)據(jù)庫,供恢復。</p><p> 3.3.2其他專門要求</p><p> 普通學生只能刷卡消費,系統(tǒng)管理員還可以進入管理員界面;刷卡服務員可以操作刷卡器。</p><p> 界面清晰、美觀,操作簡單、方便。</p><p> 所有數(shù)據(jù)存儲在學校服務器端,數(shù)據(jù)存
48、儲安全可靠。</p><p><b> 3.3 數(shù)據(jù)字典</b></p><p><b> 1學生信息:</b></p><p> 學生學號 = [數(shù)字|字母]</p><p> 身份證號 = [數(shù)字|字母]</p><p> 卡ID = [數(shù)字|字母]</
49、p><p> 學生姓名 = [漢字]</p><p> 性別 = [男|女|null]</p><p><b> 2 卡信息</b></p><p> 卡ID = [數(shù)字|字母]</p><p><b> 余額= [數(shù)字]</b></p><p&g
50、t; 鎖=[true|false]</p><p><b> 3 卡歷史</b></p><p> 卡ID = [數(shù)字|字母]</p><p><b> 時間=[時間格式]</b></p><p><b> 款額=[數(shù)字]</b></p><p&g
51、t; 操作=[存款|消費|其他]</p><p> 數(shù)據(jù)元素的數(shù)據(jù)字典卡片:</p><p><b> 學生信息</b></p><p> 名字:學生信息 別名:</p><p> 描述:記錄學生相關信息</p><p> 定義:學生信息=學生學號+身份證號+卡ID+學生姓名+性別&
52、lt;/p><p><b> 位置:數(shù)據(jù)庫</b></p><p><b> 卡信息</b></p><p> 名字:卡信息 別名:</p><p><b> 描述:記錄卡的信息</b></p><p> 定義:卡信息 =卡ID+余額+鎖<
53、/p><p><b> 位置:數(shù)據(jù)庫</b></p><p><b> 卡歷史信息</b></p><p> 名字:卡歷史信息 別名:</p><p> 描述:記錄卡歷史的信息</p><p> 定義:客戶信息=卡ID+時間+款額+操作</p><
54、p><b> 位置:數(shù)據(jù)庫</b></p><p><b> 3.4運行環(huán)境規(guī)定</b></p><p> 1中央電腦,要求容量大,CPU能夠滿足查詢的。</p><p> 2刷卡器,要求讀取ID敏捷,準確。</p><p> 3要求刷卡器與中央電腦連接。通信量要滿足查詢精度和速度。
55、</p><p> 4.刷卡器上的功能建,要求顯示明確,意思表達精確。</p><p><b> 3.5實體-聯(lián)系圖</b></p><p> 本系統(tǒng)的實體有:學生信息、卡信息它們之間的關系是一對一的??ㄐ畔⒑涂v史是一對多的。根據(jù)分析可以得出如下的E-R圖:</p><p> 圖7 系統(tǒng)E-R圖第四章 系統(tǒng)設計
56、</p><p><b> 4.1 總體設計</b></p><p><b> 4.1.1需求概述</b></p><p> 總體設計的主要任務是設計程序的體系結(jié)構(gòu),也就是確定程序有哪些模塊組成以及模塊間的關系??傮w設計過程首先尋找實現(xiàn)目標系統(tǒng)的各種不同的方案,需求分析階段得到的數(shù)據(jù)流圖是設想各種可能方案的基礎。然后
57、分析員從這些供選擇的方案中選取若干個合理的方案,為每個合理的方案都準備一份系統(tǒng)流程圖,列出組成系統(tǒng)的所有物理元素,進行成本/效益分析,并且制定實現(xiàn)這個方案的進度計劃。分析員應該綜合分析比較這些合理的方案,從中選出一個最佳方案向用戶和使用部門負責人推薦。如果用戶和使用部門的負責人接受了推薦的方案,分析員應該進一步為這個最佳方案設計軟結(jié)構(gòu),通常,進行必要的數(shù)據(jù)庫設計,確定測試要求并且是定測試計劃。</p><p>
58、 4.1.2校園卡管理信息系統(tǒng)概要設計</p><p> 根據(jù)需求分析和系統(tǒng)將要實現(xiàn)的功能來看,系統(tǒng)有如下基本功能:</p><p><b> 新建飯卡</b></p><p><b> 存款——消費</b></p><p><b> 查詢歷史</b></p>
59、;<p><b> 掛失</b></p><p><b> 注銷</b></p><p><b> 圖8 系統(tǒng)層次圖</b></p><p><b> 4.2詳細設計</b></p><p><b> 4.2.1編寫定義&
60、lt;/b></p><p><b> 1.編寫目的</b></p><p> 詳細設計階段的任務就是把解法具體化,解決具體應怎樣實現(xiàn)這個系統(tǒng)。也稱為模塊設計,詳細地設計每個模塊,確定實現(xiàn)模塊所需的功能需要的算法和數(shù)據(jù)結(jié)構(gòu)。</p><p><b> 2.定義</b></p><p>
61、 在軟件具體設計階段的專用術(shù)語有:程序流程圖、盒圖(N—S圖)、判定表、判定樹、PAD圖</p><p> 4.2.2功能模塊的設計與實現(xiàn)</p><p><b> 1新建校園飯卡模塊</b></p><p><b> ?。?)用戶類別:</b></p><p> 1有提供學生查閱的學生界面。
62、</p><p> 2 提供管理員操作的管理員界面。</p><p> 3 提供刷卡的刷卡服務員界面。</p><p> ?。?)管理員界面菜單</p><p><b> 1 狀態(tài)</b></p><p><b> 1.1登陸;</b></p><
63、p><b> 1.2注銷;</b></p><p> 2 新建--新建學生信息界面;</p><p><b> 3 查詢更新</b></p><p> 3.1 學生消費歷史</p><p><b> 3.2 學生信息</b></p><p&g
64、t;<b> 4 掛失</b></p><p><b> 4.1 加鎖</b></p><p><b> 4.2 解鎖</b></p><p><b> 5 注銷卡</b></p><p><b> (3)學生查詢菜單</b>
65、;</p><p><b> 1 狀態(tài)</b></p><p><b> 1.1登陸;</b></p><p><b> 1.2注銷;</b></p><p><b> 2 查詢歷史</b></p><p><b>
66、; 3 查詢學生信息</b></p><p><b> (4)刷卡界面</b></p><p><b> 1 狀態(tài)</b></p><p><b> 1.1登陸;</b></p><p><b> 1.2注銷;</b></p&g
67、t;<p><b> 2 消費方式</b></p><p><b> 2.1 正常</b></p><p><b> 2.2 定價</b></p><p><b> 3 顯示上次輸出</b></p><p><b> 2外
68、部接口</b></p><p> 說明本系統(tǒng)同外界的所有接口的安排包括軟件與硬件之間的接口、本系統(tǒng)與各支持軟件之間的接口關系。</p><p><b> 3內(nèi)部接口</b></p><p> 查詢和更新都要調(diào)用數(shù)據(jù)庫的操作。</p><p><b> 4.2.3運行設計</b>&
69、lt;/p><p><b> 1.運行模塊組合</b></p><p> 具體軟件的運行模塊組合為程序多窗口的運行環(huán)境,各個模塊在軟件運行過程中能較好的交換信息,處理數(shù)據(jù)。</p><p><b> 2.運行控制</b></p><p> 軟件運行時有比較友好的用戶界面,基本能夠?qū)崿F(xiàn)用戶的數(shù)據(jù)處
70、理要求。</p><p><b> 3.運行時間</b></p><p> 系統(tǒng)的運行時間基本可以達到用戶所提出的要求。</p><p> 4.2.4系統(tǒng)數(shù)據(jù)結(jié)構(gòu)設計</p><p><b> 1.物理結(jié)構(gòu)設計</b></p><p> 系統(tǒng)的物理結(jié)構(gòu)具體由數(shù)據(jù)庫來
71、設計與生成,此處略。</p><p> 2.數(shù)據(jù)結(jié)構(gòu)與程序的關系</p><p> 系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)由標準數(shù)據(jù)庫語言SQL生成。</p><p> 4.2.5系統(tǒng)出錯處理設計</p><p><b> 1.出錯信息</b></p><p> 1 在學生刷卡后,卡ID被鎖,將會出現(xiàn)錯誤信息:
72、“Kard Locked”</p><p> 2 學生卡信息丟失,查詢時或者消費-存款時,不認卡情況</p><p> 3 存款額大于999.99元,刷卡器只顯示小于等于999,99元部分</p><p> 4 消費時消費額大于存款額。系統(tǒng)將會提示錯誤,不作其他任何操作。</p><p> 2.措施(號碼對應)</p>
73、<p><b> 1 只能解卡鎖</b></p><p> 2 有備份數(shù)據(jù)庫,隨時可以恢復</p><p><b> 3 只能更換刷卡器</b></p><p><b> 4 計時充錢</b></p><p> 4.3 功能模塊設計
74、 </p><p> 4.3.1
75、 入口程序entry() 設計說明</p><p><b> 1.程序描述</b></p><p> 提供管理員和學生用戶,刷卡服務三種環(huán)境,限制用戶對系統(tǒng)的使用權(quán)限。</p><p> 特點:非常駐內(nèi)存;單獨的一個程序;順序處理。</p><p><b> 2.輸入項</b></p&
76、gt;<p> 權(quán)限:三個單選項。Level。</p><p> 管理員用戶名:字符串類型,user,長度不超過20,可以是數(shù)字(不能開頭)和字母、漢字;</p><p> 管理員密碼 :字符串類型,pass, 長度不超過20, 可以是數(shù)字和字母,區(qū)分大小寫</p><p><b> 3.輸出項</b></p>
77、<p> 歡迎或者提示錯誤信息。</p><p><b> 4.流程邏輯 </b></p><p><b> 1)程序流程圖</b></p><p><b> 圖9 程序流程圖</b></p><p> 具體方法代碼實現(xiàn)如下:</p>&l
78、t;p> 1數(shù)據(jù)庫聯(lián)接公共部分</p><p> public static Connection conn = null;</p><p> public static Statement state = null;</p><p> public static void odbc(){</p><p> String DB
79、Driver = "sun.jdbc.odbc.JdbcOdbcDriver";</p><p> String connectionStr = "jdbc:odbc:myodbc"; </p><p><b> try{</b></p><p> Class.forName(DBDriver)
80、;</p><p><b> }</b></p><p> catch(java.lang.ClassNotFoundExceptione)</p><p> {System.err.println("DBconnecton:"+e.getMessage());}</p><p><b&g
81、t; try{</b></p><p> conn = DriverManager.getConnection(connectionStr,"","");</p><p> state = conn.createStatement();</p><p> }catch(SQLExceptionex)<
82、/p><p> { System.err.println("aq.executeQuery:"+ex.getMessage());}</p><p><b> }</b></p><p><b> 2 刷卡選擇部分</b></p><p> //===============
83、==== 刷卡界面===================</p><p> if(this.jRadioButton2.isSelected()){</p><p> this.setVisible(false);</p><p> JOptionPane.showMessageDialog(null,"歡迎進入刷卡界面!");</p
84、><p> Spend.main(null);</p><p><b> }</b></p><p> //=================== 學生查詢界面===================</p><p> if(this.jRadioButton3.isSelected()){</p>&l
85、t;p> this.setVisible(false);</p><p> JOptionPane.showMessageDialog(null,"歡迎進入學生查詢界面!");</p><p> StuInfo.main(null);</p><p> 4.3.2 查詢模塊search() 設計說明</p><p
86、><b> 1.程序描述</b></p><p> 完成對系統(tǒng)(數(shù)據(jù)庫)的查找。</p><p><b> 2.輸入項</b></p><p> 學生卡信息,時間信息,消費信息等。</p><p><b> 3.輸出項</b></p><p&
87、gt;<b> 查找結(jié)果。</b></p><p> 4.流程邏輯PAD圖</p><p> 圖10 流程邏輯PAD圖</p><p> 具體方法代碼實現(xiàn)如下:</p><p> if(num.getText().equals("") )</p><p><b&
88、gt; {</b></p><p> JOptionPane.showMessageDialog(null,"卡號不能為空!");</p><p> num.setFocusable(true); </p><p><b> }</b></p><p> e
89、lse{ </p><p> try{ </p><p> Stringsql = "select * from student_info where stu_num = "+num.getText(); </p><p> ResultSetrs= Main.state.executeQuery(s
90、ql);</p><p> if(rs.next())</p><p><b> {</b></p><p> id.setText(rs.getString(2));</p><p> name.setText(rs.getString(3));</p><p> if(rs.getB
91、oolean(4))</p><p> sex.setText("男");</p><p> else sex.setText("女");</p><p> tel.setText(rs.getString(5));</p><p> address.setText(rs.getString(6
92、));</p><p><b> }</b></p><p> else{ </p><p> JOptionPane.showMessageDialog(null,"卡號錯誤!");</p><p> } </p><p
93、><b> }</b></p><p> catch(SQLExceptionex)</p><p> { System.err.println("aq.executeQuery:"+ex.getMessage());}</p><p><b> }</b></p><
94、p> 4.3.3 存儲、消費模塊pay() 設計說明</p><p><b> 1.程序描述</b></p><p> 完成消費部分。對輸入和消費額,進行合法性驗證。</p><p><b> 2.輸入項</b></p><p> 卡ID,定價與否,消費額。</p>&
95、lt;p><b> 3.輸出項</b></p><p><b> 卡余額,錯誤提示。</b></p><p> 具體方法代碼實現(xiàn)如下:</p><p><b> 1 搜索部分</b></p><p> if(Ids.getText().equals("
96、") )</p><p> {JOptionPane.showMessageDialog(null,"卡號不能為空!");</p><p> Ids.setFocusable(true);</p><p><b> }else{</b></p><p> try{ <
97、;/p><p> Stringsql= "select * from card_info where id = "+Ids.getText(); </p><p> ResultSetrs= Main.state.executeQuery(sql);</p><p> if(rs.next()){</p><p&
98、gt; if(rs.getBoolean(3))</p><p> {JOptionPane.showMessageDialog(null,"卡已</p><p> 經(jīng)被鎖,如要解鎖,請與管理員聯(lián)系否則10日后 自動注銷!");}</p><p><b> else{</b></p><p>
99、 if(DjCheck.isSelected())</p><p> {Sum.setText(rs.getString(2));</p><p> this.result=String.valueOf(Integer.parseInt(Sum.getText())-Integer.parseInt(Dingjia.getText()));</p><p>
100、 JOptionPane.showMessageDialog(null,"消費完畢,卡剩余"+ result +"。如果要繼續(xù)消費請在10秒內(nèi)操作,只后自動關閉帳戶");</p><p> Sum.setText(result); }</p><p> else{ </p><p> Ids.setE
101、ditable(false); </p><p> this.jButton26.setEnabled(false); </p><p> this.jPanel1.setVisible(true);</p><p> Sum.setText(rs.getString(2));</p>
102、<p> jButton12.setEnabled(true);</p><p> jButton14.setEnabled(true);</p><p> jButton15.setEnabled(true);</p><p><b> }</b></p><p><b> }</b
103、></p><p><b> }</b></p><p><b> else{</b></p><p> JOptionPane.showMessageDialog(null,"卡號錯誤!");</p><p><b> }</b></p
104、><p><b> } </b></p><p> catch(SQLExceptionex)</p><p> { System.err.println("aq.executeQuery:"+ex.getMessage());}</p><p><b> }</b>&l
105、t;/p><p><b> 2 消費部分</b></p><p> try{ </p><p> this.result=String.valueOf((Integer.parseInt(Sum.getText()) - Integer.parseInt(Now.getText())));</p><p>
106、 Stringsql="updatecard_infoset sum="+result+"whereid="+Ids.getText(); </p><p> if(Main.state.executeUpdate(sql)==0)</p><p> { </p><p> JOptionPa
107、ne.showMessageDialog(null,"消費失敗");</p><p><b> }</b></p><p><b> else{</b></p><p> this.nows =Now.getText();</p><p> this.sums =Sum.
108、getText();</p><p> JOptionPane.showMessageDialog(null,"消費完畢,卡剩余"+ result +"。如果要繼續(xù)消費請在10秒內(nèi)操作,只后自動關閉帳戶");</p><p> Sum.setText(result);</p><p><b> }</b&
109、gt;</p><p> }catch(SQLExceptionex)</p><p> { System.err.println("aq.executeQuery:"+ex.getMessage());}</p><p><b> 3 加減乘部分</b></p><p> if(Jisuan
110、.getText().compareTo("") == 0)</p><p><b> {</b></p><p> Jisuan.setText(Now.getText());</p><p> Now.setText("0");</p><p><b> }&
111、lt;/b></p><p><b> else {</b></p><p> switch(ops){</p><p><b> case 3:</b></p><p><b> int a= 0;</b></p><p> a=Int
112、eger.parseInt(Jisuan.getText()) * Integer.parseInt(Now.getText());</p><p><b> if(a>999)</b></p><p><b> {</b></p><p> JOptionPane.showMessageDialog(nul
113、l,"計算量超過消費最大值!");</p><p><b> }</b></p><p><b> else{</b></p><p> Jisuan.setText(String.valueOf(Integer.parseInt(Jisuan.getText()) * Integer.pars
114、eInt(Now.getText()))); </p><p> Now.setText(Jisuan.getText());</p><p><b> } </b></p><p><b> break;</b></p><p><b>
115、; case 2:</b></p><p><b> int b=0;</b></p><p> b=Integer.parseInt(Jisuan.getText())+ Integer.parseInt(Now.getText());</p><p><b> if(b>999)</b>&l
116、t;/p><p><b> {</b></p><p> JOptionPane.showMessageDialog(null,"計算量超過消費最大值!");</p><p><b> }</b></p><p> else{ Jisuan.setText(String.va
117、lueOf(Integer.parseInt(Jisuan.getText())+Integer.parseInt(Now.getText())));</p><p> Now.setText(Jisuan.getText());</p><p><b> } </b></p><p><b> break;</b>
118、</p><p><b> case 1: </b></p><p> int c=1; </p><p> c=Integer.parseInt(Jisuan.getText())-Integer.parseInt(Now.getText()); if(c>
119、;999||c<=0)</p><p><b> {</b></p><p> JOptionPane.showMessageDialog(null,"計算量超過消費有效值!");</p><p><b> }</b></p><p><b> else{
120、</b></p><p> Jisuan.setText(String.valueOf(Integer.pars</p><p> eInt(Jisuan.getText()) - Integer.parseInt(Now.getText()))); </p><p> Now.setText(Jis
121、uan.getText());</p><p><b> } </b></p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b&
122、gt; ops = 0 ;</b></p><p> Op.setText("=");</p><p> 4.3.4掛失模塊deposit() 設計說明</p><p><b> 1.程序描述</b></p><p> 完成掛失部分。對卡進行掛失和解掛操作,進行合法性驗證。<
123、;/p><p><b> 2.輸入項</b></p><p><b> 卡ID,卡密碼額。</b></p><p><b> 3.輸出項</b></p><p> 成功提示,錯誤提示。</p><p><b> 4.流程邏輯判斷表<
124、/b></p><p> 表1 流程邏輯判斷表</p><p> if(num.getText().equals("") )</p><p> {JOptionPane.showMessageDialog(null,"學生學號不能為空"); num.setFocusable(true);<
125、;/p><p><b> }</b></p><p><b> else{</b></p><p> try{ </p><p> String sql = "select * from student_info where stu_num = "+
126、num.getText(); ResultSetrs=Main.state.executeQuery(sql);</p><p> if(rs.next())</p><p><b> {</b></p><p> if(rs.getString(7).compareTo(pass.getTex
127、t())==0)</p><p><b> { </b></p><p> JOptionPane.showMessageDialog(null,"請按確認鎖鍵,確認鎖卡!");</p><p> num.setEnabled(false);</p><p> pass.setEnabled(
128、false);</p><p> this.jButton1.setEnabled(false);</p><p> this.jButton2.setEnabled(true);</p><p> ids=rs.getInt(1);</p><p><b> }</b></p><p>
129、<b> else {</b></p><p> JOptionPane.showMessageDialog(null,"學生密碼錯誤!");</p><p><b> }</b></p><p><b> }</b></p><p> else{
130、 </p><p> JOptionPane.showMessageDialog(null,"學生學號錯誤!");</p><p> } </p><p><b> }</b></p><p> catch(SQLExceptio
131、n ex)</p><p> { System.err.println("aq.executeQuery:"+ex.getMessage());} </p><p><b> }</b></p><p><b> 第五章 系統(tǒng)測試</b></p><p> 5.
132、1 測試的作用和意義</p><p> 系統(tǒng)測試是管理信息系統(tǒng)的開發(fā)周期中的一個十分重要環(huán)節(jié)。盡管在系統(tǒng)開發(fā)周期的各個階段均采取了嚴格的技術(shù)審查,但依然難免會留下錯誤,如果沒有在投入運行前的系統(tǒng)測試階段被發(fā)現(xiàn)并糾正,問題遲早會在運行中暴露出來,到那時要糾正錯誤將會付出更大的代價。系統(tǒng)測試占用的時間、花費的人力和成本占軟件開發(fā)的很大比例。統(tǒng)計表明,開發(fā)較大規(guī)模的系統(tǒng),系統(tǒng)測試的工作量大約占整個軟件開發(fā)工作量的40
133、%-50%。而對于一些特別重要的大系統(tǒng),測試的工作量和成本更大,甚至超過系統(tǒng)開發(fā)其他各階段的總和的若干倍。因此做好系統(tǒng)交付前的系統(tǒng)測試的目的就是在系統(tǒng)在投入生產(chǎn)性運行之前,盡可能多的發(fā)現(xiàn)系統(tǒng)的潛在錯誤,這是保證系統(tǒng)質(zhì)量的關鍵,也是減少系統(tǒng)后期維護投入的最佳方法。</p><p><b> 5.2 測試方法</b></p><p> 本次測試主要是對系統(tǒng)進行黑盒、白
134、盒測試。由未參與系統(tǒng)編程的組員參與。通過設計不同的等價輸入類對系統(tǒng)的各項功能進行反復運行,觀察系統(tǒng)的返回結(jié)果來判斷系統(tǒng)的各項功能的實現(xiàn)情況。</p><p><b> 5.3 測試內(nèi)容</b></p><p> 1 軟件的正常運行、關閉及退出時保存記錄情況。</p><p> 2 用戶界面是否友好,可操作性及安全性能是否良好。<
135、/p><p> 3 數(shù)據(jù)庫的可維護性好,數(shù)據(jù)的錄入、刪除及更改是否能順利完成。</p><p> 5 各模塊的共能是否能達到預期要求。</p><p> 6 系統(tǒng)的穩(wěn)定性是夠良好。</p><p><b> 5.4 測試結(jié)果</b></p><p> 5.4.1注冊和登錄模塊測試<
136、;/p><p> 經(jīng)過測試,用戶能在本系統(tǒng)進行正常的注冊和登錄,并在用戶輸入不存在的用戶名或錯誤的密碼后能給出提示。說明本系統(tǒng)的注冊和登錄模塊的各項功能都圓滿實現(xiàn)了。</p><p><b> 1.進入界面</b></p><p><b> 圖11 進入界面</b></p><p><b&g
137、t; 2. 創(chuàng)建用戶界面</b></p><p> 圖12 創(chuàng)建新卡界面</p><p> 3.登陸界面 </p><p><b> 圖13 登陸界面</b></p><p> 5.4.2查詢模塊測試</p><p> 1查詢主要是余額查詢,經(jīng)測試系統(tǒng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論