周宇琳
(浙江大學(xué)控制系,浙江杭州 310058)
?
基于 Visual C++學(xué)生信息管理系統(tǒng)的開發(fā)
周宇琳
(浙江大學(xué)控制系,浙江杭州310058)
摘要隨著高校全員導(dǎo)師制的推行,需要開發(fā)一個(gè)信息管理系統(tǒng)以便對(duì)各類學(xué)生信息進(jìn)行有效的管理。本研究開發(fā)的系統(tǒng)包括后臺(tái)運(yùn)行的數(shù)據(jù)庫(kù)的建立與維護(hù),以及前臺(tái)運(yùn)行的應(yīng)用程序開發(fā)兩個(gè)方面。數(shù)據(jù)庫(kù)系統(tǒng)采用SQL 2000實(shí)現(xiàn),而前臺(tái)則采用Visual C++開發(fā)工具。本系統(tǒng)可以方便地查詢、修改、刪除、統(tǒng)計(jì)學(xué)生的基本信息、導(dǎo)師信息、課程開課信息、學(xué)生選課信息及相關(guān)成績(jī),實(shí)現(xiàn)了信息管理的規(guī)范化、數(shù)據(jù)的快速查詢與統(tǒng)計(jì),提高了管理效率。
關(guān)鍵詞信息管理系統(tǒng);數(shù)據(jù)庫(kù)設(shè)計(jì);數(shù)據(jù)庫(kù)鏈接;模塊設(shè)計(jì);VC++編程
隨著越來越多的高校推行全員導(dǎo)師制,即教師不僅僅只是上課、帶實(shí)驗(yàn)與課程設(shè)計(jì)等傳統(tǒng)教學(xué)環(huán)節(jié),而更多的是以學(xué)業(yè)導(dǎo)師的身份對(duì)學(xué)生開展學(xué)業(yè)指導(dǎo)、職業(yè)規(guī)劃等。這樣就給管理工作帶來很大的挑戰(zhàn),而有關(guān)學(xué)生的信息量也不斷增長(zhǎng)。面對(duì)如此海量的數(shù)據(jù),就需要搭建相應(yīng)的學(xué)生信息管理系統(tǒng)來協(xié)助管理人員進(jìn)行管理。
本論文以高校對(duì)學(xué)生的信息進(jìn)行管理為背景,通過對(duì)信息管理系統(tǒng)的研究與設(shè)計(jì),以及對(duì)系統(tǒng)開發(fā)的原理與方法進(jìn)行深入的了解和探索。本學(xué)生信息管理系統(tǒng)的開發(fā)流程包括:需求分析、系統(tǒng)分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、框架設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)及運(yùn)行調(diào)試等。該系統(tǒng)能夠?yàn)楣ぷ魅藛T提供相應(yīng)的學(xué)生信息以及實(shí)現(xiàn)快速、準(zhǔn)確的信息查找等功能。
設(shè)計(jì)開發(fā)一個(gè)學(xué)生信息的管理系統(tǒng),實(shí)現(xiàn)對(duì)學(xué)生信息進(jìn)行高效的管理,還可以彰顯出學(xué)校高效的現(xiàn)代化教育水平,而且能夠顯著地提高學(xué)校教師的工作效率,從而實(shí)現(xiàn)學(xué)生信息管理工作流程的系統(tǒng)化、科技化、自動(dòng)化和專業(yè)化。建立一個(gè)數(shù)據(jù)一致性強(qiáng)、完整性好、安全性高的數(shù)據(jù)庫(kù)是十分重要的,通過采用計(jì)算機(jī)軟件對(duì)學(xué)生的信息進(jìn)行查詢、修改、刪除、添加等一系列的操作,可以很大地提高管理工作效率,杜絕人工管理的各種缺點(diǎn)。
本學(xué)生管理系統(tǒng)是一種高效且使用非常方便的軟件。它是利用SQL建立相關(guān)數(shù)據(jù)庫(kù),并將采用VC++6.0平臺(tái)進(jìn)行項(xiàng)目開發(fā),同時(shí)數(shù)據(jù)庫(kù)建立在SQL Server 2005數(shù)據(jù)庫(kù)的基礎(chǔ)上實(shí)施操作,然后對(duì)初始的系統(tǒng)進(jìn)行迭代處理和數(shù)據(jù)修正,使得系統(tǒng)顯得更加完善。
1開發(fā)工具選擇
本系統(tǒng)包括前端和后臺(tái)兩個(gè)組成部分。其中,前端是數(shù)據(jù)庫(kù)系統(tǒng)的建立及其維護(hù)部分;后臺(tái)則為應(yīng)用程序的設(shè)計(jì)與開發(fā)。對(duì)于后者,需要建立起完整性強(qiáng)、數(shù)據(jù)一致性、數(shù)據(jù)安全性好的庫(kù);至于前者,則要求所開發(fā)的應(yīng)用程序具備功能完備和便于使用等要求。
Visual C++軟件具有結(jié)構(gòu)清晰、代碼可讀性好的特點(diǎn),并且融入了面向?qū)ο?、可視化、事件?qū)動(dòng)等軟件開發(fā)技術(shù),利用它可以較容易實(shí)現(xiàn)信息管理系統(tǒng)的可視化編程,并實(shí)現(xiàn)編制與查錯(cuò)。借助于更強(qiáng)大的ActiveX和Internet技術(shù),則可支持更多的數(shù)據(jù)庫(kù)組件選項(xiàng)、用戶界面元素,以及應(yīng)用程序體系結(jié)構(gòu)。
根據(jù)系統(tǒng)的功能需求,數(shù)據(jù)庫(kù)采用Microsoft SQL 2000構(gòu)建。它同時(shí)為Web網(wǎng)絡(luò)標(biāo)準(zhǔn)提供了相應(yīng)的支持,使用面廣,并為系統(tǒng)的管理和修改提供了相應(yīng)的工具。同時(shí)還具有操作簡(jiǎn)便,容易升級(jí),維護(hù)費(fèi)用低的特點(diǎn)。
本系統(tǒng)采用ODBC方法訪問數(shù)據(jù)庫(kù),使其具有查詢、添加、修改和刪除學(xué)生信息的功能。利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,先建立系統(tǒng)的應(yīng)用原型,然后再對(duì)初始的原型系統(tǒng)進(jìn)行迭代并進(jìn)行修正,直到形成可行的實(shí)施系統(tǒng)。
2任務(wù)及系統(tǒng)設(shè)計(jì)方案
以下是關(guān)于學(xué)生信息管理系統(tǒng)的一些基本使用要求:
(1)數(shù)據(jù)庫(kù)中應(yīng)包含相關(guān)一些重要的信息,如課程信息、導(dǎo)師信息和學(xué)生信息等等,因此需要分別建立這些信息的相應(yīng)模塊,從而實(shí)現(xiàn)數(shù)據(jù)的交互功能。
(2)實(shí)現(xiàn)信息和數(shù)據(jù)的查詢、刪除、瀏覽、修改、添加等項(xiàng)功能。
(3)實(shí)現(xiàn)系統(tǒng)的安全性,以及協(xié)調(diào)性和完整性。
當(dāng)用戶在添加學(xué)生的學(xué)號(hào)時(shí),需要保證學(xué)生學(xué)號(hào)不能重復(fù)。同樣,在類似課程號(hào)碼和導(dǎo)師號(hào)碼等,也是不能重復(fù)的。在選課信息中,課程號(hào)碼和學(xué)生學(xué)號(hào)的組合也是不能重復(fù)的。學(xué)生號(hào)碼和導(dǎo)師號(hào)碼也必須要保持一致。不能使用不同的數(shù)據(jù)類型,所以學(xué)生信息、選課信息、課程信息中的學(xué)生學(xué)號(hào)也要保持一致。
此外,學(xué)生信息表中的導(dǎo)師號(hào)碼,以及課程信息表中的導(dǎo)師號(hào)碼,都按規(guī)定必須使用導(dǎo)師表中已經(jīng)存在的號(hào)碼;而選課表中的課程號(hào)碼和學(xué)生號(hào)碼,也必須使用信息中存在的號(hào)碼,所以對(duì)數(shù)據(jù)進(jìn)行的操作,如刪除、修改、添加、查詢都是要進(jìn)行監(jiān)控的,并提示出錯(cuò)及處理意見。
根據(jù)以上進(jìn)行的需求的分析,本系統(tǒng)采用客戶端/服務(wù)器模式,即C/S結(jié)構(gòu)。該模式主要是系統(tǒng)的管理人員以及使用者在客戶端的數(shù)據(jù)庫(kù)上進(jìn)行各種相關(guān)的操作,操作的結(jié)果再由服務(wù)器端的數(shù)據(jù)庫(kù)發(fā)回給客戶端再顯示出來。本系統(tǒng)主要?jiǎng)澐譃橐韵挛鍌€(gè)子模塊:學(xué)生信息管理子模塊、導(dǎo)師信息管理子模塊、課程信息管理子模塊、選課信息管理子模塊和成績(jī)查詢管理子模塊。
3數(shù)據(jù)庫(kù)設(shè)計(jì)
3.1表對(duì)象的設(shè)計(jì)及生成情況
表1學(xué)生信息表——STUDENTS
表2 教師信息表——TEACHERS
表3 課程信息表——COURSES
表4 選課信息表——CHOICES
3.2建立表間關(guān)系
數(shù)據(jù)庫(kù)各表間的關(guān)系如圖1所示:
圖1 表間關(guān)系圖
本學(xué)生信息管理系統(tǒng)中的數(shù)據(jù)分成在圖1中的4個(gè)表。這樣的設(shè)計(jì)可以減少數(shù)據(jù)的冗余,同時(shí)在這些表與表之間,還可以建立關(guān)聯(lián)關(guān)系。例如:在選課表中的學(xué)生編號(hào)和課程編號(hào)對(duì)應(yīng)地在學(xué)生表中和課程表中存在;課程信息表中的任課教師也應(yīng)該在導(dǎo)師表中存在。
4模塊設(shè)計(jì)與分析
雖然主模塊的源文件代碼編寫是在最后,但主模塊的界面設(shè)計(jì)卻是整個(gè)信息管理系統(tǒng)程序界面中最先開始的。這是因?yàn)橹髂K的源代碼要使用到各個(gè)子模塊中的頭文件。同時(shí),其它各個(gè)子模塊的源代碼也要使用到主模塊中的頭文件。通過主模塊的全局對(duì)象theApp,各個(gè)模塊才能夠從數(shù)據(jù)庫(kù)中返回記錄集,如圖2所示。
其余學(xué)生信息管理子模塊、導(dǎo)師信息管理子模塊、課程信息管理子模塊、選課信息管理子模塊等,都主要包括瀏覽修改、查找、刪除等項(xiàng)功能,如圖3-6所示。
圖2 主模塊
圖3 學(xué)生信息管理子模塊
圖4 導(dǎo)師信息管理子模塊
圖5 課程信息管理子模塊
圖6 選課信息管理子模塊
成績(jī)查詢模塊是面向工作人員使用的,是根據(jù)某一特定對(duì)象的成績(jī)查詢與統(tǒng)計(jì)功能。特定對(duì)象可以是某個(gè)學(xué)生,或者是某一門課程。在成績(jī)查詢模塊中使用了ActiveX控件中的ADO Data Control(該控件用于和數(shù)據(jù)庫(kù)相連接)和DataGrid Control(把ADO Data Control控件所獲得的記錄來作為數(shù)據(jù)源,并實(shí)現(xiàn)了信息的顯示)。本系統(tǒng)中使用了兩個(gè)ADO Data Control控件,通過OLE DB的數(shù)據(jù)庫(kù)訪問方式從數(shù)據(jù)庫(kù)中獲得信息,并將其屬性的可見性取消,如圖7所示。
圖7 成績(jī)查詢
5結(jié)語(yǔ)
上述設(shè)計(jì)開發(fā)的基于Visual C ++的學(xué)生信息管理系統(tǒng),已應(yīng)用于實(shí)際管理工作中,實(shí)現(xiàn)了對(duì)學(xué)生信息、導(dǎo)師信息、課程信息、選課信息及其成績(jī)的管理,提高了管理效率。
參考文獻(xiàn)
1周龍鑲.數(shù)據(jù)庫(kù)管理系統(tǒng)實(shí)現(xiàn)技術(shù)[M]. 中國(guó)地質(zhì)大學(xué)出版社,1990
2潘愛民.Visual C ++技術(shù)內(nèi)幕(第四版)[M].清華大學(xué)出版社,1998
3李昭原.數(shù)據(jù)庫(kù)技術(shù)新發(fā)展[M]. 清華大學(xué)出版社,1997
4宋金珂,高立華,張迎新. VC++程序設(shè)計(jì)基礎(chǔ)教程[M]. 清華大學(xué)出版, 2005
5張莉,王強(qiáng),趙文等. SQL Server數(shù)據(jù)庫(kù)原理及應(yīng)用教程[M]. 清華大學(xué)出版社,2002
6張紅軍.Visual C++編程詳解[M]. 科學(xué)出版社,2002
7周之英.面向?qū)ο笙到y(tǒng)分析與設(shè)計(jì)[M]. 清華大學(xué)出版,2000
(責(zé)任編輯:張輝)
Development of a Student Information Management System based on Visual C++
ZHOU Yu-lin
(Zhejiang University, Hangzhou 310058, China)
Abstract:With the implementation of tutor system in colleges and universities, an information management system needs to be developed to effectively manage different student information. This essay discusses the development process of this system which includes the establishment and maintenance of the background database by using SQL 2000, as well as the development of the front-end application by using Visual ++. Through this system, it is convenient to search, modify, delete and count the information of students, tutors, course-setting, course selection and course score, as a result, information management is standardized, quick data inquiry and statistics are achieved, and management efficiency has been improved.
Key words:information management system; database designing; database linking; module design; VC++ programming
中圖分類號(hào)TP319
文獻(xiàn)標(biāo)志碼A
文章編號(hào)1671-8100(2016)01-0038-04
作者簡(jiǎn)介:周宇琳,湖北武漢人,浙江大學(xué)控制系學(xué)習(xí),主要從事智能控制、軟件開發(fā)等方面的研究。
收稿日期:2015-08-11