学生信息管理系统..doc_第1页
学生信息管理系统..doc_第2页
学生信息管理系统..doc_第3页
学生信息管理系统..doc_第4页
学生信息管理系统..doc_第5页
免费预览已结束,剩余25页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

系统需求分析一、功能需求1、能够游览学生的所有信息2、能够通过学生的一个信息找到个人的相关信息(例如:知道学生的姓名能够找到该学生的所有有关的信息)3、通过一条信息找到与之匹配的信息(例如:查询同一专业或同班级的所有学生)4、相关人员能对包含学生的信息进行管理(因为学生有关情况不是固定不变的所以一旦学生信息发生改变就要对原有信息进行诸如添加,删除,修改等的操作)5、能够对新的考试进行必要的管理(如添加,删除,修改等的操作)6、需要提供用户管理的功能(能如添加,删除,修改用户的用户名与口令等)7、对学生的成绩进行必要的管理工作(如输入,存储、编辑与查询等)二、性能需求1、数据精确度查询时应保证查全率,所有相应域包含查询关键字的记录都应能查到 2、时间特性一般操作的响应时间应在1-2秒内3、适应性对运行环境要求普遍适应性三、运行需求1、用户界面利用菜单界面驱动方式,对用户友好。必须对鼠标和键盘单独支持2、硬件接口支持一般奔腾,128兆以上内存的pc机。3、软件接口运行于Windows9X及更高版本具有WIN32API的操作系统上四数据流图经过系统的调查与系统分析得到系统的数据流程图如下:系统管理员菜单选择码菜单选择 + + +用户管理学生成绩管理学生信息管理 考试 管理 121 2 3 4 5 6 7 9 11 8 10 用户文档 学生数据库文件 学生成绩数据库 考试数据库文件系统数据流图数据流说明: 1,2为普通用户的基本数据 3,4为普通用户的基本数据 5,6,7,8,9,10为学生成绩相关数据 11,12为考试的基本数据 李慧 200720010209 计算机072002班系统总体设计一、概要设计针对以上系统要完成的功能,本系统总体设计采用自顶向下,逐步细化的方法将功能层次结构的各个部分组合起来,以完成整个系统的实现细节。二、模块结构学生管理系统学生信息管理模块学生成绩管理模块考试管理模块用户管理模块学生信息录入学生信息查询学生信息编辑添加新考试编辑已有考试编辑考试科目学生成绩录入学生成绩查询学生成绩编辑添加新用户编辑已有用户删除用户 系统功能结构图有关功能说明:1、学生信息管理功能:以分类形式录入在校学生的基本基本信息存放在学生基本数据库文件中。并同时具有对学生基本数据库文件进行查询,修改和删除记录功能。本模块又分为三个子模块: (1)学生信息录入 (2)学生信息查询 (3)学生信息编辑(修改/删除)其中,学生信息查询不需登录即可使用,信息录入和修改/删除模块则需要先登录后才能使用。2学生成绩管理模块主要是对学生成绩进行管理。本模块又分为三个子模块:(1)学生成绩录入(2)学生成绩查询(3)学生成绩编辑(修改/删除)其中,学生成绩查询不需登录即可使用,其他模块则需要先登录后才能使用。3考试管理模块主要对考试进行如下管理:(1)添加新考试(2)对已有的考试信息进行编辑(修改/删除)(3)对考试科目进行编辑(添加/删除)4用户管理模块主要对使用本系统的用户进行如下管理:(1)添加新用户(2)对已有的用户进行更改用户名、密码和权限(管理员或普通用户)等操作(3)删除用户本模块只有管理员才能使用,普通用户不能进入。功能模块如图2.2。三、数据结构本系统主要用到六个数据文件,它们是:学生基本数据库文件:采用索引组织,存取为随机方式。学生成绩数据库文件:采用索引组织,存取为随机方式。课程数据库文件:采用索引组织,存取为随机方式。考试数据库文件:采用索引组织,存取为随机方式。用户数据库文件:采用顺序组织,存取为顺序方式。系统主文件:采用顺序组织,存取为顺序方式。四、系统的总体布局方案学生管理系统分为学生信息管理、学生成绩管理、考试管理和用户管理四个子系统。用户在进入此系统时首先必须在进行身份的确认,只有是合法用户才能进入此系统,否则将无法使用此系统。如果是合法用户,就可以进行对学生信息、学生成绩、与考试进行管理工作(如输入、更新、删除、查询等操作),但无法进行用户的管理工作。如果要进行用户的管理工作还必须进入另外一个用户管理员身份的确认,如果用户管理员的名称与口令均正确才对用户进行管理工作(如删除、修改用户名与口令和添加新用户等操作)。五、软件系统总体结构设计 学生管理系统由中主程序main11.mpr来调用一般用户的确认表单经确认后是合法用户由此表单中的程序调用学生管理系统的欢迎界面,此界面是单文档表单上面附有SDI菜单,菜单中包含四个主菜单项分别为学生学生信息管理、学生成绩管理、考试管理和用户管理每个主菜单项下又有子菜单如用户管理下就有用户管理员认证、添加新用户、删除用户、更新用户等子菜单。 李慧 200720010209 计算机072002班系统详细设计一、功能模块设计1、用户管理模块 在用户管理模块中又把此模块分为三个小的模块分别为:(1)输入 在输入模块中通过在表单中的一个确定按钮使得用户在界面中通过键盘或通过标输入的数据插入到数据库中的学生基本信息表中,通过退出按钮结束学生信息的输入。(2)编辑当用户进入编辑窗口时,编辑窗口中的数据绑定型控件都与学生基本信息表中的字段进行绑定。并设计一个类,类的基类为命令按钮组,组中包含六个命令按钮分别为:第一个,上一个,下一个,最后一个,删除,退出。把此类作为控件添加到表单中,以此来对记录进行移动与删除。(3)查询 当用户进入查询窗口时,在查询窗口的文本框中输入要查询的关键字如性名或学号时,并点确定按钮,按钮中的SQL查询语句就会执行,使得结果显示在此表单的下方的表格中。2、学生基本信息管理模块、考试管理模块和成绩管理模块这三个模块的每一个模块都包含以上的三个小模块在此不在重复。二、数据库设计1、数据库概念结构设计这一设计阶段是在需求分析的基础上,设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础,可以用实体-关系模型来描述.实体-关系模型(Entity-relationship Mode,简称E-R模型)是数据库设计常用的方法.E-R图中的矩形表示实体,菱形表示实体之间的联系,联系的类型可以用1:1或1:M或M:N表示,圆角矩形表示实体的有关属性,椭圆表示实体的具体属性。下图是学生信息管理系统各个实体以及数据库系统的E-R图。 学生实体E-R图 班级信息实体E-R图 课程信息实体E-R图 奖励信息实体E-R图 职务信息实体E-R图在得到了各个实体的E-R图之后,我们就可以对它们进行化简,得到整个系统数据库的E-R图。 学生信息管理系统数据库E-R图 2、数据库逻辑设计下面需要将数据库概念结构转化为SQL Sever数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。在上面的实体以及实体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系。设计4个数据表来保存学生的信息:学生个人基本信息表,学生所选课程信息表,学生奖励信息表,学生职务信息表。为了数据记录实例的完整,系统中包括了应用程序中所需的一个外部数据表:学校班级信息表。为了优化数据表的结构,有的字段采用字段形式,因此附加了一个代码表:课程设置代码表。另外学要一个计数数据表来保存其他表格所需的记录号:记录号数据表。总共需要7个表,其结构如下表所示。设计一个项目,项目名为学生管理信息系统并在此项目中创建一个数据库,数据库名为xsxj此数据库中包含学生、课程、成绩、班级、系部、考试、专业、用户等表。表结构如下:学生表(xs)字段名xhxmxbJgmzzzmabzzpcsrq类型ccccccmgd宽度1082624448标题学号姓名性别籍贯民族政治面貌备注照片出生日期字段名xdhzydhbjdh类型ccc宽度223标题系代号专业代号班级代号课程表(kc)字段名kcdhkcmxfkclxkcxzkss类型ccnccn宽度4163,1883标题课程代号课程名学分课程类型课程性质课时数成绩表(cj)字段名xhkcdhcj类型ccn宽度1043标题学号课程代号成绩考试表(ks)字段名ksdhkskmkssjjklsksddqkrsskrsksqk类型ccdccnnm宽度51681816334标题考试代号考试课名考试日期监考老师考试地点缺考人数实考人数考试情况用户表(user1)字段名yfmyfmm类型cc宽度108标题用户名用户密码系表(xi)字段名xdhximing类型cc宽度218标题系代号系名专业表(zy)字段名zydhzymcxz类型ccc宽度2161标题专业代号专业名称学制班级表(bj)字段名bjdhbjmcbzrjsdd类型cccc宽度312812标题班级代号班级名称班主任教室地点 三、对话设计 在对话设计的过程中遵循了对话设计的原则:1对话要清楚、没有二义性。2对用户的响应要快,而且要进行了回答的有效性检验。3对话比较适合用户的要求与习惯,应该问的问题问了,问得不频繁。4注意询问格式的美观、实用,而且采用了统一的格式,体现了一定的风格。 在整个界面的风格上采用了灰色为基调,界面的大小为统一的高345宽500。对于错误对话框统一采用Meassagebox()函数来生成。四、可靠性设计 这里所说的可靠性是指数据的安全与保密。所谓系统的可靠性设计就是确定保证数据的安全与保密措施。 就保密措施采取了二重确认的方法。通过加强应用程序的容错性,设置了用户的权限,系统中信息资源的存取、修改、查询等使用权限进行了控制。对于用户管理员的顶级权限在程序运行的过程中进行了控制工作。 李慧 200720010209 计算机072002班管理系统的实现一、菜单的实现 用户在进行用户确认后进入如图菜单:系统菜单此菜单为SDI菜单,菜单名为main01.mnx,并生成为main01.mpr文件后。把表单(main01.scx)的showwindows属性设置为2作为顶层表单,并在此表单的init事件中书写如下程序代码: Do formsmain01.mpr with this,.t.二、用户管理员认证表单的实现系统管理员在作为普通用户进入系统后,必须再经过如图中表单的确认后方可进行用户管理。系统管理员在其界面中系统管理名与系统管理员口令都运用了文本框让使用者输入其目的就增加其保密性。此表单的主要程序代码在确定按钮的click的事件中。程序代码如下:set talk offif alltrim(thisform.text1.value)=system12345if alltrim(thisform.text2.value)=678910sys thisform.release do form d:学生管理信息系统formsyfsc.scx else thisform.spinner1.value=thisform.spinner1.value+1 if thisform.spinner1.value=3 messageb(你输入的用户名或口令不正确!+chr(13)+对不起,你无权使用!,48,系统信息) release thisform else messageb(你输入的用户口令有误,请重新输入!) thisform.text2.value=thisform.text2.setfocus thisform.text2.setfocus endif endifelsemessageb(你输入的用户名有误,请重新输入!)thisform.text1.value=thisform.text1.setfocusendif三、学生基本信息表单输入的实现 学生信息录入上图是学生信息录入界面,此界面中由于学生的所包含的信息众多,所以在实现的过程中采用了页框,页框中包含了两个页面第一个页面中是学生的基本信息,第二个页面中是学生的相关信息。此表单的主要程序代码在确定按钮的click的事件中。程序代码如下:a=thisform.pageframe1.page1.text1.valueb=thisform.pageframe1.page1.text2.valuec=thisform.pageframe1.page1.text3.valued=thisform.pageframe1.page1.text4.valuee=thisform.pageframe1.page1.text5.valuef=bo1.valueg=bo2.valueh=bo3.valuel=bo4.valuem=bo5.valuen=thisform.pageframe1.page2.edit1.valueif len(a)=0messageb(输入的学号不能为空!)thisform.pageframe1.page1.text1.setfocuselse if len(b)=0messageb(输入的姓名不能为空!) thisform.pageframe1.page1.text2.setfocus else if len(c)=0messageb(输入的籍贯不能为空!) else thisform.pageframe1.page1.text3.setfocus if len(d)=0 messageb(输入的民族不能为空!) thisform.pageframe1.page1.text4.setfocus else if len(l)=0 messageb(输入的性别不能为空!) bo4.setfocus else if len(f)=0 messageb(输入的政治面目不能为空!) bo1.setfocus else if len(h)=0 messageb(输入的系代号不能为空!) bo3.setfocus else if len(g)=0 messageb(输入的专业代号不能为空!) bo2.setfocus else if len(m)=0 messageb(输入的班级代号不能为空!) bo5.setfocus else if len(e)=0 messageb(输入的出生日期不能为空!) thisform.pageframe1.page1.text5.setfocus else insert into d:学生管理信息系统dataxs(xh,xm,xb,csrq,jg,mz,zzma,bz,xdh,zydh,bjdh) values(a,b,l,ctod(e),c,d,f,n,h,g,m) thisform.pageframe1.page1.text1.value= thisform.pageframe1.page1.text2.value= thisform.pageframe1.page1.text3.value= thisform.pageframe1.page1.text4.value= thisform.pageframe1.page1.text5.value= thisform.pageframe1.page2.edit1.value= bo1.value= bo2.value= bo3.value= bo4.value= bo5.value= endif endif endif endif endif endif endif endif endifendif四、学生考试课程编辑表单的实现课程信息编辑上图是课程信息编辑界面,此界面由于是编辑界面所以所有的数据绑定控件均为文本框,每一个文本框都与课程表的一个字段进行绑定。表单中的命令按钮组是一个类(mytool)此表单的主要程序代码集中在类的click的事件中。程序代码如下:x=this.valuedo case case x=1 go top mand1.enabled=.f. mand2.enabled=.f. mand3.enabled=.t. mand4.enabled=.t. case x=2 mand3.enabled=.t. mand4.enabled=.t. if not bof() skip-1 if recno()=1 mand1.enabled=.f. mand2.enabled=.f. endif endif case x=3 mand1.enabled=.t. mand2.enabled=.t. if not eof() skip if recno()=reccount() mand3.enabled=.f. mand4.enabled=.f. endif endif case x=4 go bottom mand1.enabled=.t. mand2.enabled=.t. mand3.enabled=.f. mand4.enabled=.f. case x=5 delete n=messagebox(真的要删除该记录吗?,1+32,删除) if n=1 pack else recall endif case x=1 go top mand1.enabled=.f. mand2.enabled=.f. mand3.enabled=.t. mand4.enabled=.t. case x=6 close database thisform.releaseendcasethisform.refresh五、学生成绩查询表单的实现 学生成绩查询上图是学生成绩查询界面,此界面中通过在组合框中选择要查询的学号、姓名、课程代号、专业代号和班级代号等多种查询手段,并在其后的文本框中输入要查询的值,然后单击确定按钮在下方的表格中就会显示出查询的结果。此表单的主要程序代码在确定按钮的click的事件中。程序代码如下:do casecase bo1.value=学号a=allt(thisform.text1.value)thisform.grid1.recordsourcetype=4thisform.grid1.recordsource=select xh,kcdh,cj from cj where xh=a into

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论