学生选课管理信息系统.docx
《学生选课管理信息系统.docx》由会员分享,可在线阅读,更多相关《学生选课管理信息系统.docx(24页珍藏版)》请在冰豆网上搜索。
![学生选课管理信息系统.docx](https://file1.bdocx.com/fileroot1/2023-3/31/13d982a7-0a08-4dd9-944c-38287a748270/13d982a7-0a08-4dd9-944c-38287a7482701.gif)
学生选课管理信息系统
摘要
学生选课管理系统是教学管理的重要组成部分,其开发主要包括后台、数据库的建立和维护以及前端应用程序的开发两个方面,前者要求建立起数据的一致性、完整性和安全性好的数据库,而对于后者则要求应用程序功能完备、易使用及界面友好等特点。
论文运用软件工程和面向对象技术对学生选课管理系统进行了建模与分析,在此基础上实现了学生选课管理的功能。
主要内容如下:
首先,对学生选课的工作流程进行描述和分析,分析其工作中存在的缺陷和不足,在此基础上得出理想的工作流程模式。
按照模块化设计思想,将流程各个阶段分开设计。
其次,对系统的设计过程中的一些技术难点和实现方法进行叙述。
其中包括权限分配、添加、删除、修改功能的实现,查询功能以及打印功能的实现等等
经过仔细分析,系统使用Microsoft公司的VisualFoxPro6.0来开发,利用其提供的各种面向对象的开发工具,快速建立系统应用原形,并对初始原型系统进行需求分析,然后通过不断修正和改进,最终形成一个用户满意的系统。
关键词:
选课、查询、管理、VisualFoxPro
第一章:
现行系统概述
现行系统运行状况简要介绍及存在的主要问题,说明选题的意义及必要性。
目录
第一章:
现行系统概述2
第二章:
系统分析2
2.1需求分析2
2.2可行性研究2
2.3信息系统规划2
2.4系统的开发方法的选择2
2.5组织结构与功能分析2
2.6业务流程分析2
2.7数据与数据流程分析2
2.8功能/数据分析2
2.9新系统逻辑方案的建立3
第三章系统设计3
3.1系统总体结构设计3
3.2数据结构与数据库设计3
3.3代码设计3
3.4输入/输出设计3
3.5模块功能与处理过程设计3
3.6网络系统方案设计3
3.7信息系统安全设计3
第四章:
结束语4
附录4
参考文献4
第二章系统分析
2.1需求分析
我校拟定建立一个基于VF的“选修课管理系统”,以改变原有的选修课教学管理方式,充分利用校园网环境为教师和学生提供方便。
“选修课管理信息系统”应提供如下服务:
1、允许教务人员输入下学期的预设课程
2、允许学生查看本学期的预设课程目录
3、允许教师查看开设课程的学生名单
4、允许学生查看选修课的成绩情况,包括查看某一学期或所有已学过的选修课成绩。
2.2可行性研究
通过对学校各项管理工作的调查,了解到目前学校是教务出负责对学生选修课信息进香直接的管理工作,具体的工作是对学生在校期间的选课、成绩等信息进行管理。
本系统开发的主要目的是对教务处的关于学生选课及成绩管理部分实现计算机管理。
本系统的开发目标确定为学校选修课信息系统的一个子系统,因此,目前流行的软硬件配置足以满足系统运行的需要。
此外,本系统的操作界面力求非常的简单,系统操作员不需要参加专业培训,只需要有一定的计算机操作能力就可以使用本系统。
所以,开发这样一个中小型的选修课信息管理系统是完全可行的。
具体分析如下:
(一)目标和方案的可行性
这次实验目标很明确,主要是设计、开发下一个简单的选修课管理信息系统,利用我们学过的管理信息系统的有关知识,以及大一学过的VF编程语言,开发的系统经过进一步完善之后可以应用于学校选修课的管理,在一定程度上提高管理效率。
(二)技术可行性
根据该系统目标来衡量所需的技术是否具备,一般可从硬软件的性能要求、环境条件、操作人员水平和数量等方面去考虑和分析。
考虑到系统实施的可行性,在软件方面选择了如今较流行的MicrosoftVisualStudio2008来进行开发管理平台的设计,使用VF编程方法。
在硬件方面,则选择空间较大,只要是PentiumⅣ系列及以上的计算机,内存在512M以上,硬盘在20G,都可以满足系统的开发需要。
当然,硬件的配置越高,系统的开发与运行会更流畅。
考虑到如今的家用或商用电脑硬件的整体配置水平,系统在硬件方面是可行的。
在软件方面,由于MicrosoftVisualStudio2008和VF编程方法两个都是非常成熟的开发工具,无论在安全性、可用性、可靠性方面都毫无置疑,因此软件方面是可行的。
另外,由于平时在老师的领导下已做过相关项目,我们已具备处理各种问题的基本能力,因此以我们现在的业务水平,是可以成功进行本次项目的开发的。
(三)经济的可行性
我们实验室拥有一套比较完善的软硬件设备,平时供我们上课实验使用,所以这次系统的开发不用在系统的购置、安装和调试方面花费过多的费用,只须负责设备的日常维护。
关于人员方面,我们通过一年多的学习,已经初步掌握了一定的技术、知识,不用外聘技术人员,节省了很大的开支。
另外,系统投入使用以后,学校可以更及时更准确的得到信息,可以对管理者的决策提供强有力的支持,改善学校形象,提高学校教务管理效率。
(四)操作的可行性
我们开发的系统操作比较简单,操作人员不需要懂得编程方面的知识,在前台的以这些简单的操作,就可以实现系统的控制。
2.3信息系统规划
在需求分析的基础上,我们提出了选修课管理系统的总体结构方案,并根据发展战略和总体结构方案,确定了系统的开发次序及时间安排。
因为时间有限,所以我们除了上课时间,也充分利用了课后时间,保证系统的完成进度。
以下表示出我们的规划进度:
1.系统分析阶段7天
2.系统设计阶段14天
3.系统实施阶段4天
4.系统的管理与评价6天
5.系统的安全与维护4天
2.4系统的开发方法的选择
我们选修课管理信息系统的开发采用的是结构化系统开发方法,按照用户至上的原则,机构化,模块化,自上而下的对整个系统进行分析设计。
本次实验的设计将整个开发过程分为五个阶段:
系统规划阶段、系统分析阶段(可行性分析、需求分)、系统设计阶段(总体设计、详细设计)、系统实施阶段、系统运行与维护阶段。
在系统调查和规划管理业务时,从最顶层的管理业务入手,逐步深入之基层;在系统的分析和系统设计阶段,从宏观整体考虑入手,先考虑系统的整体优化,再考虑局部系统的优化问题;在系统实施阶段,坚持自底向上地逐步实施,然后按照系统设计的结构,将模块一个个拼接起来进行调试,自底向上,逐步的完成整个系统。
2.5组织结构与功能分析
此套管理信息系统的开发是为了适应学校各层用户对选修课进行管理的需求,选修课管理信息系统应是一套通用性、实用性都比较强的软件系统,主要应包括管理员管理、教师录入和输出、学生选课和查询模块等功能。
具体为:
1、管理员管理模块
该模块主要是针对整体设置,
管理员可以使用系统维护功能:
对系统学生信息、教师信息、课程信息进行维护或者是对已毕业学校决定不予保存的学生选课信息进行删除等功能。
对于普通用户,只能使用查询功能,即:
对用户信息、课程信息进行查询。
2、教师录入和输出模块
该模块主要包括查询功能:
对该教师所教授课程的选课情况、授课地点、授课时间等信息进行查询;
上传成绩功能:
在学期末,教师将本课程的成绩信息上传到系统,以供学生查询;
3、学生选课和查询模块
该模块功能主要如下:
个人信息维护:
对个人信息进行修改
查询功能:
对课程信息、成绩信息等的查询
在线预选功能:
在线对要选修的课程进行预选
退选功能:
对已选课程在相应选课阶段可以进行退选
补选功能:
在最后阶段,由于学分不够等问题,可以补选课程,操作与预选基本相同。
2.6业务流程分析
通过详细调查我们深入了解了学校的选修课业务流程关系和具体进程,并根据学校的组织结构和功能结构绘制了业务流程图:
2.7数据与数据流程分析
在业务流程分析基础上我们建立了分层数据流图:
顶层数据流程图描述了系统的大体实现过程,如下图。
管理员控制着整个管理系统,使其满足学生与教师之间的信息交流与管理。
图2-1学生选课管理系统顶层数据流图
本系统功能级数据流图的一级分解如图2-2所示。
图2-2选课系统管理系统功能级数据流图一级分解
本系统功能级数据流图的二级分解的信息维护模块如图2-3所示。
信息维护模块指的是对学生的个人信息进行修改。
图2-3选课管理系统功能级数据流图二级分解(信息维护模块)
本系统功能级数据流图的二级分解的信息查询模块如图2-4所示。
信息查询模块指的是学生对选课过程中的相关信息的查询。
图2-4选课管理系统功能级数据流图二级分解(信息查询模块)
本系统功能级数据流图的二级分解的信息验证模块如图2-5所示。
信息验证模块指的是学生在登录系统时对个人信息的验证。
图2-5选课管理系统功能级数据流图二级分解(信息验证模块)
表2-4选课管理系统数据存储字典
2.8新系统逻辑方案的建立
通过对旧系统的分析和优化,得到新系统的逻辑方案。
适应学校对学生选修课信息进行强化管理的需求,学生选修课管理系统应是一套通用性、实用性都比较强的软件系统,主要应包括管理员管理、教师录入和输出、学生选课和查询模块等功能。
具体为:
1、管理员管理模块
该模块主要是针对整体设置,
管理员可以使用系统维护功能:
对系统学生信息、教师信息、课程信息进行维护或者是对已毕业学校决定不予保存的学生选课信息进行删除等功能。
管理员有登录、退出、新建用户、修改用户信息、修改用户密码和分配用户权限的功能。
第一次登陆本系统的用户需要注册并等待管理员赋予权限才可进行操作;高级管理员可以对其他用户的权限进行设置,获得权限才可以进行相应的操作。
对于普通用户,只能使用查询功能,即:
对用户信息、课程信息进行查询。
2、教师录入和输出模块
该模块主要包括查询功能:
对该教师所教授课程的选课情况、授课地点、授课时间等信息进行查询;
上传成绩功能:
在学期末,教师将本课程的成绩信息上传到系统,以供学生查询;
3、学生选课和查询模块
该模块功能主要如下:
个人信息维护:
对个人信息进行修改
查询功能:
对课程信息、成绩信息等的查询
在线预选功能:
在线对要选修的课程进行预选
退选功能:
对已选课程在相应选课阶段可以进行退选
补选功能:
在最后阶段,由于学分不够等问题,可以补选课程,操作与预选基本相同。
新系统的流程图
2.9系统功能图
2.9-1系统功能图
本系统主要包含三个主要模块:
教务人员信息处理模块、教师信息处理模块、学生信息处理模块。
随着软件的进一步深化,模块也随之细化,具体可参照系统功能图,如下图:
图系统功能图
2.11-2系统软件结构图
本系统的模块结构图如下:
图三大模块系统软件结构图
第三章系统设计
我们对本次系统设计部分的工作做了如下进度安排:
管理信息系统的计算机及其网络硬件、系统软件的选型(物理配置方案设计)、功能结构(总体设计)、数据库设计(数据库设计)、确定系统的编码(代码设计)、系统的输入输出的设计(输入输出的设计)。
3.1系统总体结构设计
即系统总体功能结构的确定(功能结构图、子系统与模块的划分和信息系统流程图设计)。
我们在分解-协调原则、模块化原则、自顶向下原则、抽象原则、明确性原则的指导下,完成了对学生选修课管理信息系统的设计。
我校的学生“选课”系统的数据流程图如下图所示。
这是一个简单、具有明显变换流特征的数据流程图。
首先登录到系统,输入密码,经过验证合格后,即可进行选课处理。
先查询相关课程信息,再进行选课登记,选课完成后,显示所选课程表。
3.2数据结构与数据库设计
㈠准备:
本系统涉及到的信息主要分为学生基本信息、成绩信息和课程信息。
因此,可设计三个数据库表,即学生基本信息表、学生成绩信息表和专业课程信息表。
㈡设计步骤:
数据库设计的步骤包括用户需求分析、概念结构设计、逻辑结构设计和物理结构设计四个阶段。
①用户需求分析就是对现实世界进行分析;我们在调查和分析用户(学生、教师)的业务活动和数据的使用情况,弄清所用数据(学生信息、课程信息、成绩信息)的种类、范围、数量以及它们在业务活动中交流的情况后,确定了用户对数据库系统的使用要求和各种约束条件等,形成用户需求规约。
②概念结构设计是根据对现实世界进行分析,将现实世界转换为概念世界。
即数据库的概念模型(实体联系E-R模型);
如下所示:
A:
标识实体:
对一个基本的选修课系统,最基本的实体必须包含有教师,学生,及所学习的课程。
B:
划分和确定关系:
教师和课程之间,存在“讲授”这个关系,是一个M:
N的关系;
学生和课程之间,存在“学习”这个关系,是一个L:
N的关系;
C:
确定属性
实体的属性:
教师(教师编号、教师姓名、职称);
学生(学号、姓名、性别);
课程(课程编号、课程名、学时、学分、教材名称);
联系的属性:
讲授(效果);
学习(成绩);
D:
画出E-R模型
性别
姓名
学号
职称
教师编号
教师姓名
教师
学生
L
M
L
M
效果
讲授
学习
成绩
N
N
课程
学分
教材名称
学时
课程名
课程编号
3.3代码设计
目前最常用的分类方法概括起来有:
线分类法、面分类法和混合分类法3种。
面分类法具有柔性好、面的增加、删除、修改都很容易、可实现按任意组配面的信息检索,对机器处理有良好的适应性的特点,基于此,我们采用的是面分类法。
(1)代码设计
代码按功能可分为顺序码、区间码和助忆码。
为适应计算机管理和课程规范管理,本系统在综合各个实体及其之间的关系的基础上,决定采用的是区间码编码方法。
(2输入/输出设计
在做系统的输入/输出设计时,我们选择了先进行系统的输出设计,之后再设计输入。
输出是系统产生的结果或提供的信息。
我们主要是基于以下考虑:
对于大多数用户来说,输出是系统开发目的和使用效果评价的标准。
尽管有些用户可能直接使用系统或从系统输入数据,但都要应用系统输出的信息,输出设计的目的正是为了正确及时地反映和组成用于生产和服务部门的有用信息,因此,系统设计过程与实施过程相反,是从输出设计到输入设计。
即先确定要得到哪些信息,再考虑为了得到这些信息,需要准备哪些原始资料作为输入。
(1)输出设计
本系统的输出设计根据用户的需求综合运用了多种输出设备、多种输出方式,并且输出内容完全满足用户的需要。
本系统的输出设备采用显示器、打印机,输出格式采用表格形式,输出介质采用U盘、普通白纸等。
本系统的输出主要包括学生选修课查询信息、教师授课情况查询、学生考试成绩查询、查询结果的打印等。
输出设计包括有以下几方面:
(1)输出内容的确定:
学生选修课信息、教师授课情况、学生成绩情况
(2)输出方式的选择:
表格
(3)输出格式的设计:
标准版
从对本学生选修课管理信息系统的试用情况反馈来看,本系统基本上达到了输出评价标准的要求:
能为用户提供及时、准确、全面的信息服务;便于阅读和理解,符合用户的习惯;充分考虑和利用了输出设备的功能;能为今后的发展预留一定的余地。
(2)输入设计
输入设备采用键盘、鼠标,由数据录入人员通过工作站录入,经检查、可靠性验证后存入磁记录介质。
这种方法成本低、速度快,使用于大量数据输入。
输入设计包括以下几方面:
(1)输入数据内容:
学生基本信息、教师基本信息、预设课程基本信息、学生成绩
(2)输入设备和介质:
管理员、教师、计算机
(3)输入格式的设计:
表格
(4)输入数据的校验。
从对本学生选修课管理信息系统的试用情况反馈来看,输入界面基本达到了以下要求:
明晰、美观、大方;便于填写,符合工作习惯;便于操作;有保证输入数据正确性的校验措施。
(三)界面设计
由于开发系统的一个重要原则就是界面的友好性,这样可以有利于用户的操作,使用户很容易上手,从而可以加快系统在企业中普遍使用,从而提高企业的运行效率。
本着这个目的,我们对界面的友好性、清晰、易学易用的原则,对系统进行了针对性设计。
(1)登录界面设计,包括用户名和密码的填写。
(2)主界面设计。
主界面设计分为三个区,管理员登陆、教师登录和学生登录。
(3)学生管理界面设计。
此界面主要功能是提供学生信息的变动功能,管理员对学校学生的信息进行具体的录入和减少,通过此界面和数据库相连,这一功能是选课学生查询,信息输出的基础,同时也可以修改选课学生的信息,这一功能是为了学生信息发生更改时等特殊情况设置的。
(4)查询界面设计。
系统提供查询功能。
(5)用户管理界面
3.4模块功能与处理过程设计
3.4.1基本信息管理模块的设计
基本信息管理模块的功能框图如下图所示。
每个功能单元的具体功能描述如下:
①添加新生信息:
以班级为单位,分单个添加和成批添加,进行学生基本信息(包括学号、姓名、性别、专业、班级)的录入。
其中单个添加提供数量较少的学生信息入库;成批添加可以从现存的学生信息EXCEL文件中成批录入到数据库中。
②修改学生信息:
修改学生的基本信息。
③删除学生信息:
当学生毕业后,从数据库中删除学生的基本信息,并同时删除学生的成绩信息。
支持整班删除学生的基本信息。
④查询基本信息:
可以以个人、班级、专业为单位查询学生的基本信息。
3.4.2查询模块的设计
查询模块的的功能框图如下图所示
图查询模块的功能框图
每个功能单元的具体功能描述如下:
1查询学生基本信息:
以个人为单位查询学生的基本信息。
2查询学生课程信息:
以专业为单位查询学生的课程信息。
3查询成绩信息:
以个人为单位显示各科考试成绩。
4查询成绩统计信息:
以班级或专业为单位查询班级或专业的单科平均成绩、及格率等信息。
3.5网络系统方案设计
本系统的系统物理配置方案设计综合考虑系统的吞吐量、系统的响应时间、系统的可靠性、地域范围、系统的处理方式以及数据库管理方式。
(1)计算机硬件选择
本系统采用的是客户机/服务器模式,数据的处理方式是集中式所以对服务器的性能要求比较高,而对客户端的性能要求则不高。
(2)计算机网络的选择
根据应用需求,本系统将开发成客户机/服务器结构的管理信息系统。
因此,选择计算机网络主要考虑企业内部局域网的需求。
WindowsXP性能优越、系统可靠、使用和管理简单,是中小型局域网上比较常用的一种操作系统。
因此,网络操作系统将使用流行的WindowsXP操作系统。
(3)数据库管理系统的选择
一个好的数据库管理传统对管理信息系统的应用有着举足轻重的重要影响。
所以,本系统在数据库管理系统的选择上主要考虑的方面为:
数据库的性能、数据库管理系统的系统平台、数据库管理系统的安全保密性、数据的类型。
因此选择了具有强大的数据组织功能的SQLServer2005。
3.6信息系统安全设计
(1)严格划分不同工作人员和各种信息资源、设备资源的使用权限;
(2)关键的信息传输采用端到端的专用加密工具,采用数字签名技术和第三方认证的控制措施。
(3)加强用户管理,防止非法侵入;
(4)定时备份,防止数据丢失。
第四章结束语
1、总结:
本次课程设计大体的流程是运用已学的知识,先对整个开发项目进行系统需求分析;然后对数据库的关系模型实体进行设计;在基本完成系统所有必须的功能后,进行数据测试,校正差错;最后就是对系统程序进行大概的漏洞和错误检测。
学生选课管理系统是学校信息管理系统的一个重要组成部分。
他为其他系统(如学校图书管理系统、学校档案管理系统、教学管理系统、总务后勤管理系统等)提供一个重要的补充和沟通学生与学校联系的桥梁,同时它也需要如教学管理系统提供课程设置数据等。
这些系统在具体应用中构成一个大系统,相互调用对方的数据。
由以上分析,我们可以充分认识到设计并开发一个学生选课管理系统的必要性和迫切性,本次设计和开发的学生选课管理系统符合学校学生信息管理的规定,满足了其对学校学生选课管理的需要,并达到操作过程中的直观,方便,实用,安全等要求。
系统采用模块化程序设计的方法,既便于系统功能的组合和修改,又便于未参与系统开发的技术维护人员补充和维护。
2、心得体会
通过这次课程设计,我们学到了很多关于信息系统方面的知识,也得到了很多,不仅将在书本中学到的知识运用到解决实际问题上,而且加强了自己的动手能力。
在设计的过程中发现整个系统原理比最初想象的都要复杂,不过也没有太大的技术难点,经过不断的试验研究,我们参考了不少资料,花了差不多两个星期才把系统完成。
设计出的系统基本具备需要的所有功能,实现证明数据也没有出错。
在这一过程中,我们熟练掌握了表单设计的过程,并了解了表单在软件系统设计中的功能,为系统开发打下了基础。
在完成系统设计、系统实施等的过程中,对以往老师在课堂上讲授的内容有了直观而具体的理解。
由于时间仓促,我们并没有对系统做进一步的完善,还存在不少欠缺和需要改善的地方,例如系统的选课退选模块、数据库数据信息维护功能块、主界面显示当前日期时间等功能。
期待有更多的机会让我们实践理论知识。
让我们更多的了解这方面的知识。
最后,要谢谢我们的指导老师张老师。
3、不足与收获
我们做的这个系统的主要不足存在于3个方面:
第一、性能测试方面。
系统做好以后需要很多方面的测试但是由于时间仓促、能力有限,所以只进行了部分测试。
第二、安全性能方面。
学生选课管理系统应该有一个很好的安全保密性能,登陆页面应该有验证码的输入功能,由于时间的关系本设计没有体现出来这个功能。
第三、数据库方面的信息欠缺。
数据库应该全部显示每个专业,每个年级、班级、以及个人的全方面的信息,但是本设计没有完整的把所有功能全部实现。
第四,界面不够美观、简洁。
尽管本管理系统存在着很多不足,但其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、安全性好等优点是本管理系统所必需的。
相信本选修课管理系统是一套学校在日常管理中必不可少的管理软件,通过开发这个系统,我掌握了的项本过程,了解了的基本知识巩固了我对VisualFoxPro6.0的学习,但在这次课程设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及团队协作的精神。
附录:
任务分工情况
㈠、课程设计进度安排:
(1)2013.4.1--2013.4.15
系统分析阶段
(2)2013.4.15--2013.4.22
系统设计阶段
(3)2013.4.22-2013.5.22
系统实施阶段
(4)说明:
由于课程设计时间调整,我们的进度随之调整,一方面把原有计划期缩短,另一方面将摘要、结束语等零散板块进行细化、拆分,融进三大板块的进度中,同时进行、协调共进、同时完工。
㈡、人员分工:
张燕--主要负责全体的设计管理,协调好每一个小组成员的工作。
参与课程设计的每一个方面,侧重系统设计部分;另外参与系统分析与系统实施的工作。
每一阶段的工作都要认真的进行设计和指导,与其他的成员相互合作。
具体工作:
1)数据流程图
2)功能分析图
3)数据字典
4)模块功能与处理过程设计
5)输出设计(主要指打印输出设计)
王世仁---主要负责系统分析方面。
搜集相关的资料,利用课本知识及其相关的知识对选修课管理信息系统进行深入的的分析和初步的设计。
具体工作:
1)需求分析、可行性研究
2)对原有系统的分析
3)新系统逻辑方案的建立
4)系统分析说明书的撰写
郝佳佳---主要负责系统设计方面。
搜集相关的资料,利用课本知识其相关的知识对选修课管理信息系统进行深入的的分析和具体、完全的设计。
具体工作:
1)基于VF的选修课管理信