《管理信息系统课程设计大学学校教学管理系统设计与开发.doc》由会员分享,可在线阅读,更多相关《管理信息系统课程设计大学学校教学管理系统设计与开发.doc(36页珍藏版)》请在三一办公上搜索。
1、目录1 前言11.1 作业背景11.2 选题说明11.2.1 基本思路11.2.2 作业目标11.3 工作业绩21.3.1 个人主要工作21.3.2 主要收获21.3.3 自我评定21.3.4 小组成员任务分工情况22 系统规划32.1项目背景32.2系统分析32.2.1需求分析32.2.2系统可行性分析32.3系统设计思想43 系统分析53.1业务流程图53.1.1学籍管理业务流程图53.1.2成绩管理业务流程图63.2数据流程图73.2.1学籍管理数据流程图73.4.数据字典73.4.1学生学籍信息数据字典73.4.2学生成绩管理数据字典104 系统设计134.1总体设计134.1.1系统
2、总体功能结构图134.1.2子系统功能结构图144.2详细设计164.2.1代码设计164.2.2输出设计174.2.3输入设计184.2.4数据库设计195 系统实施225.1 欢迎界面设计225.2 登录界面设计235.3 修改表单设计255.4 删除表单设计295.5 个人信息查询表单设计305.6 成绩查询表单设计315.7 选课表单设计315.8 数据添加表单设计325.9 总表单运行32结束语33参考文献341 前言1.1 作业背景课程作业的具体要求如下:用信息系统开发工具(例如PowerBuilder、Delphi、VB、VFP等)开发一个实用的教学管理信息系统。(1) 根据课程
3、设计的题目进行分工,系统规划、系统分析、系统设计各一名同学、系统实施两人完成。 (2)根据时间合理安排时间,按照系统开发方法,进行运作。(3)根据具体要求在开发各环节中编写相关的技术文档,最后要求提交详细的课程实践报告。(4)开发出可以运行的管理信息系统,通过上机检查。1.2 选题说明项目背景研究课题题目:沈阳理工大学学校教学管理系统设计与开发。1.2.1 基本思路首先对项目背景进行研究进而从经济、技术和管理三个方面对项目进行可行性分析。得出结论之后,对沈阳理工大学进系统分析,得到业务流程图、数据流程图、数据字典。根据系统分析阶段的数据流程图得到模块结构图。最后根据系统设计的内容进行程序设计并
4、运行系统。1.2.2 作业目标通过对管理信息系统的设计和开发,灵活运用系统设计、系统分析、系统实施步骤及方法,掌握业务流程图、数据流程图、数据字典。能够熟练使用模块设计方法、数据库设计方法、代码设计方法、输入输出设计方法。做出系统并能顺利运行。1.3 工作业绩1.3.1 个人主要工作根据系统总体功能结构图、子系统功能结构图和数据字典,运用代码设计、输出设计、数据库设计等方法完成系统实施。1.3.2 主要收获这次课程设计以小组形式进行,我们充分发挥了每个成员的长处,大家互相帮助,一起努力。我是进行系统实施这部分,主要根据教材及实验指导书进行。在对教学系统了解之后,进行数据库设计。这部分主要运用V
5、F,这对我来说很有难度,这时组员互相帮助,共同努力,终于设计成功,这大大争强了我们集体观念。1.3.3 自我评定 优 良 中 及格 不及格1.3.4 小组成员任务分工情况2 系统规划 2.1项目背景随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。当前,我校的教学管理主要是半手工方式,如依靠word,excel等办公软件完成教学计划和教学信息,工作效率慢,教师工作量大,不利于教学质量的提升。鉴于这种现状,开发良好的教学管理系统十分必要,通过新系统对信息的快速处理,对教学基础工作的大力支持,我校的教学水平才能更上一个档次
6、。2.2系统分析2.2.1需求分析随着我校的发展,师资规模的越来越大,与日俱增的生源对教学管理的效率和准确性有了更大的要求,比较陈旧的教学管理系统已经无法满足当下教学发展的需要。面对大量的教育信息处理,复杂的教学活动安排,仅仅靠人工处理是很难有满意的效率。2.2.2系统可行性分析1.系统要达到的目标利用计算机对教学信息调度管理,从微观上处理教务中各个环节的,通过系统掌握教务发展的状态,从而提高我校教学活动的效率。2.可行性分析目的:可行性研究的目的是用最小的代价在最短的时间内确定能否解决问题。(1)经济上可行性:在设备方面,近几年来,计算机已经普遍存在于各个领域中,它的价格低廉,性能强大。而且
7、,本系统所需要的硬件和软件环境可以使用学校现有的资源,系统开发成本较低。(2)技术上可行性:近几年,计算机的普及使用,使得电脑的性能不断提升,无论是计算机的内外存容量、联网能力、主频速度等方面都可以满足管理系统数据处理的要求。特别是通过使用Visual FoxPro6.0作为系统开发的开发环境,更使得此系统在技术上有了强有力的支持。(3)管理上可行性本系统的开发可以为学校的教学发展、领导决策等方面给予很大的方便,会给学校带来可观的前景益。所以受到了各方面的支持。通过以上的分析和研究,可以得出可行性研究的结论:立即开发。2.3系统设计思想1利用现有的硬件和软件设施,良好的管理系统开发方案,大大提
8、高我校在学生信息处理、成绩录入、课程安排等基础工作的效率和合理性。2本系统满足教学管理的需要,教师可以比较方便的对学生信息进行录入、查询、更新等。同时对学生信息的记录储存。3.系统具备数据库维护功能,可以及时的对所需要的信息进行数据添加,删除,修改等操作。3 系统分析3.1业务流程图校长审批3.1.1学籍管理业务流程图学生依据专业和录取总分分班录取学生表招生办新生情况表新生填写学生登记表班级分配表审查学生登记表学籍汇总表学生注册表学生学籍档案学生学籍变动处理学生成绩档案图3.13.1.2成绩管理业务流程图教师学生根据选课根据课程学分学生成绩档案综合成绩表提供教务处学生选课表课程安排表填写成绩单
9、递交教务处成绩登记、统计汇总补考通知书学生登录教学网查询不及格处理查询图3.2 3.2数据流程图3.2.1学籍管理数据流程图 图3.33.4.数据字典3.4.1学生学籍信息数据字典1数据流的描述数据流编号:F01数据流名称:新生信息 简述:管理员在招生办获得的新生信息数据流来源:招生办数据流去向:登记新生学籍信息模块数据项组成:姓名+性别+年龄+身份证号+籍贯+生源地+政治面貌+学习经历 数据流量:约2000次/天 高峰流量:约2500次/天数据流编号:F02数据流名称:学生信息表 简述:登记新生信息后获得的学生信息表数据流来源:登记学生信息数据流去向:统计学生信息数据项组成:姓名+性别+年龄
10、+身份证号+籍贯+生源地+政治面貌+学习经历 数据流量:约2000次天 高峰流量:约3000次天数据流编号:F03数据流名称:信息汇总表 简述:统计新生信息后的信息汇总表数据流来源:统计学生信息数据流去向:教务处数据项组成:姓名+性别+年龄+身份证号+籍贯+生源地+政治面貌+学习经历 数据流量:约2000次天 高峰流量:约3000次天数据流编号:F51数据流名称:学号和密码 简述:教务处管理员通过输入用户名和密码对对学生信息(学生学籍、成绩、异动)的添加、删除、修改、查询、统计等操作。数据流来源:学生数据流去向:查询学籍信息数据项组成:学生自己的十位学号和密码 数据流量:约2000次天 高峰流
11、量:约3000次天数据流编号:F52数据流名称:正确的学籍信息 简述:学生输入学号和密码可以查询正确的学籍信息数据流来源:学生数据流去向:查询学籍信息数据项组成:学生自己的十位学号和密码 数据流量:约2000次天 高峰流量:约3000次天数据流编号:F06数据流名称:学生申请表 简述:学生查询学籍信息后如需修改的应填写学生修改申请表数据流来源:学生申请表填写数据流去向:教务处数据项组成:学生学籍信息及需校正的信息 数据流量:约100次天 高峰流量:约150次天2处理逻辑的描述处理逻辑编号:P-01处理逻辑名称:登记新生信息 简述:将新生信息制成学生信息表输入的数据流:新生信息 处理描述:由管理
12、员将新生信息录制成学生信息表输出的数据流:学生信息表 处理频率:2000次/天处理逻辑编号:P-02处理逻辑名称:统计学生信息 简述:对学生的成绩进行管理输入的数据流:学生成绩信息 处理描述:对学生的成绩进行管理,将录入的成绩进行修改,统计和分析输出的数据流:留退学生成绩 处理频率:30次/天 3 数据存储的描述数据存储编号:D-01数据存储名称:学籍档案 简述:存储学生学籍的档案数据存储组成:姓名+性别+年龄+身份证号+籍贯+生源地+政治面貌+学习经历 关键字:学号相关联的处理:P-01+P-02+P-044 外部实体的描述外部实体编号:S01 实体名称:招生办 简述:负责提供新生信息的部门
13、输出的数据流:新生信息外部实体编号:S02 实体名称:学生 简述:根据学校提供的学号和密码查询学籍信息输出的数据流:学号和密码3.4.2学生成绩管理数据字典1数据流的描述数据流编号:F01数据流名称:学号和密码 简述:学生输入学号和密码对课程表进行查询数据流来源:学生数据流去向:查询课程表数据项组成:十位学生学号+密码 数据流量:约2000次/天 高峰流量:约2500次/天数据流编号:F02数据流名称:选课表 简述:学生需根据选课表进行网上选课数据流来源:课程表查询数据流去向:选课上交数据项组成:学生学号+姓名+课程表 数据流量:约2000次/天 高峰流量:约2500次/天数据流编号:F03数
14、据流名称:新的课程表 简述:学生选课之后上交形成的新课程表数据流来源:选课上交数据流去向:教务处数据项组成:学生学号+姓名+新的课程表 数据流量:约2000次/天 高峰流量:约2500次/天2处理逻辑的描述处理逻辑编号:P-01处理逻辑名称:查询课程表 简述:学生根据查询出来的课程表选课输入的数据流:学号和密码 处理描述:学生通过将密码和学号输入后查询自己的课程表输出的数据流:选课表 处理频率:3000次/天处理逻辑编号:P-02处理逻辑名称:选课上交 简述:学生选课完成之后提交输入的数据流:选课表 处理描述:学生根据选课表选课后,将选课信息上交给教务处输出的数据流:新的课程表 处理频率:30
15、00次/天 处理逻辑编号:P-03处理逻辑名称:登成绩 简述:教师将学生成绩登入教学网输入的数据流:学生成绩表 处理描述:教师根据教师根据学生成绩表将学生成绩登入教学网,并将登入 后的成绩进行汇总,制成成绩汇总表输出的数据流:成绩汇总表 处理频率:3000次/天 数据存储编号:D-02数据存储名称:成绩文档 简述:存储学生成绩的文档数据存储组成:学生姓名+学号+所学课程+课程教师+所学科目成绩 关键字:学号相关联的处理:P-044 系统设计4.1总体设计4.1.1系统总体功能结构图根据企业数据流程图可绘制的系统功能结构图如图4.1所示。学生信息管理学生选课管理学生成绩管理学生异动管理教学管理系
16、统图4.1教学管理系统模块结构图4.1.2子系统功能结构图学生信息管理学生信息添加学生信息修改学生信息删除学生信息统计学生信息查询教务处管理图4.2学生信息管理功能结构图学生选课管理选课情况添加选课情况修改选课情况删除选课情况统计选课情况查询图4.3学生选课管理功能结构图学生成绩管理学生成绩添加学生成绩查询学生成绩修改学生成绩统计学生成绩打印学生查询成绩教务处查询任课教师成绩录入图4.4学生成绩管理功能结构图学生异动管理添加修改删除统计查询图4.5学生异动管理功能结构图4.2详细设计4.2.1代码设计(1)学生学号代码设计学号代码采用由十位整数组成的层次码,设计方案如图4.6所示。年级号学院号
17、专业号0908020401班级号学生在班级中学号图4.6 学生学号代码设计方案(2)课程号代码设计将课程的代码设计成有八位整数组成的顺序码,设计方案如图4.7所示。XXXXXXXX顺序号图4.7 课程编号代码设计方案4.2.2输出设计学生信息输出设计如图4.8所示个人信息首记录学号上条记录姓名下条记录末记录性别保存民族退出出生日期图4.8学生信息输出界面4.2.3输入设计学生信息查询登录输入界面如图4.9所示登录系统用户名密码确定取消退出图4.9学生信息查询输入界面4.2.4数据库设计1.概念结构设计:教学管理信息系统概念结构设计E-R图如图4.10所示学籍档案奖惩信息自然信息社会实践注册学号
18、出生日期 11姓名学生民族性别包含班级班级代码班级名称成绩选课课程授课课程号课程名教师教师编号教师姓名n n nm1mmn图4.10 E-R图2.逻辑结构设计根据将E-R模型转换成关系模型的原则,可将其转换为如下关系数据库(注:有下划线的属性为主键)班级(班级代码,班级名称)学生(学号,姓名,性别,民族,出生日期)教师(教师编号,教师姓名)课程(课程号,课程名)选课(课程号,教师编码,学号,课程名,教师姓名,学生姓名)成绩(课程号,学号,课程名,学生姓名)3物理结构设计 各子系统所用表如下: 表4.2 学生信息表字段名称字段说明类型宽度小数位数xh学号字符型10xm姓名字符型8xb性别字符型2
19、mz民族字符型6csrq出生日期日期型8表4.3 学生选课表字段名称字段说明类型宽度小数位数xh学号字符型10xm姓名字符型8kch课程号字符型8kcm课程名字符型16jsbh教师编号字符型10jsxm教师姓名字符型8表4.4 学生成绩表字段名称字段说明类型宽度小数位数xh学号字符型10xm姓名字符型8kch课程号字符型8kcm课程名字符型16cj成绩数值型515 系统实施5.1 欢迎界面设计新建一个表单,命名为“欢迎界面”。把表单Caption属性设置为“欢迎界面”;在“欢迎界面”表单上放置相应的控件,1个标签Label,将Label1的AutoCenter属性为.t.真;将Label1的c
20、aption属性设为“欢迎进入教学管理信息系统”,同时修改字体和字号。在表单的任意位置添加一个timer控件,时间间隔属性设为100,表单如图5.1所示。 图5.1具体代码如下:(1)timer1的timer事件代码如下: If thisform.Label1.Left = 0 thisform.Label1.left =thisform.Label1.Left - 5Else thisform.Label1. Left = thisform.Width endifi=int(rand()*255)j=int(rand()*255)k=int(rand()*255)thisform.label
21、1.forecolor=rgb(i,j,k) (2)form1的click事件代码如下: thisform.releasedo form 登录系统表单5.2 登录界面设计 新建一个表单,命名为“登录表单”,在登录表单上放置相应的控件,2个label,2个text,3个command并修改其属性,如图5.2所示。图5.2 登录系统具体代码编写如下:(1)form1的init事件代码如下: public ii=0thisform.text1.value=thisform.Label2.visible=.f.thisform.text2.visible=.f.mand1.enabled=.f.man
22、d2.enabled=.f.thisform.text1.setfocuspublic qselect mblocate for alltrim(thisform.text1.value)=alltrim(用户名) if found() and alltrim(thisform.text2.value)=alltrim(密码) do case case alltrim(权限)=系统管理员 q=1 case alltrim(权限)=一般管理员 q=2 case alltrim(权限)=普通用户 q=3 endcase else q=0 endif(2)text1的interactivechang
23、e事件代码如下:thisform.Label2.visible=.t.thisform.text2.visible=.t.thisform.text2.enabled=.t.mand1.enabled=.t.mand2.enabled=.t.(3)“确定”按钮的Click事件代码如下:sele mblocate for alltrim(thisform.text1.value)=alltrim(用户名) if found() and alltrim(thisform.text2.value)=alltrim(密码) thisform.release do form 总表单 else i=i+1
24、 if i3 messagebox(对不起!您输入有误,请重试!,64,错误) thisform.text1.value= thisform.text2.value= thisform.text2.enabled=.f. thisform.text1.enabled=.t. thisform.text1.setfocus else messagebox(对不起!您输入有误,禁止进入系统!,64,错误) release thisform endifendif(4)“取消”按钮的Click事件代码如下:mand1.enabled=.t.thisform.text1.value=thisform.t
25、ext2.value=thisform.Label2.visible=.f.thisform.text2.visible=.f.mand1.enabled=.f.mand2.enabled=.f.thisform.text1.enabled=.t.thisform.text1.setfocus(5)“退出”按钮的Click事件代码如下:thisform.release5.3 修改表单设计新建一个表单,命名为“修改表单”。把表单Caption属性设置为“修改个人信息”;在“修改个人信息”表单上放置相应的控件,5个标签Label,5个文本框Text,2个命令按钮Commandgroup,更改其中控
26、件的Caption属性,表单如图5.3所示。 图5.3修改个人信息具体代码设计如下:(1) form1的activate事件代码如下: thisform.txt学号.enabled=.f. thisform.txt姓名.enabled=.f. thisform.txt性别.enabled=.f. thisform.txt民族.enabled=.f. thisform.txt出生日期.enabled=.f.(2)表单form1的init事件代码如下: set multilocks on *set multilocks on 语句将设置可以进行多个记录锁定的配置=cursorsetprop(buf
27、fering,3) *cursorsetprop()函数设置缓冲区环境为3,表示行缓冲设定设定以及乐观锁定策略(3)“首记录”按钮的click事件代码如下: go topmand2.enabled=.f.mand3.enabled=.t.thisform.refresh (4)“上条记录”按钮的click事件代码如下:if bof() messagebox(已是第一个记录,48,信息窗口) mand2.enabled=.f.else skip -1 mand3.enabled=.t.endifthisform.refresh(5)“下条记录”的click事件代码如下: if eof() mes
28、sagebox(已是最后一条记录,48,信息窗口) mand3.enabled=.f.else skip mand2.enabled=.t. endifthisform.refresh(6)“末记录” 按钮的click代码如下: go bottommand3.enabled=.f.mand2.enabled=.t.thisform.refresh(7)“修改”按钮的click事件代码如下:if mand1.caption=修改 mand1.caption=保存 thisform.txt学号.enabled=.t. thisform.txt姓名.enabled=.t. thisform.txt性
29、别.enabled=.t. thisform.txt民族.enabled=.t. thisform.txt出生日期.enabled=.t. mand1.enabled=.f. mand2.enabled=.f. mand3.enabled=.f. mand4.enabled=.f.else yn=messagebox(确定保存吗?,4+32,信息窗口) if yn=6 =tablerevert(.t.) replace 学号 with thisform.txt学号.value replace 姓名 with thisform.txt姓名.value replace 性别 with thisfo
30、rm.txt性别.value replace 民族 with thisform.txt民族.value replace 出生日期 with thisform.txt出生日期.value thisform.refresh thisform.txt学号.enabled=.f. thisform.txt姓名.enabled=.f. thisform.txt性别.enabled=.f. thisform.txt民族.enabled=.f. thisform.txt出生日期.enabled=.f. mand1.caption=修改 mand1.enabled=.t. mand2.enabled=.t.
31、mand3.enabled=.t. mand4.enabled=.t. else =tablerevert(.f.) thisform.txt学号.enabled=.f. thisform.txt姓名.enabled=.f. thisform.txt性别.enabled=.f. thisform.txt民族.enabled=.f. thisform.txt出生日期.enabled=.f. mand1.caption=修改 mand1.enabled=.t. mand2.enabled=.t. mand3.enabled=.t. mand4.enabled=.t. thisform.refres
32、h endif endif(8)“退出”按钮的事件代码如下: thisform.release 5.4 删除表单设计 新建一个表单,命名为“删除表单”,把此表单的属性改为“删除学生档案”,在数据环境设计器窗口中把XSXX表添加到此表单的数据环境中。然后向表单中添加控件,在数据环境设计器窗口中把XSXX表直接拖至表单中,生成一个grdxsxx表格,在此表单中添加一个commandgroup1控件,它的buttomcount属性是2,把它的caption属性设置为“删除”、“退出”。 图5.4 删除表单具体代码如下:(1)表单form1的load事件代码如下:public jlhjlh=1(2)“
33、删除”按钮的click事件代码如下:sele xxif not eof() jlh=recno() y=messagebox(真的要删除吗?,4+32,信息窗口) if y=6 go jlh delete use xx exclusive pack thisform.grdxx.recordsource=xx thisform.grdxx.refresh thisform.refresh else thisform.grdxx.recordsource=xx thisform.grdxx.refresh thisform.refresh endifendif (3)“退出”按钮的click事件
34、代码如下:thisform.releaseuse5.5 个人信息查询表单设计 新建一个表单,命名为“模糊查询表单”,把此表单的caption属性改为“个人信息查询”,在此表单中添加1个label1,1个text1,2个命令按钮command,1个表格grid1,一个选项按钮组optiongroup,并改变其属性,如图5.5所示。 图5.5个人信息查询5.6 成绩查询表单设计新建一个表单,命名为“单一查询表单”,把此表单的caption属性改为“成绩查询”,在此表单中添加1个label1,1个text1,2个命令按钮command,1个表格grid1,并改变其属性,如图5.6所示。 图5.6 学
35、生成绩查询5.7 选课表单设计 新建一个表单,命名为“选课表单”,把此表单的caption属性改为“选课”,在此表单中添加1个label1, 3个命令按钮command,并改变其属性,如图5.7所示。 图 5.7 选课表单5.8 数据添加表单设计新建一个表单,命名为“数据添加表单”,把此表单属性改为“数据添加表单”,并添加控件,添加5个label,5个text,3个command,如图5.8所示。 图5.8 数据添加表单5.9 总表单运行 图5.9 总结束语本文对整个系统的开发过程,从可行性分析到事实部分基本实现了教学系统的基本功能:录入、查询、删除、修改等等的功能,而论文也按照老师要求完成了。虽然是基本完成了,但是还有很多不足之处。但是由于时间的有限,加之能力有限,希望过后能进行完善。通过这次课程设计,我深深的感觉到团队合作的重要性,我相信这对我以后的学习和工作都将起到重要作用。在这里还要特别感谢老师和同学对我的帮助。参考文献黄青云,张洪波.管理信息系统设计与实现.第一版.科学出版社.2000年尹立宏.数据库开发典型实例.第一版.电子工业出版社.2002年李鹏,杨文豫.管理信息系统实验指导书.金敏力,田兆福.管理信息系统 第一版 科学出版社 2009年8月