學(xué)生管理信息系統(tǒng) 《軟件工程課程設(shè)計(jì)》報(bào)告
《學(xué)生管理信息系統(tǒng) 《軟件工程課程設(shè)計(jì)》報(bào)告》由會(huì)員分享,可在線閱讀,更多相關(guān)《學(xué)生管理信息系統(tǒng) 《軟件工程課程設(shè)計(jì)》報(bào)告(45頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、 華科學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)系計(jì)算機(jī)專業(yè) 《軟件工程課程設(shè)計(jì)》報(bào)告 (2010/2011學(xué)年 第一學(xué)期) 學(xué)生姓名: 強(qiáng)海榮 學(xué)生班級(jí): 計(jì)算機(jī)072202H 學(xué)生學(xué)號(hào): 200722030217 指導(dǎo)教師: 趙旭俊 2010年12月27日 目錄 第一章 系統(tǒng)概述 1 1.1 系統(tǒng)開發(fā)的背景 1 1.2 系統(tǒng)開發(fā)的意義 1 1.3 系統(tǒng)開發(fā)的目標(biāo) 1 第二章 需求分析 2 2.1 綜合要求 2 2.1.1 功能要求 2 2.1.2 性能需求 2 2.2 數(shù)據(jù)流圖 2 2.3 數(shù)據(jù)字典 5 2.4 系統(tǒng) E-R 圖 9 第三章
2、 概要設(shè)計(jì) 11 3.1 合理方案設(shè)計(jì) 11 3.2 系統(tǒng)功能模塊設(shè)計(jì) 11 3.3 數(shù)據(jù)庫設(shè)計(jì) 12 第四章 詳細(xì)設(shè)計(jì) 14 4.1 數(shù)據(jù)庫及表創(chuàng)建 14 4.1.1 新建表 14 4.1.2 設(shè)計(jì)表 16 4.2 結(jié)構(gòu)程序設(shè)計(jì) 17 4.2.1 添加信息程序流程圖 17 4.2.2 修改信息程序流程圖 17 4.2.3 刪除信息程序流程圖 18 4.2.4 查詢信息程序流程圖 19 4.2.5 系統(tǒng)程序流程圖 19 4.3 人機(jī)界面設(shè)計(jì) 21 第五章 系統(tǒng)編碼與實(shí)現(xiàn) 21 5.1 創(chuàng)建工程項(xiàng)目 21 5.2 工程主窗體
3、21 5.3 用戶登陸窗體 22 5.4 學(xué)生信息窗體 23 5.4.1 學(xué)生信息添加窗體 23 5.4.2 學(xué)生信息刪改(刪除、修改)窗體 27 5.4.3 學(xué)生信息查詢窗體 31 第六章 系統(tǒng)測試 33 6.1 測試方法 33 6.2 測試用例 33 6.2.1 用戶登陸 33 6.2.2 學(xué)生信息 33 結(jié)束語 錯(cuò)誤!未定義書簽。 參考文獻(xiàn) 38 第一章 系統(tǒng)概述 1.1 系統(tǒng)開發(fā)的背景 隨著學(xué)校規(guī)模的不斷擴(kuò)大,專業(yè)、班級(jí)、學(xué)生的數(shù)量急劇增加,有關(guān)學(xué)生各門課程 的成績的各種信息量也成倍增長, 而目前許多高校的學(xué)生信息管理仍停留在復(fù)
4、雜的人工 操作上,重復(fù)工作較多,工作量大,效率低,因此,迫切需要開發(fā)學(xué)生管理信息系統(tǒng)來 提高管理工作的效率。 1.2 系統(tǒng)開發(fā)的意義 學(xué)生管理信息系統(tǒng),在學(xué)生信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢方面具有較大的 實(shí)用意義。它提高了信息的開放性,大大地改善了學(xué)生、教師對(duì)其最新信息查詢的準(zhǔn)確 性。 為了能夠?qū)W以致用,通過對(duì)學(xué)生管理信息系統(tǒng)的簡單開發(fā),不僅可以鞏固書本上所 學(xué)知識(shí),從而能夠?qū)λ鶎W(xué)內(nèi)容加以深化,拓寬自己的知識(shí)面。通過學(xué)習(xí)與實(shí)踐相結(jié)合, 提高自己的編程能力,為今后的畢業(yè)設(shè)計(jì)和以后的軟件開發(fā)奠定了基礎(chǔ)。 1.3 系統(tǒng)開發(fā)的目標(biāo) 學(xué)生管理信息系統(tǒng)是面向教育部門的學(xué)生管理系統(tǒng)
5、,包括學(xué)生基本信息管理,學(xué)生 成績管理等工作, 是利用計(jì)算機(jī)進(jìn)行集中管理而開發(fā)的系統(tǒng)。 該系統(tǒng)是以 Visual Basic 6.0 為開發(fā)環(huán)境,以 SQL 2000 為后臺(tái)數(shù)據(jù)庫進(jìn)行開發(fā)的管理系統(tǒng),力求與實(shí)際相結(jié)合具有 查詢、 管理等功能, 使教育的管理趨于計(jì)算機(jī)化, 使之更加方便、 快捷以提高工作效率。 根據(jù)學(xué)生管理的需求和特點(diǎn),該系統(tǒng)實(shí)施后,應(yīng)達(dá)到以下目標(biāo): 1. 靈活地運(yùn)用表格輸入數(shù)據(jù),使信息傳遞更快捷; 2. 系統(tǒng)采用人機(jī)對(duì)話方式,界面美觀友好、數(shù)據(jù)存儲(chǔ)安全可靠; 3. 鍵盤操作,快速響應(yīng); 4. 實(shí)現(xiàn)各種信息的添加、刪除、修改、查詢等; 5. 系統(tǒng)運(yùn)行穩(wěn)定、安全可
6、靠。 2.1 綜合要求 2.1.1 功能要求 在學(xué)生管理信息系統(tǒng)中,主要有用戶登陸、學(xué)生信息管理、班級(jí)信息管理、學(xué)生成 績管理、課程信息管理、用戶信息管理等功能。 1. 用戶登陸 管理員登陸,普通用戶對(duì)信息的查詢登陸,管理員和普通用戶必須在登陸頁面輸入 第二章 系統(tǒng)需求分析 用戶名及密碼,只有驗(yàn)證通過方可進(jìn)入其它操作。 學(xué)生信息修改、 班級(jí)信息修改、 學(xué)生成績修改、 2. 學(xué)生信息管理 包括 4 個(gè)功能模塊: 學(xué)生信息添加、 3. 班級(jí)信息管理 包括 4 個(gè)功能模塊: 班級(jí)信息添加、 4. 學(xué)生成績管理 包括 4 個(gè)功能模塊: 學(xué)生成績添加、 5. 課程信息管理
7、 包括 4 個(gè)功能模塊: 課程信息添加、 6. 用戶信息管理 包括 2 個(gè)功能模塊:用戶信息添加和用戶密碼修改。 2.1.2 性能需求 要求該系統(tǒng)易操作、可維護(hù)、具有開放性,時(shí)刻保持?jǐn)?shù)據(jù)的有效性與安全性,并且 學(xué)生信息刪除和學(xué)生信息查詢。 班級(jí)信息刪除和班級(jí)信息查詢。 學(xué)生成績刪除和學(xué)生成績查詢。 課程信息修改、 課程信息刪除和課程信息查詢。 用戶信息添加和用戶密碼修改。 可維護(hù)、具有開放性,時(shí)刻保持?jǐn)?shù)據(jù)的有效性與安全性,并且 只有管理員才能對(duì)數(shù)據(jù)進(jìn)行修改。 開發(fā)環(huán)境: Visual Basic 6.0. 數(shù)據(jù)庫: SQL Server2000. 操作系統(tǒng): Wi
8、ndows XP. 2.2 數(shù)據(jù)流圖 分析學(xué)生管理信息系統(tǒng)的數(shù)據(jù)來源和去向,繪制出數(shù)據(jù)流圖的頂層數(shù)據(jù)流圖,如圖 所示。 2-1 圖2-1學(xué)生管理信息系統(tǒng)的頂層
9、數(shù)據(jù)流圖 0層數(shù)據(jù)流圖, 按自頂向下、逐層分解的方法對(duì)頂層數(shù)據(jù)流圖進(jìn)一步細(xì)化,繪制出 如圖2.2所示。 圖2.2學(xué)生管理信息系統(tǒng)的 0層數(shù)據(jù)流圖 2.3數(shù)據(jù)字典 該學(xué)生信息管理系統(tǒng)的數(shù)據(jù)字典如下: (1)、數(shù)據(jù)名稱:學(xué)生信息 數(shù)據(jù)流數(shù)據(jù)字典 數(shù)據(jù)名: 錄入學(xué)生的基本信息 來源: 管理員 數(shù)據(jù)結(jié)構(gòu):學(xué)號(hào)+姓名+性別+出生日期+班級(jí)編號(hào)+入學(xué)時(shí)間+住
10、址+備注 簡要說明:該學(xué)生信息管理系統(tǒng)的主要結(jié)構(gòu),定義了一個(gè)學(xué)生的基本信息 數(shù)據(jù)項(xiàng)數(shù)據(jù)字典 數(shù)據(jù)名: 學(xué)號(hào) 存儲(chǔ)處: 學(xué)生信息表 數(shù)據(jù)元素:類型:字符型 長度:50 含義:學(xué)生的唯一標(biāo)識(shí) 簡要說明:在學(xué)生信息表中可以唯一的標(biāo)識(shí)每一位學(xué)生 數(shù)據(jù)名: 入學(xué)時(shí)間 存儲(chǔ)處: 學(xué)生信息表 數(shù)據(jù)元素:類型:datetime 長度:8 含義:學(xué)生的入學(xué)時(shí)間信息 簡要說明:記錄每一位學(xué)生的入學(xué)時(shí)間 數(shù)據(jù)加工數(shù)據(jù)字典 項(xiàng)目名: 添加學(xué)生信息 輸入: 學(xué)生信息 輸出: 簡要說明:可以添加學(xué)生信息 項(xiàng)目名: 修改學(xué)生信息 輸入: 學(xué)生信息 (2)、數(shù)據(jù)名稱:班級(jí)信息 數(shù)
11、據(jù)流數(shù)據(jù)字典 數(shù)據(jù)名: 錄入班級(jí)的基本信息 來源: 管理員 數(shù)據(jù)結(jié)構(gòu):班級(jí)編號(hào)+班級(jí)名稱+輔導(dǎo)員+系名稱+班主任 簡要說明:該學(xué)生信息管理系統(tǒng)的主要結(jié)構(gòu)之一,定義了一個(gè)班級(jí)的基本信息 數(shù)據(jù)項(xiàng)數(shù)據(jù)字典 數(shù)據(jù)名: 班級(jí)編號(hào) 存儲(chǔ)處: 班級(jí)信息表 數(shù)據(jù)元素:類型:字符型 長度:50 含義:班級(jí)的唯一標(biāo)識(shí) 簡要說明:在班級(jí)信息表中可以唯一的標(biāo)識(shí)每一門課程 數(shù)據(jù)名: 班主任 存儲(chǔ)處: 班級(jí)信息表 數(shù)據(jù)元素:類型:字符 長度:50 含義:該課程的負(fù)責(zé)人 簡要說明:記錄每一個(gè)班級(jí)的班主任 數(shù)據(jù)加工數(shù)據(jù)字典 項(xiàng)目名: 添加班級(jí)信息 輸入: 班級(jí)信息 輸出: 簡要說明
12、:可以添加班級(jí)信息 項(xiàng)目名: 修改班級(jí)信息 輸入: 班級(jí)信息 輸出: (3)、數(shù)據(jù)名稱:學(xué)生成績信息 數(shù)據(jù)流數(shù)據(jù)字典 數(shù)據(jù)名: 錄入學(xué)生成績信息 來源: 管理員 數(shù)據(jù)結(jié)構(gòu):學(xué)號(hào)+課程編號(hào)+成績 簡要說明:該學(xué)生信息管理系統(tǒng)的主要結(jié)構(gòu)之一 數(shù)據(jù)項(xiàng)數(shù)據(jù)字典 數(shù)據(jù)名: 學(xué)號(hào) 存儲(chǔ)處: 成績信息表 數(shù)據(jù)元素:類型:字符型 長度:50 含義:學(xué)生的唯一標(biāo)識(shí) 簡要說明:在成績信息表中可以唯一的標(biāo)識(shí)每一位學(xué)生 數(shù)據(jù)名: 成績 存儲(chǔ)處: 成績信息表 數(shù)據(jù)元素:類型:numeric 長度:9 含義:學(xué)生的成績信息 簡要說明:記錄每一位學(xué)生的成績信息 數(shù)據(jù)加工數(shù)據(jù)字典
13、 項(xiàng)目名: 添加成績信息 輸入: 成績信息 輸出: 簡要說明:可以添加成績信息 項(xiàng)目名: 查詢成績信息 輸入: 輸出: 成績信息 簡要說明:可以查詢每一位學(xué)生的成績信息 (4)、數(shù)據(jù)名稱:課程信息表 數(shù)據(jù)流數(shù)據(jù)字典 數(shù)據(jù)名: 錄入課程的基本信息 來源: 管理員 數(shù)據(jù)結(jié)構(gòu):課程編號(hào)+課程名稱+課程類型+開課時(shí)間+學(xué)時(shí)+學(xué)分 簡要說明:該學(xué)生信息管理系統(tǒng)的主要結(jié)構(gòu)之一 數(shù)據(jù)項(xiàng)數(shù)據(jù)字典 數(shù)據(jù)名: 課程編號(hào) 存儲(chǔ)處: 課程信息表 數(shù)據(jù)元素:類型:字符型 長度:50 含義:課程的唯一標(biāo)識(shí) 簡要說明:在課程信息表中可以唯一的標(biāo)識(shí)每一門課程 數(shù)據(jù)名: 開課時(shí)間
14、 存儲(chǔ)處: 課程信息表 數(shù)據(jù)元素:類型:datetime 長度:8 含義:學(xué)生的開課時(shí)間信息 簡要說明:記錄每一門的課程的開課時(shí)間 數(shù)據(jù)加工數(shù)據(jù)字典 項(xiàng)目名: 添加課程信息 輸入: 課程信息 輸出: 簡要說明:可以添加課程信息 項(xiàng)目名: 修改課程信息 輸入: 課程信息 輸出: 2.4系統(tǒng)E-R圖 繪制學(xué)生管理信息系統(tǒng)的E-R圖,如圖2-3所示 圖2.3學(xué)生管理信息系統(tǒng)的 E-R圖 圖2.4學(xué)生實(shí)體圖 圖2.5班級(jí)實(shí)體圖 圖2.6課程實(shí)體圖 圖2.7成績實(shí)體圖
15、 第三章系統(tǒng)概要設(shè)計(jì) 3.1 合理方案設(shè)計(jì) 在需求分析的基礎(chǔ)上,尋找實(shí)現(xiàn)學(xué)生管理信息系統(tǒng)的各種不同的方案,并選取若干 個(gè)合理方案,經(jīng)分析比較,從中選出一個(gè)最佳方案。 本方案是在Visual Basic 6.0、SQL Server2000的環(huán)境下,實(shí)現(xiàn)對(duì)學(xué)生管理信息系統(tǒng) 的用戶登陸、學(xué)生信息管理、班級(jí)信息管理、學(xué)生成績管理、課程信息管理、用戶信息 管理等功能。 3.2 系統(tǒng)功能模塊設(shè)計(jì) 學(xué)生管理信息系統(tǒng)功能包括可視化窗口,對(duì)各種信息的添加、修改、刪除和查詢等 具體功能如圖3-1所示。 學(xué)生管理信息系統(tǒng) 用戶信息管理 學(xué)生
16、信息管理 班級(jí)信息管理 課程信息管理 學(xué)生成績管理 用戶信息添加 學(xué)生成績查詢 用戶密碼修改 圖3.1學(xué)生管理信息系統(tǒng)功能模塊 3.3 數(shù)據(jù)庫設(shè)計(jì) 在需求分析階段所確定的學(xué)生管理信息系統(tǒng)數(shù)據(jù)需求的基礎(chǔ)上,進(jìn)一步設(shè)計(jì)數(shù)據(jù) 庫。 1 .系統(tǒng)用戶數(shù)據(jù)表(用戶信息表)記錄系統(tǒng)所有用戶名和密碼信息,表中的各個(gè)字 段以及各個(gè)字段的說明如表3-1所示: 表3-1用戶信息表結(jié)構(gòu) 歹U名 數(shù)據(jù)類型 長度 說明 用戶名 varchar 50 允許空 密碼 varchar 50 允許空 用戶類型 char 10 允許空 2 .學(xué)生信息
17、表記錄學(xué)生學(xué)號(hào)、姓名等基本信息,表中的各個(gè)字段以及各個(gè)字段的說 明如表3-2所示: 表3-2學(xué)生信息表結(jié)構(gòu) 歹U名 數(shù)據(jù)類型 長度 說明 學(xué)號(hào) varchar 50 主鍵 姓名 varchar 50 允許空 性別 varchar 10 允許空 出生日期 datetime 8 允許空 班級(jí)編號(hào) varchar 50 允許空 電話號(hào)碼 varchar 50 允許空 入學(xué)時(shí)間 datetime 8 允許空 住址 varchar 100 允許空 備注 varchar 200 允許空 3 .班級(jí)信息表記錄班級(jí)編號(hào)、班級(jí)名
18、稱及相關(guān)的信息,表中各個(gè)字段以及各個(gè)字段 的說明如表3-3所示: 表3-3班級(jí)信息表結(jié)構(gòu) 歹U名 數(shù)據(jù)類型 長度 說明 班級(jí)編號(hào) varchar 50 主鍵 班級(jí)名稱 varchar 50 允許空 輔導(dǎo)員 varchar 50 允許空 系名稱 varchar 50 允許空 班主任 varchar 50 允許空 4 .課程信息表記錄課程編號(hào)、課程名稱等相關(guān)信息,表中各個(gè)字段以及各個(gè)字段 的說明如表3-4所示: 表3-4課程信息表結(jié)構(gòu) 歹U名 數(shù)據(jù)類型 長度 說明 課程編號(hào) varchar 50 主鍵 課程名稱 va
19、rchar 50 允許空 課程類型 varchar 50 允許空 開課時(shí)間 carhar 10 允許空 課時(shí) int 4 允許空 學(xué)分 int 4 允許空 5 .學(xué)生成績表記錄學(xué)生學(xué)號(hào)、課程編號(hào)及相關(guān)的成績,表中各個(gè)字段以及各個(gè)字段 的說明如表3-5所示: 表3-5學(xué)生成績表結(jié)構(gòu) 歹U名 數(shù)據(jù)類型 長度 說明 學(xué)號(hào) varchar 50 主鍵 課程編號(hào) varchar 50 主鍵 成績 numeric 9 允許空 第四章系統(tǒng)詳細(xì)設(shè)計(jì) 4.1 數(shù)據(jù)庫及表創(chuàng)建 啟動(dòng)SQL2000 Server,右擊“數(shù)據(jù)庫”點(diǎn)擊“新
20、建數(shù)據(jù)庫”,在彈出的“數(shù)據(jù)庫屬 性”對(duì)話框中可鍵入數(shù)據(jù)庫名及其它信息,如圖 4-1所示: 圖4.1新建數(shù)據(jù)庫 4.1.1 新建表 數(shù)據(jù)庫創(chuàng)建完畢后,點(diǎn)擊可打開。右擊“表”選擇“新建表” ,可以進(jìn)行表的創(chuàng)建 以及進(jìn)行相關(guān)的表屬性設(shè)置。 1 .用戶信息表如圖4-2所示: 列名 數(shù)據(jù)類型 長度 允許空 目則總 var ehar 50 爐 code yarchar 50 y raiige char 10 爐 圖4.2新建用戶信息表 2 .學(xué)生信息表如圖4-3所示: 列名 數(shù)據(jù)類型 長度 允許空| 隔
21、 學(xué)號(hào) varchar 50 姓名 var char 50 V 性別 var rtiar 10 出生日期 8 V 班級(jí)編號(hào) varchir 50 7 電話號(hào)碼 var char SO V 入學(xué)時(shí)間 datetime 8 / 住址 varchar 100 備注 var char 200 圖4.3新建學(xué)生信息表 3 .班級(jí)信息表如圖4-4所示: 列名 數(shù)據(jù)類型 長度 允許空I 鬧 班級(jí)編號(hào) y.uhw 50 班皴名稱 var
22、char 50 V 輔導(dǎo)員 var char 50 系名稱 varchar 50 V 班主任 var char 50 圖4.4新建班級(jí)信息表 4 .課程信息表如圖4-5所示: 列名 數(shù)據(jù)莞型 長度 允許空| 課程編號(hào) var char 50 課程名稱 var char 50 饃程類型 var char 50 V 開課時(shí)間 10 課時(shí) int 4 V 學(xué)分 ini 4 7 圖4.5新建課程信息表 5 .學(xué)成
23、成績表如圖4-6所示: 列名 數(shù)據(jù)類型 長度 允許空I 學(xué)號(hào) ver char so 課程編號(hào) vai- char 50 成績 numeric 9 圖4.6新建學(xué)生成績表 4.1.2設(shè)計(jì)表 創(chuàng)建完表后右擊對(duì)應(yīng)表名一一“打開表”一一“返回所有行” ,可對(duì)表進(jìn)行添加、 修改、插入、刪除等相應(yīng)編輯操作 1 .設(shè)計(jì)用戶信息表如圖4-7所示: code range admin admin 營理員 lijing lijiftg 普通用戶 圖4.7
24、設(shè)計(jì)用戶信息表 2 .設(shè)計(jì)學(xué)生信息表如圖4-8所示: 學(xué)號(hào) I姓名 I性別I出生日期 斑圾編號(hào) 電話號(hào)碼 入學(xué)時(shí)間 住址 蓄汪 200722030101 2D0T22CJ301QZ 200722030115 白蔡李 日蒲靖 宏森 男女女 1987-05-15 07220301 1364360 20QT-Q9-01 山西省大同市 1989-05-14 OT2203D1 1380343 200T-09-01 山西省永濟(jì)市 1938-10-06 07220301 15 8 3405 200T-09-01 山西省女同市 好好好 良良良 圖4.8設(shè)計(jì)學(xué)生信息表
25、 3 .設(shè)計(jì)班級(jí)信息表如圖4-9所示: 班級(jí)編號(hào) 班級(jí)名稱 輔導(dǎo)員 系名稱 班主任 07220301 討算機(jī)。叫201H 劉故曜 討算機(jī)科學(xué)與技術(shù)系 武研 OT2203U2 討算機(jī)5rzz02H 劉戰(zhàn)續(xù) 計(jì)算機(jī)科學(xué)與技術(shù)系 司城南 ? 圖4.9設(shè)計(jì)班級(jí)信息表 4 .設(shè)計(jì)課程信息表如圖4-10所示: I課程編號(hào)I課程名稱 I課程類型I開課時(shí)間I課時(shí) —[¥芬 pigr“ 一 課謨課課課課 出出出出出出 3H 5 i 5 M- 基基基基專專 3232&4S4X54 0001 馬克思主義原理 0002 中國近現(xiàn)代史綱要
26、 0003 大學(xué)英語 0004 大學(xué)物理 0005 數(shù)據(jù)結(jié)構(gòu) 0006 俎成原理 圖4.10設(shè)計(jì)課程信息表 5 .設(shè)計(jì)學(xué)生成績表如圖4-11所示: 學(xué)號(hào) 課程編號(hào) 成最 200722030115 0001 78 20C722030115 000£ 80 200722030115 0003 95 200722030115 0004 93 200722030115 0005 的 200TZ2030115 0006 07 圖4.11設(shè)計(jì)學(xué)生成績表 4.2結(jié)構(gòu)程序設(shè)計(jì) 4.2.1 添加信息
27、程序流程圖 繪制添加信息流程圖,如圖4-12所示 圖4.12添加信息 4.2.2 修改信息程序流程圖 繪制修改信息流程圖如圖4-13所示。 圖4.13修改信息 4.2.3刪除信息程序流程圖 繪制刪除信息流程圖如圖4-14所示。 圖4.14刪除信息 4.2.4 查詢信息程序流程圖 繪制查詢信息流程圖如圖 4-15所示 圖4.
28、15查詢信息 4.2.5 系統(tǒng)程序流程圖 3種基本控制 采用自頂向下、逐步求精的程序設(shè)計(jì)方法,使用順序、選擇和循環(huán)這 結(jié)構(gòu)進(jìn)行連接,并且每個(gè)代碼塊只有一個(gè)入口和出口。 4.3人機(jī)界面設(shè)計(jì) 4個(gè)問題。 然后根據(jù) 認(rèn)真處理好系統(tǒng)響應(yīng)時(shí)間、用戶幫助設(shè)施、出錯(cuò)信息處理和命令交互這 先創(chuàng)建設(shè)計(jì)模型,接下來用原型實(shí)現(xiàn)這個(gè)設(shè)計(jì)模型并由用戶調(diào)試和評(píng)估原型, 用戶意見修改原型。 1 .系統(tǒng)響應(yīng)時(shí)間:穩(wěn)定在1秒。 2 .用戶幫助設(shè)施:選擇附加的幫助設(shè)施。 3
29、.出錯(cuò)信息處理: 1)當(dāng)輸入用戶名不存在時(shí),給出提示; 2)當(dāng)輸入密碼不正確時(shí),給出提示; 3)當(dāng)查詢信息不存在時(shí),給出提示; 4)其他出錯(cuò)提示 4 . 命令交互: 用戶既可以從菜單中選擇軟件功能, 也可以通過鍵盤命令序列調(diào)用軟 件功能 第五章系統(tǒng)編碼與實(shí)現(xiàn) 5.1創(chuàng)建工程項(xiàng)目 圖5.1 VB 6.0界面 1 .啟動(dòng)VB 6.0,出現(xiàn)VB 6.0運(yùn)行界面,如圖5-1所示: 2 .點(diǎn)擊“文件”一一“保存工程”保存當(dāng)前工程文件 5.2 工程主窗體 在VB程序設(shè)計(jì)中,主界面負(fù)責(zé)應(yīng)用程序的主界面,由它調(diào)用其它模塊。因此,主 界面應(yīng)該具有操作性好、界面清晰、
30、使用戶能夠很方便地找到所需功能的特點(diǎn)。本系統(tǒng) 的主界面部在相應(yīng)的系統(tǒng)菜單組成,用戶只需要點(diǎn)擊相應(yīng)的菜單使可調(diào)出對(duì)應(yīng)的系統(tǒng)模 塊。工程主窗體如圖5-2所示。 圖5.2工程主窗體 5.3 用戶登陸窗體 本模塊用于用戶登陸窗體主要由文本框及命令按鈕組成,利用 ADODC控件及 DataGrid控件實(shí)現(xiàn)程序代碼與SQL數(shù)據(jù)的連接(如圖5-3所示) 圖5.3用戶登陸窗體 對(duì)應(yīng)代碼如下: Option Explicit Private Sub Command1_Click() Dim cn As New ADODB.Connection Dim rs As New A
31、DODB.Recordset Dim cn_str As String Dim rs_str As String cn_str = "driver={sql server};server=.;uid=sa;pwd=;database=XSXX" cn.Open cn_str rs_str = "select * from mima where name='" & Trim(Text1.Text) & ""' rs.Open rs_str, cn, adOpenKeyset, adLockOptimistic If Text1.Text <> "" And Text2.Text <> "
32、" Then If rs.RecordCount > 0 Then If Text2.Text = Trim(rs.Fields("code")) Then 'MsgBox " 成功登錄! ", 64," 提示" MDIfrm_main.Show Unload Me 'Me.Hide Else MsgBox 輸入的密碼不對(duì),請(qǐng)重新輸入! ", 64," 提示" Text2.SetFocus Text2.SelStart = 0 Text2.SelLength = Len(Text2.Text) End If Else MsgBox " 沒有該操作員! ", 64
33、, " 提示 " End If Else If Text1.Text = "" And Text2.Text <> "" Then MsgBox " 請(qǐng)輸入操作員 !", 64, " 提示 " Text1.SetFocus ElseIf Text1.Text <> "" And Text2.Text = "" Then MsgBox " 請(qǐng)輸入密碼! ", 64, " 提示 " Text2.SetFocus ElseIf Text1.Text = "" And Text2.Text = "" Then MsgBox " 請(qǐng)輸入操作員和密碼! ", 64, " 提示 " T
34、ext1.SetFocus End If End If End Sub Private Sub Command2_Click() Unload Me End Sub Private Sub Form_Load() Text1.Text = "" Text2.Text = "" Me.Icon = LoadPicture("") Label5.Caption = Year(Date) End Sub Private Sub Text1_Change() End Sub 5.4 學(xué)生信息窗體 本窗體通過 ADODC 控件連接數(shù)據(jù)庫的學(xué)生表, 可以實(shí)現(xiàn)對(duì)學(xué)生信息的添加
35、、 修改 刪除和查詢。 5.4.1 學(xué)生信息添加窗體 學(xué)生信息的添加窗體,如圖 5-4 所示。 立添加學(xué)生信息 工叵I區(qū) 學(xué)生信息 + 口 - X 添加 保存 取消 退出 圖5.4學(xué)生信息添加窗體 對(duì)應(yīng)代碼如下: Option Explicit Dim s, y, i, j Dim rs As New ADODB.Recordset Private Sub Form_Load() MSI.Rows = 2 MS1.Cols = 10 y = Array(" 序號(hào)","學(xué)號(hào)(*)"," 姓名","性別","出生日期","班級(jí)編號(hào)","電話號(hào)碼","入學(xué)
36、時(shí)間","住址","備注") For i = 0 To MS1.Cols - 1 MS1.TextMatrix(0, i) = y(i) MS1.FixedAlignment(i) = 4 MS1.ColAlignment(i) = 4 Next MS1.FixedRows = 1: MS1.FixedCols = 1 MS1.TextMatrix(1,0) = 1 MS1.ColWidth(0) = 450 Toolbar1.Buttons(8).Enabled = False Toolbar1.Buttons(10).Enabled = False MS1.Enabl
37、ed = False Text1.Text = "" End Sub Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) Unload Me MDIfrm_main.Picture1.Visible = True End Sub Private Sub Form_Resize() MS1.Width = Me.Width - 200 MS1.Height = Me.Height For i = 1 To MS1.Cols - 1 MS1.ColWidth(i) = MS1.Width
38、 / 9.3 Next End Sub Private Sub MS1_Click() If MS1.Row >= 1 And MS1.TextMatrix(MS1.Row - 1, MS1.Cols - 1) <> "" Then Text1.Visible = True Text1.SetFocus End If End Sub Private Sub MS1_EnterCell() Module1.entercell MS1, Text1 End Sub Private Sub MS1_RowColChange() For i = 1 To MS1.Rows -
39、 1 MS1.TextMatrix(i, 0) = i Next End Sub Private Sub Text1_Change() MS1.Text = Text1.Text End Sub Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode = vbKeyUp Then Module1.moveup MS1, Text1 End If If KeyCode = vbKeyRight Or KeyCode = vbKeyReturn Then Module1.moveri
40、ght MS1, Text1 End If If KeyCode = vbKeyDown Then Module1.movedown MS1, Text1 End If If KeyCode = vbKeyLeft Then Module1.moveleft MS1, Text1 End If End Sub Private Sub MS1_Scroll() Text1.Width = MS1.CellWidth: Text1.Height = MS1.CellHeight Text1.Left = MS1.Left + MS1.CellLeft: Text1.Top = M
41、S1.CellTop + MS1.Top End Sub Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Key Case "add" Toolbar1.Buttons(8).Enabled = True Toolbar1.Buttons(10).Enabled = True Text1.Visible = True: Text1.Text = "" MS1.Enabled = True Text1.SetFocus Text1.Width = MS
42、1.CellWidth: Text1.Height = MS1.CellHeight Text1.Left = MS1.CellLeft + MS1.Left: Text1.Top = MS1.CellTop + MS1.Top Case "save" For i = 1 To MS1.Rows - 1 If MS1.TextMatrix(i, 1) <> "" Then rs.Open "select * from student_info", cnn, adOpenKeyset, adLockOptimistic rs.AddNew For j = 1 To MS1.Col
43、s - 1 If MS1.TextMatrix(i, j) <> "" Then rs.Fields(j - 1) = Trim(MS1.TextMatrix(i, j)) Next j rs.Update rs.Close End If Next MsgBox " 添加成功! ", 64, " 提示 " For i = 1 To MS1.Rows - 1 For j = 1 To MS1.Cols - 1 MS1.TextMatrix(i, j) = "" Next j Next i MS1.Rows = 2 Text1.Visible = False MS1
44、.Enabled = False Toolbar1.Buttons(8).Enabled = False Toolbar1.Buttons(10).Enabled = False Case "cancel" For i = 1 To MS1.Rows - 1 For j = 1 To MS1.Cols - 1 MS1.TextMatrix(i, j) = "" Next j Next i MS1.Rows = 2 Text1.Visible = False MS1.Enabled = False Toolbar1.Buttons(8).Enabled = False
45、Toolbar1.Buttons(10).Enabled = False Case "close" Unload Me MDIfrm_main.Picture1.Visible = True End Select End Sub 5.4.2 學(xué)生信息刪改(刪除、修改)窗體 學(xué)生信息的刪改窗體,如圖 5-5 所示。 圖5.5學(xué)生信息刪改窗體 對(duì)應(yīng)代碼如下: Option Explicit Dim i As Integer Private Sub Command1_Click() AdodcI.RecordSource = "select * from stude
46、nt_info where student_info." & Combo1.Text & like + '" & Text1.Text & "' + '%'" Adodc1.Refresh End Sub Private Sub Command2_Click() If Not Adodc1.Recordset.BOF Then Adodc1.Recordset.MoveFirst End Sub Private Sub Command3_Click() If Adodc1.Recordset.RecordCount <> 0 Then If Adodc1.Recordset.B
47、OF = False Then Adodc1.Recordset.MovePrevious If Adodc1.Recordset.BOF = True Then Adodc1.Recordset.MoveFirst End If End Sub Private Sub Command4_Click() If Adodc1.Recordset.RecordCount <> 0 Then If Adodc1.Recordset.EOF = False Then Adodc1.Recordset.MoveNext If Adodc1.Recordset.EOF = True Then
48、 Adodc1.Recordset.MoveLast End If End Sub Private Sub Command5_Click() If Not Adodc1.Recordset.EOF Then Adodc1.Recordset.MoveLast End Sub Private Sub Command6_Click() DataGrid1.AllowUpdate = True Command9.Enabled = True End Sub Private Sub Command7_Click() 'DataGrid1.AllowDelete = True D
49、im i On Error Resume Next i = MsgBox(" 是否確定刪除該記錄? ", 64, " 提示 ") If i = vbOK Then Adodc1.Recordset.Delete Adodc1.Refresh End If End Sub Private Sub Command8_Click() MDIfrm_main.Picture1.Visible = True Unload Me End Sub Private Sub Command9_Click() DataGrid1.AllowUpdate = False DataGrid
50、1.AllowDelete = False DataGrid1.Refresh MsgBox "操作成功! ", 64, " 提示 " Command9.Enabled = False End Sub Private Sub Form_Activate() Combo1.AddItem " 學(xué)號(hào) " Combo1.AddItem " 姓名 " Combol.ListIndex = 0 Textl.Text ="" Command9.Enabled = False End Sub Private Sub Form_QueryUnload(Cancel As Integer
51、, UnloadMode As Integer) MDIfrm_main.Picture1.Visible = True End Sub Private Sub Form_Resize() Frame1.Width = Me.Width - 300 DataGrid1.Width = Me.Width - 300 DataGrid1.Height = Me.Height Fori = 0 To 8 DataGrid1.Columns(i).Width = (DataGrid1.Width - 450) / 9 Next End Sub Private Sub Text1_Ke
52、yDown(KeyCode As Integer, Shift As Integer) If KeyCode = vbKeyReturn Then Command1.SetFocus End Sub 5.4.3 學(xué)生信息查詢窗體 學(xué)生信息的查詢窗體,如圖5-6所示。 5.6 學(xué)生信息查詢窗體 對(duì)應(yīng)代碼如下: Option Explicit Dim i As Integer Private Sub Command1_Click() Select Case Combo2.Text Case Is = "like" Adodc1.RecordSource = "select
53、 * from student_info where student_info." & Combo1.Text & " like '%' + '" & Text1.Text & "' + '%' " Adodc1.Refresh Case Is = "=" Adodc1.RecordSource = "select * from student_info where student_info." & Combo1.Text & " = '" & Text1.Text & "'" Adodc1.Refresh End Select End Sub Private Sub Com
54、mand2_Click() Unload Me MDIfrm_main.Picture1.Visible = True End Sub Private Sub Form_Activate() Combo1.AddItem (" 學(xué)號(hào) ") Combo1.AddItem (" 姓名 ") Combo1.AddItem (" 班級(jí)編號(hào) ") Combo1.ListIndex = 0 Combo2.AddItem ("like") Combo2.AddItem ("=") Combo2.ListIndex = 1 Text1.Text = "" End Sub Priva
55、te Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) MDIfrm_main.Picture1.Visible = True End Sub Private Sub Form_Resize() Shape1.Width = Me.Width - 300 DataGrid1.Width = Me.Width - 300 DataGrid1.Height = Me.Height For i = 0 To 8 DataGrid1.Columns(i).Width = (DataGrid1.Width - 4
56、50) / 9 Next End Sub 第六章系統(tǒng)測試 6.1 測試方法 進(jìn)行系統(tǒng)測試主要有兩種方法:靜態(tài)測試和動(dòng)態(tài)測試,我們主要采用動(dòng)態(tài)測試的方 法。動(dòng)態(tài)測試是通過運(yùn)行程序來檢驗(yàn)軟件的動(dòng)態(tài)特性和運(yùn)行結(jié)果的正確性,并根據(jù)程序 的運(yùn)行過程對(duì)程序進(jìn)行評(píng)價(jià)的過程。動(dòng)態(tài)測試包括運(yùn)行、解釋和模擬。具體的測試方法 有: 黑盒子測試。一種以需求和功能規(guī)范及界面為基礎(chǔ)的測試方法。它無需了解軟件的 內(nèi)容結(jié)構(gòu)。 白盒子測試。一種以程序?yàn)榛A(chǔ)的或以程序和需求相結(jié)合為基礎(chǔ)的測試方法。它必 須了解程序的結(jié)構(gòu)而不考慮程序的功能。 灰盒子測試。上述兩種測試方法的結(jié)合。通常先用黑盒子方法設(shè)計(jì)測試案例,然后
57、盡可能多地用白盒子方法完成測試。 采用以下數(shù)據(jù)測試軟件,對(duì)于測試過程中發(fā)現(xiàn)的問題,包括語法錯(cuò)誤、邏輯錯(cuò)誤等, 通過分析,都進(jìn)行了一一的排除。最后系統(tǒng)能夠正確運(yùn)行。 6.2 測試用例 6.2.1 用戶登陸 用戶登陸界面如圖6-1所示: 登錄 區(qū) 學(xué)生信息管理系統(tǒng) 用戶名:? 密碼二 確定 退出 CopyRi ght : 2010 — 2010 圖6.1登陸界面 6.2.2學(xué)生信息 管理員可以對(duì)學(xué)生信息進(jìn)行添加、修改、刪除、查詢等操作,而普通用戶只能實(shí)現(xiàn) 學(xué)生信息的查詢功能。 當(dāng)管理員進(jìn)行添加學(xué)生信息時(shí),首先點(diǎn)擊添加,然后輸入信息,當(dāng)點(diǎn)擊保存時(shí),如 果系統(tǒng)判斷輸入
58、無誤,則顯示添加成功!如圖 6-2所示: 學(xué)生信息 所-U
59、也使我學(xué)會(huì)了利用結(jié)構(gòu)化程序設(shè)計(jì)思想開發(fā)管理信息系 統(tǒng),并用模塊化方法加以實(shí)現(xiàn)。 雖然以前也曾經(jīng)參與過其他項(xiàng)目的系統(tǒng)開發(fā),但畢竟只是接觸,而沒有像這次畢業(yè) 設(shè)計(jì)那樣非常系統(tǒng)地去完成,也沒有系統(tǒng)開發(fā)設(shè)計(jì)的經(jīng)驗(yàn),而且畢業(yè)設(shè)計(jì)的時(shí)間有限, 這些都使得本系統(tǒng)在某些方面表現(xiàn)得并不是非常的完善。但是,通過這次系統(tǒng)開發(fā),將 學(xué)習(xí)的理論與實(shí)踐相結(jié)合,使我對(duì)學(xué)生檔案管理系統(tǒng)和數(shù)據(jù)庫的設(shè)計(jì)與開發(fā)有了更真 實(shí)、具體的體會(huì),使我得到了一次很有價(jià)值的實(shí)踐。 通過對(duì)該信息系統(tǒng)的分析,雖說具有相對(duì)完善的功能應(yīng)用,但也存在一些缺陷。該 信息系統(tǒng)的不足主要有以下幾點(diǎn): 1 、信息內(nèi)容和形式過于單一 2 、信息
60、的流向基本是由下向上單項(xiàng)流動(dòng)。 3 、信息系統(tǒng)仍多為模擬手工系統(tǒng)的數(shù)據(jù)處理流程。 4 、信息系統(tǒng)應(yīng)用缺乏彈性 雖說存在一些問題,但在系統(tǒng)設(shè)計(jì)過程中,從用戶的角度出發(fā),在系統(tǒng)的可用性 和易用性上做了很多功夫,力求能達(dá)到最好的效果。由于我的編程實(shí)現(xiàn)能力和畢業(yè)設(shè)計(jì) 的時(shí)間都有限,我對(duì)學(xué)生信息管理這一系列工作的具體內(nèi)容也不是特別地了解,所以目 前我還不能把學(xué)生檔案管理這個(gè)系統(tǒng)較為完善地實(shí)現(xiàn)出來, 希望以后有機(jī)會(huì)能夠彌補(bǔ)這 個(gè)遺憾。 在系統(tǒng)開發(fā)過程中,問題不斷的出現(xiàn),又不斷的得到解決,一步一步地前進(jìn),隨 著系統(tǒng)的逐步完善,我對(duì)以前所學(xué)知識(shí)的領(lǐng)悟程度得到了提升,編程能力得到了提高, 所學(xué)的知識(shí)得到了綜合運(yùn)用。通過這次系統(tǒng)的開發(fā),我對(duì)專業(yè)知識(shí)的運(yùn)用得到了一次升 華。 參考文獻(xiàn) [1] 薩師煊,王珊 . 數(shù)據(jù)庫系統(tǒng)概論(第 4 版) . 北京:高等教育出版社, 2006 年 . [2] 張海藩 . 軟件工程導(dǎo)論(第 5 版) . 北京:清華大學(xué)出版社, 2008 年 . [3] 劉志銘,高春燕 . 數(shù)據(jù)庫開發(fā)實(shí)例解析 VB. 北京:機(jī)械工業(yè)出版社, 1999年. [4] 龔沛曾 ,陸慰民 .VB 程序設(shè)計(jì)簡明教程(第二版) .北京:高等教育出版社, 2003年. [5]夏邦貴,劉凡馨.SQL Server數(shù)據(jù)庫開發(fā)經(jīng)典實(shí)例精解.北京:機(jī)器工業(yè)出版社,2006
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 金融工具之原生金融工具
- 藥品不良反應(yīng)及其監(jiān)測的意義課件
- 采煤工藝設(shè)計(jì)
- 一年級(jí)交通安全教育
- 賬戶體系與分類
- 藍(lán)莓酒營銷合作方案
- 菜單設(shè)計(jì)-菜單重要性和分類
- 天津某地產(chǎn)水晶城推廣案方案(PPT31頁)
- 食品安全事故流行病學(xué)調(diào)查規(guī)范
- 報(bào)關(guān)業(yè)務(wù)資料(精品)
- 學(xué)前班拼音測試題_幼兒讀物_幼兒教導(dǎo)_教導(dǎo)專區(qū)
- 食品安全問題分析
- 稅法小知識(shí):房屋贈(zèng)予稅郭治
- 解答-運(yùn)籌學(xué)-第一章-線性規(guī)劃及其單純形法習(xí)題
- 面顱創(chuàng)傷的CT表現(xiàn)-課件