vf学生成绩管理系统课程设计说明说.doc

上传人:laozhun 文档编号:2395107 上传时间:2023-02-17 格式:DOC 页数:36 大小:415KB
返回 下载 相关 举报
vf学生成绩管理系统课程设计说明说.doc_第1页
第1页 / 共36页
vf学生成绩管理系统课程设计说明说.doc_第2页
第2页 / 共36页
vf学生成绩管理系统课程设计说明说.doc_第3页
第3页 / 共36页
vf学生成绩管理系统课程设计说明说.doc_第4页
第4页 / 共36页
vf学生成绩管理系统课程设计说明说.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《vf学生成绩管理系统课程设计说明说.doc》由会员分享,可在线阅读,更多相关《vf学生成绩管理系统课程设计说明说.doc(36页珍藏版)》请在三一办公上搜索。

1、哈尔滨理工大学荣成校区 VF课程设计说明书 专业(年级、班)_ 设 计 人 _ 设计指导教师 二一二年七月十二日学生成绩管理系统摘 要学生成绩管理系统是针对学校的学生成绩管理进行计算机处理而开发的应用软件。该系统由系统维护、输入、查询、修改、输出和打印等子模块组成,功能基本满足一般高校的学生成绩管理。学校应用本系统后,可以有效的提高学生成绩的管理水平,而且减少出错率。本论文包括概述、功能需求分析及概要设计、数据库及系统模块设计、程序连编与系统维护等方面,较为系统地介绍了“学生成绩管理系统”课题开发的整个过程。本系统采用小型数据库管理系统中优秀的软件“Visual FoxPro 6.0”作为系统

2、开发工具,在对本校学生成绩管理方法进行充分分析和系统论证的基础上开发研制的,它不但能够满足学生成绩管理的基本要求,如“学生和教师的添加和删除、条件查询、基本项目统计和打印输出报表”等功能,而且具有程序设计合理、操作简单、运行可靠和保密性强等特点。关键词 学生成绩 数据库 Microsoft Visual FoxPro 6.0Student achievement management systemAbstractStudent achievement management system is developed for the management of student achievement

3、 in schools computer processing applications. The system maintained by the system, input, query, modify, output and print and other sub-modules, the basic functions to meet the general university student performance management. The application of the system, schools can effectively improve the level

4、 of student achievement management, and reduce the error rate.In this paper includes an overview of the program functional requirements analysis and preliminary design, database and system module design, build and system maintenance, and experience other aspects, a more systematic introduction to th

5、e subject of development of the whole process of student achievement management system.This system uses a small database management system, excellent software Visual FoxPro 6.0 as a system development tool, developed on the basis of full analysis and system demonstration on school student achievemen

6、t management methods, it is not only able to meet the management of student achievement requirements, such as students and teachers to add and delete query conditions, the basic project statistics and printout statements and other functions, and procedures reasonably designed, simple to operate, rel

7、iable operation and confidentiality features.Keywords student achievement, database, Microsoft Visual FoxPro 6.0目 录摘 要IAbstractII一、概述11.1开发背景11.2开发平台1二、功能需求分析及概要设计22.1需求分析22.1.1数据需求22.1.2功能需求22.2运行环境分析32.2.1硬件运行环境32.2.2软件运行环境32.3系统设计过程概要32.3.1求分析阶段32.3.2设计阶段42.3.3实施阶段42.3.4测试阶段42.3.5运行维护阶段4三、数据库及系统模

8、块设计53.1数据库设计53.1.1概念设计53.1.2关系设计73.2模块设计83.2.1主界面设计83.2.1登录页面设计83.2.2菜单模块设计83.2.3查询模块设计9四、程序连编12五、心得体会13致谢14参考文献15附录16一、概述1.1开发背景随着计算机软硬件技术日新月异、突飞猛进的发展,计算机已成为现代社会人们工作、生活、学习甚至娱乐不可或缺的工具。在我国,计算机的应用也已经渗透到社会的各个领域,不论是企业还是政府机关、事业单位,都正在或计划利用各种计算机应用系统以全面提高工作效率。但是,我们需要面对的现实状况是,在我国现有的企事业单位的日常管理工作中,自动化、信息化程度还不是

9、很高。很多单位仅满足于利用计算机进行日常公文处理或网上浏览,而作为二十一世纪信息时代的一个社会单元,如果没有现代化的管理理念和现代化的管理手段要想在全球化的市场竞争中占有一席之地是不可想象的。进入新世纪特别是成功“入世”以后,我国改革开放和经济发展的节奏进一步加快。经济全球化步伐的加快对信息化的要求越来越高,而教育作为推进经济发展的重要力量,合理、规范的对受教育者进行管理是十分重要的问题。学校学生成绩管理仅靠人工处理既费力又极易出错,不符合保证教育公平的基本前提。本系统采用现代化的信息管理手段来避免了上述的问题。系统安排了学生信息管理教师信息管理课程信息管理成绩信息管理等功能,并提供学生和教师

10、信息和学生成绩历史的查询功能。1.2开发平台选择微软平台作为主导,由于微软的高速度发展进步,越来越多的企业在规划内部网络时,首先想到的就是微软平台;另外,从技术角度来讲,微软平台上的应用无论是在开发上,还是在软件的部署上都非常容易,而且伴随着技术含量的提高,表现出越来越多的优越性。系统开发环境:操作系统:Windows XP开发工具: Visual FoxPro 6.0中文版数据库:SQL server 系统服务对象:一般学校的教务部(处) 二、功能需求分析及概要设计2.1需求分析本系统是针对普通学校学生成绩管理而设计的,我们在对目标使用群体进行调研、分析之后我们认为我们的使用者主要对系统有以

11、下要求:(1)要求系统提供学生信息和成绩信息的录入、修改、删除等功能,从而对考生的信息和成绩进行日常管理。(2)要求系统提供可以按学校、姓名和考号中的任何一种方式,对考生的成绩进行查询、统计。(3)退出系统应保留考生的历史信息,以备日后查询。(4)要求能够打印出学生成绩 我们认为本系统基本可以满足普通学校教务部门对学生成绩管理所提出的上述需求,并且可以尽可能的为教务部门准确、及时的反映学生成绩提供便利。2.1.1数据需求在调研过程中,用户提供了所需数据表。这些数据表包括:学生信息、班级信息、院系信息、课程、教师、成绩等。2.1.2功能需求信息录入录入以上数据表中的数据,还要求能进行修改。这些数

12、据包括:学生信息、班级信息、院系信息、课程、教师、成绩等。查询能查询学生基本信息、学生成绩。可以计算学生数据、统计学生中,及格的人数、不及格人数、平均成绩。打印 打印需要的学生的成绩表。2.2运行环境分析本系统是采用Visual FoxPro 6.0进行开发,故本系统的软硬件运行环境与Visual FoxPro 6.0相同。2.2.1硬件运行环境处理器:486处理器以上,推荐使用 Pentium 或更高档处理器的 PC 兼容机。 内存:16MB 以上的内存,推荐使用 24MB 以上的内存。 硬盘:典型安装需要 85MB 的硬盘空间,完全安装需要 90MB 的硬盘空间。2.2.2软件运行环境操作

13、系统:Windows 95/98(中文版),或 Windows NT4.0(中文版),或更高版本。不推荐使用Windows Vista及Windows 7,不确定Visual FoxPro 6.0在上述两个系统中的稳定性及兼容性。操作软件:Visual FoxPro 6.02.3系统设计过程概要学生信息管理系统是典型的信息管理系统 (MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。本学生成绩管理系统基本上能具体化、合理化的管理学生的成绩档案,用结构化的思维方式

14、去了解计算机的基本工作原理和高级程序设计语言。下面简单介绍下开发的一般过程。2.3.1求分析阶段开发数据库系统首先要明确用户的各项需求,以确定系统实现的目标和软件开发的构思。需求分析一般包括数据分析和功能分析。数据分析的结果是归纳出系统应该包括的数据,以便进行数据库设计:功能分析的目的是为应用程序设计提供依据。2.3.2设计阶段对系统开发进行总体规划,建立软件系统的结构。它包括数据库设计和系统功能模块设计。数据库数据就是将需求进行综合、归纳与抽象,形成一个统一的概念模型,并画出其ER模型图(实体-联系图,表示实体之间的联系),然后转化为某个数据库管理系统所支持的数据模型,设计出需要的数据结构。

15、系统功能模块设计就是设计每个模块的输入、输出以能完成的功能。2.3.3实施阶段用某个数据库管理系统来具体实现所做的设计方案,此阶段一般包含以下四部分。数据库设计 操作管理数据库里面的数据是系统的核心目标。菜单设计 用于组织应用程序的各项功能。界面设计 用于控制数据的输入和输出。这些界面是用户和数据库系统之间的接口,既要方便用户使用,还要清晰、直观地展示数据信息,给用户创造一个良好的工作环境。功能模块设计 用于完成具体的数据处理工作,如数据的录入、修改和编辑,信息的查询与统计等,一般通过控件的事件代码来实现。调试程序 当一个程序编写完成后,应该进行调试,找出程序中的各种错误。2.3.4测试阶段此

16、阶段的任务有以下几项。验证应用程序是否在不同条件下都能得到正确的结果。检查系统是否完全满足用户的需求,在功能上是否还有遗漏。检验在程序运行过程中对可能遇到的问题是否都有相应的解决措施,确保系统正式投入使用进的安全性和可靠性。2.3.5运行维护阶段系统通过测试后即可投入正式运行,并在运行过程中不断修改、调整和完善。三、数据库及系统模块设计3.1数据库设计3.1.1概念设计按照用户的观点来对数据和信息建模。从前一章需求分析中可以归纳出了4个实体,其分别为:学生、班级、系、教师。其属性以下进行说明。为方便学生信息的查找,学生的属性应该设有:学号、姓名、性别。所以在E-R图中学生实体应如图3-1所示图

17、3-1实体:学生被分配到不同的班级,因此,我们把班级的属性归纳为:班级编号、班级名称。(如图3-2)图3-2如上面分析,把系的属性设为系编号、系名称、系主任,如图3-3。把教师属性设为教师编号、教师姓名、性别、所属系,如图3-4图3-3图3-4课程的属性E-R图如图(6)所示图3-5综合上述内容,本系统的整体设计思路如图3-6图3-63.1.2关系设计图3-7图3-7向我们解释该系统各个要素之间的关系3.2模块设计3.2.1主界面设计在桌面双击成绩管理系统.exe,系统自动进入主界面,显示“欢迎使用学生成绩管理系统”下方两个按键分别为“登录”“退出”,单击登录,系统自动进入登录页面,单击退出系

18、统自动关闭。command1 登录 clickthisform .releasedo form E:froms登录界面.scxcommand2 退出 clickthisform.releaseclear event3.2.1登录页面设计输入用户名和密码时,系统自动打开学生成绩管理数据库,然后使用用户表,定位到用户表中的第一个记录,判断是否为合法用户,然后浏览用户表中的所有记录,判断输入的用户名称和用户密码是否存在。如果存在则进入主程序页面页面,否则输出对话框,提示用户名或密码不正确。代码见附录。3.2.2菜单模块设计菜单以分类分级别的形式来例举应用程序的主要功能,方便用户的使用。根据学生成绩管

19、理系统要实现的功能,应包含以下菜单。(1)查询:通过该菜单的子菜单来浏览数据库中各种信息,但是不能修改。(2)维护:通过该菜单的子菜单来添加、修改或者删除数据库中的信息。(3)统计:提供统计个人成绩、统计某门课程的成绩的功能。(4)打印:提供打印课程成绩的功能。向项目中添加一个菜单,名称为mainmenu。为各个子菜单设计命令。“个人信息” 子菜单项执行命令为:do form forms个人信息.scx “教师信息” 子菜单项执行命令为:do form forms教师信息.scx“课程信息”子菜单项执行命令为:do form forms课程信息.scx“学生成绩” 子菜单项执行命令为:do f

20、orm forms学生成绩.scx3.2.3查询模块设计在项目中新建一个表单,首先设置表单的数据环境,在FORM1窗口中单击鼠标右键,执行“数据环境”命令,添加表“学生”。向表单设计区域添加的控件属性设置如下表。控件名称属性属性值Txt性别controlsource“学生.性别”height20Left108maxlength2readonly.T.Top84width84nam e“Txt性别”Txt班级编号controlsource“学生.班级编号”height20Inputmask“#”Left108maxlength4readonly.T.Top132width120nam e“Txt

21、班级编号”Cmd第一条Top228Left12height25width36caption“/”name“Cmd第一条”Cmd上一条Top228Left48height25width36caption“”name“Cmd上一条”控件名称属性属性值Txt性别controlsource“学生.性别”height20Left108maxlength2readonly.T.Top84width84nam e“Txt性别”Txt班级编号controlsource“学生.班级编号”height20Inputmask“#”Left108maxlength4readonly.T.Top132width120n

22、am e“Txt班级编号”Cmd第一条Top228Left12height25width 36caption“/”name“Cmd第一条”Cmd上一条Top228Left48height25width 36caption“”name“Cmd下一条”Cmd最后Top228Left120height25width 36caption“/”name“Cmd最后”具体各模块设计代码参见附录四、程序连编把系统程序的各个分散部分连接成一个可执行文件或者可执行的应用程序的过程。操作:在项目管理器对话框的代码选项卡中,选择程序中的主程序:mainpro.mpg.单击连编按钮,弹出连编选项对话框。图4-1图4-

23、2选择如上图选项,单击确定按钮。就开始相应的程序连编。连编完成后程序就可以运行了。五、心得体会这两个星期的课程设计,可以说得是苦多于甜,但学到了很多很多的东西,同时不仅巩固了以前所学过的知识。我们认为要学好数据库管理系统这门课程,不仅要认真阅读课本知识,更重要的是要通过上机实践增强和巩固Visual FoxPro 6.0知识。在两个星期的课程设计。我们对Visual FoxPro 6.0有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践,我们也发现了好多不足之处,首先是,对SQL语句不够熟悉,通过学习也有所改进;再有对Visual FoxPro 6.

24、0的一些具体操作流程不太了解,还有对常用函数调用的正确使用不够熟悉,还有对SQL语句中经常出现的错误也不了解,通过实践,使我在这几个方面的认识有所提高。通过本次课程设计,我认到学好计算机要重视实践操作,不仅仅是数据库管理系统,还是其它的计算机知识都要重在实践,所以后在学习过程中,我会更加注视实践操作,让自己更好的学习计算机。致谢首先要感谢指导老师卞珊珊老师,本次课程设计从选题开始最后到完成可以说是离不开她的悉心指导,耐心教诲,而且她不仅给我作指导,还忙于其他同学的课程设计,工作很忙、很辛苦,但是丝毫没有影响到她的专业素养,卞老师的渊博知识和严谨务实的工作精神也使我受益非浅,所以非常敬佩和感谢老

25、师。其次要感谢的是班上的同学们,他不仅给了我们无私的帮助,并且他不拘一格的思路给予了我无尽的启迪。最后要感谢我们团队的全体成员,是我们两周以来的不懈努力最后才形成的这套系统和这套论文,这个过程中我们学到的东西将使我们终生受益。参考文献教育部考试中心.全国计算机等级考试Visual FoxPro数据库程序设计M.高等教育出版社,2010附录主程序do form 主界面read events登录界面登录:sele 用户locate for allt(thisform.Text1.value)=allt(用户名) if found()if allt(thisform.Text2.value)=all

26、t(密码)messagebox(登陆成功!,0+64,恭喜)do E:fromsmainmenu.mprthisform.releaseelsemessagebox(密码错误!请检查后重新输入!,0+64,错误)thisform.Text2.value=thisform.Text2.setfocusendifelsemessagebox(该用户不存在,请检查您的用户名!,0+64,错误)endif退出按钮quit确定按钮if select(学生)=0messagebox(数据表学生不存在,请检查后再试!,0+16,警告)elseselect 学生locate for allt(thisform

27、.Combo1.value)=allt(学号)if found()mm=recno() thisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.value=班级编号endifendifskipif eof()thisform.Cmd下一条.enabled=.F.thisform.Cmd上一条.enabled=.T.elseskip -1 if bof() thisform.Cmd上一条.enabled=.F.thisform.Cmd下一条.enabled=.T.elsethisform.Cmd下一条.enabled=.T.t

28、hisform.Cmd上一条.enabled=.T.endifendif第一条按钮GO TOP thisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.value=班级编号thisform.Combo1.value=学号mm=recno()thisform.Cmd上一条.enabled=.F.thisform.Cmd下一条.enabled =.T. 上一条按钮if !bof()skip -1thisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.value

29、=班级编号thisform.Combo1.value=学号mm=recno()elsethisform.Cmd上一条.enabled=.F.endifif eof()thisform.Cmd下一条.enabled=.F.else thisform.Cmd下一条.enabled=.T.endif下一条按钮if !eof()skip thisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.value=班级编号thisform.Combo1.value=学号mm=recno()elsethisform.Cmd下一条.enabled

30、=.F.endifif bof()thisform.Cmd上一条.enabled=.F.else thisform.Cmd上一条.enabled=.T.endif最后一条按钮go bottomthisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.value=班级编号thisform.Combo1.value=学号mm=recno()thisform.Cmd下一条.enabled=.F.thisform.Cmd上一条.enabled=.T.退出按钮thisform.release确定按钮if select(学生)=0mess

31、agebox(数据表学生不存在,请检查后再试!,0+16,警告)elseselect 学生locate for allt(thisform.Combo1.value)=allt(学号)if found()mm=recno() thisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.value=班级编号endifendifskipif eof()thisform.Cmd下一条.enabled=.F.thisform.Cmd上一条.enabled=.T.elseskip -2 if bof() thisform.Cmd上一条.e

32、nabled=.F.thisform.Cmd下一条.enabled=.T.elsethisform.Cmd下一条.enabled=.T.thisform.Cmd上一条.enabled=.T.endifendif第一条按钮GO TOP thisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.value=班级编号thisform.Combo1.value=学号mm=recno()thisform.Cmd上一条.enabled=.F.thisform.Cmd下一条.enabled =.T. 上一条按钮if !bof()skip -

33、1thisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.value=班级编号thisform.Combo1.value=学号mm=recno()elsethisform.Cmd上一条.enabled=.F.endifif eof()thisform.Cmd下一条.enabled=.F.else thisform.Cmd下一条.enabled=.T.endif下一条按钮if !bof()skip -1thisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.

34、value=班级编号thisform.Combo1.value=学号mm=recno()elsethisform.Cmd上一条.enabled=.F.endifif eof()thisform.Cmd下一条.enabled=.F.else thisform.Cmd下一条.enabled=.T.endif最后一条按钮go bottomthisform.Txt姓名.value=姓名thisform.Txt性别.value=性别thisform.Txt班级编号.value=班级编号thisform.Combo1.value=学号mm=recno()thisform.Cmd下一条.enabled=.F

35、.thisform.Cmd上一条.enabled=.T.退出按钮thisform.release确定按钮if select(教师)=0messagebox(数据表教师不存在,请检查后再试!,0+16,警告)elseselect 教师locate for allt(thisform.Combo1.value)=allt(教师编号)if found()Mm=recno() thisform.Txt教师姓名.value=教师姓名thisform.Txt性别.value=性别thisform.Txt所属系.value=所属系endifendifskipif eof()thisform.Cmd下一条.e

36、nabled=.F.thisform.Cmd上一条.enabled=.T.elseskip -2 if bof() thisform.Cmd上一条.enabled=.F.thisform.Cmd下一条.enabled=.T.elsethisform.Cmd下一条.enabled=.T.thisform.Cmd上一条.enabled=.T.endifendif第一条按钮if select(教师)=0messagebox(数据表教师不存在,请检查后再试!,0+16,警告)elseselect 教师locate for allt(thisform.Combo1.value)=allt(教师编号)if

37、 found()mm=recno() thisform.Txt教师姓名.value=教师姓名thisform.Txt性别.value=性别thisform.Txt所属系.value=所属系endifendifskipif eof()thisform.Cmd下一条.enabled=.F.thisform.Cmd上一条.enabled=.T.elseskip -2 if bof() thisform.Cmd上一条.enabled=.F.thisform.Cmd下一条.enabled=.T.elsethisform.Cmd下一条.enabled=.T.thisform.Cmd上一条.enabled=

38、.T.endifendif上一条按钮if !bof()skip -1thisform.Txt教师姓名.value=教师姓名thisform.Txt性别.value=性别thisform.Txt所属系.value=所属系thisform.Combo1.value=教师编号mm=recno()elsethisform.Cmd上一条.enabled=.F.endifif eof()thisform.Cmd下一条.enabled=.F.else thisform.Cmd下一条.enabled=.T.endif下一条按钮if !eof()skip thisform.Txt教师姓名.value=教师姓名t

39、hisform.Txt性别.value=性别thisform.Txt所属系.value=所属系thisform.Combo1.value=教师编号mm=recno()elsethisform.Cmd下一条.enabled=.F.endifif bof()thisform.Cmd上一条.enabled=.F.else thisform.Cmd上一条.enabled=.T.end if最后一条按钮go bottomthisform.Txt教师姓名.value=教师姓名thisform.Txt性别.value=性别thisform.Txt所属系.value=所属系thisform.Combo1.va

40、lue=教师编号mm=recno()thisform.Cmd下一条.enabled=.F.thisform.Cmd上一条.enabled=.T.退出按钮thisform.release确定按钮if select(课程)=0messagebox(数据表课程不存在,请检查后再试!,0+16,警告)elseselect 课程locate for allt(thisform.Combo1.value)=allt(课程名称)if found()mm=recno()thisform.Txt课程编号.value=课程编号thisform.Txt授课教师.value=授课教师thisform.Txt学分.va

41、lue=学分endifendifskipif eof()thisform.Cmd下一条.enabled=.F.thisform.Cmd上一条.enabled=.T.elseskip -2 if bof() thisform.Cmd上一条.enabled=.F.thisform.Cmd下一条.enabled=.T.elsethisform.Cmd下一条.enabled=.T.thisform.Cmd上一条.enabled=.T.endifendif第一条按钮GO TOP thisform.Txt课程编号.value=课程编号thisform.Txt授课教师.value=授课教师thisform.Txt学分.value=学分thisform.Combo1.value=课程名称mm=recno()thisform.Cmd上一条.enabled=.F.thisform.Cmd下一条.enabled =.T.上一条按钮if !bof()skip -1thisform.Txt课程编号.value=课程编号

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号