摘 要:隨著課程改革的不斷深入,學校規模不斷擴大、課程項目不斷增多,為了解決學生選課管理上的復雜的人工操作,減輕重復工作,故設計了選課系統。學校規模的擴大使得學校對每年新生入學、畢業生離校及本校各種分流機制造成的學生信息產生變動,如學籍變動、個人信息修改。為了適應課程的改革,學校在每個學期都要開設一定的課程提供給學生,讓學生根據自己的情況來選擇,根據學生選擇結果給出課程表。本校根據教學實際,為了使教師有效地管理學生信息,設計學生信息管理系統,由此形成學生成績管理系統,本文就此設計思路進行闡述。
關鍵詞:選課系統 學生信息管理系統 數據流圖 DFD圖 E-R圖 SC圖 IPO圖 Delphi軟件
隨著學校規模的不斷擴大,專業、班級、學生的數量急劇增加,有關學生選課的各種信息量也成倍增長,而目前許多高校的學生選課管理仍停留在復雜的人工操作上,重復工作較多,工作量大,效率低,因此,迫切需要開發基于互聯網的課程信息管理系統來提高管理工作的效率。基于互聯網的學生選課管理系統,在學生選課的規范管理、科學統計和快速查詢方面具有較大的實用意義。它提高了信息的開放性,大大地改善了學生、教師對其最新信息查詢的準確性。
一、選課系統的任務概述
1. 目標
選課系統開發的目標是實現學生選課信息關系的系統化、規范化和自動化。
2. 系統技術
學生選課系統要求具有信息處理的開發性,方便教師上傳學生成績、學生上網選課和查詢選課信息及成績等,因此本系統設計為基于WWW的網絡數據庫應用系統,使用ASP腳本以Access為數據庫的開發技術,運行在支持ASP的服務器上。
3. 基本設計概念和處理流程
采用基于SQL Server的分布式數據庫管理系統。三層結構是目前用得最多的,這種結構比傳統的C/S結構增加了一個應用程序服務器,應用程序服務器包括了統一的界面、業務規則和數據處理邏輯等等,這樣客戶端程序就可以做得比較小,也就是常說的瘦客戶。更由于業務規則和數據處理邏輯的集中在服務器上統一管理,客戶端無須進行復雜的計算,也不會因為錯誤的操作而影響到其他的用戶,所以可靠性、穩定性和效率都比較好。(其結構如圖)

4. 用戶的特點
為保證系統安全高效地運行,本系統把用戶劃分為3類:教務處、教師和學生。不同的用戶在系統中的作用和權限也有所不同,所以它所需要完成的功能也就不同。
(1)教務處可以完成本系統所有的功能
學生信息管理:除學生基本信息外,還可管理學生所選課程、成績等。
教師信息管理:包括教師個人的基本情況和任課情況。
項目及班數的設定:根據學校教務處所排課進行班級數及人數的統計,然后根據統計結果進行項目及班數的設定。
排課:根據上一步分班情況安排任課教師。
報表生成及輸出:生成教師擔任課程分班表、按項目生成學生成績表、按學生行政班生成成績表及所有報表的輸出。
(2)教師在本系統的功能
查詢學生選課情況、自己任課情況、獲取自己所擔任課程分班表、錄入及修改成績等。
(3)學生在本系統的功能
查詢本人信息、教師任課信息、選課、選課信息查詢、成績查詢。
二、需求規定
(一)對功能的規定
1. 可實現學生選課注冊。
2. 方便實現學生選課信息查詢。
3. 可對學生成績檔案進行管理,成績表單生成簡便。
4. 安全有效的用戶區分,管理。
5. 檔案數據的高安全性,保密性。
6. 有幫助文檔
(二)對性能的規定
使用穩定,操作性能好,操作方法易于掌握,系統的安全性強。
三、設計思想
用戶的需求具體表現在對各種信息的提供、編輯、處理及查詢統計上。這就要求數據庫結構能充分滿足各種信息的輸入、處理和輸出。通過分析學生選課管理系統的現實需求,學生選課管理系統各環節的基本數據及數據處理流程,在與管理人員溝通、交流與探討的基礎上,得到以下學生選課系統的數據流程圖。
(一)數據庫的設計
通過對學生選課管理系統工作內容和相關數據流程分析,根據學生選課管理系統的需要,就可以設計出能滿足用戶需求的各種實體,以及它們之間的關系,由此得到數據庫所支持的數據模型,即數據庫的邏輯結構,具體情況如下:
1. 學生信息表
開學時將教務處提供的學生信息庫按系統的要求修改庫結構并導入Access數據庫中,應包括如下信息:姓名、學號、院系、班級、性別、所選課程、任課教師、備注等。
2. 教師信息表
包括教師姓名、教師代碼、性別、年齡、職稱、主要教授課程、兼任課程等。
3. 課程信息
包括課程目錄、課程、課程代碼、教學內容、任務與目的、考試方法、要求等。
4. 課程表
包括課程名稱、課程編號、任課教師、課程學分、上課時間。
5. 成績單列表
包括學生姓名、學號、院系、班級、課程、任課教師、成績。
(二)系統功能特點
1. 內容全面 系統全面覆蓋了體育課信息,可為學校、教師和學生提供全面準確的信息。
2. 層次分明 系統采用模塊化程序設計結構。各模塊之間既相互獨立,又具有一定的聯系,各模塊可獨立編制、調試、查錯、修改和執行,結構嚴謹,便于擴展和維護。
四、數據庫概念設計
根據以上數據流圖導出數據庫所需數據項和數據結構。
學生:學號、姓名、性別、生日、所在院系、所在班級。
課程:課程號、課程名、講師、上課時間、地點、課程簡介。
選課結果:記錄號、選課學生、所選課程。
學籍變更記錄:記錄號、變更情況、記錄時間、詳細描述。
1. 數據庫邏輯結構設計
設計五個基本表:學生信息表、課程信息表、選課結果表、獎懲信息表、教師信息表。其中教師信息表是外部表,不列出。由于使用打開系統的不只是教務人員,每個學生都要登錄到選課系統進行課程的選擇,所以需要對不同的登錄人員進行密碼的認證和權限的限制,防止越權行為,用戶名、密碼、權限保存在一個表中。分別設計如下表:(具體內容略)
USER-PASS用戶密碼信息表
COURSE課程信息表
COURSE-SELECT選課結果表
STUDENT學生個人信息表
獎懲記錄信息表
2. 概要設計

4. 選課模塊詳細設計說明書
功能:接受學生選課信息,刷新學生課程表。
界面:調用添加、刪除模塊,打印課表模塊。
設計感想
通過這次實踐,我對Delphi有了全新的認識。Delphi可以讓你用最少的程序量來得到最高的開發效率,從而迅速地開發Windows的應用程序。開發者可按照自己的喜好及用戶要求,隨心所欲地安排窗口的外觀。Delphi是以面向對象的方式設計程序代碼的,有著面向對象的四大特征:封裝性、可維護性、繼承性和多態性。
當然,這個系統還有些地方需要修改和完善,我將在以后的時間里逐步學習改進。
參考文獻:
[1][美]Grady Booch,James Rumbaugh,Ivar Jacobson,UML用戶指南.機械工業出版社,2001年8月.
[2]Microsoft,MSDN.
[3]Microsoft,SQL Server 2000聯機手冊.
[4]Roger S. Pressman.軟件工程——實踐者的研究方法.機械工業出版社,1997.
[5]IPL. Software Testing and Software Development Lifecycles. IPL,1996.
[6]Karl E. Wiegers.軟件需求.機械工業出版社,1999.
[7]張海藩.軟件工程導論.清華大學出版社.