您好,欢迎访问三七文档
项目申请书项目名称:教务系统项目申请人:刘敏、吴忧、张世伟、祖英英联系方式:13844043018、1384498292413943184248、13630500194指导教师:杨威2011年12月16日1、开发背景随着我国高等教育体制改革的逐步加深,完全学分制或学分制教育改革正在国内许多高校推行,当然我们学校也不例外。尤其随着学校人数的不断上升,教务人员对学生信息的管理量也越来越大,传统的手工录入工作量繁重,浪费时间质量也不很理想,所以对于教务处来说,需要一个操作简单、功能也简单实用,可以满足学校对学生的个人信息及成绩管理的系统。在学校选择教务系统时,主要存在以下几个方面的要求:(1)对学生的个人信息、老师的个人信息以及学生成绩进行管理。(2)系统的功能要符合学校的基本情况。(3)系统的功能操作要简单、方便。(4)可以方便的对学生成绩进行打印。2、需求分析良好的人机界面方便的添加和修改数据功能方便的数据查询功能方便的数据打印功能在相应的窗体中,可方便的删除数据3、系统设计3.1系统目标根据教务系统的要求,制定管理系统目标如下:界面友好、操作方便可以对学生个人信息进行管理,包括添加、删除、修改、查询可以使用修改口令系统运行稳定、安全可靠3.2系统功能结构图教务系统的功能结构图:3.3系统预览教务系统是由多个窗体组成,下面列出几个窗体。当打开应用程序时,首先会出现登录窗体,登录窗体用来验证用户的身份、用户名及密码,如图所示:教务系统系统管理成绩管理退出修改密码成绩查询信息管理学生信息管理教师信息管理主窗体用于执行系统管理、成绩管理、信息管理操作。主窗体页面如图所示:成绩管理窗体,用来进行成绩查询,系统管理窗体用来进行修改密码,信息管理窗体包括学生信息管理和教师信息管理,用来查看学生和教师的个人信息。3.4业务流程图3.5编码规则1.在创建一个窗体时,首先要对一个窗体的ID进行命名,其编码规则为“frm+窗体名称”,其中窗体名称均是英文形式的窗体说明。如登录窗体的ID名为frmLogin。2.数据库命名规则数据库命名以小写字母“db”开头,后面加下划线“_”及数据库相关英文单词缩写。如下表:数据库名称描述db_JW教务系统3.数据表命名规则数据表命名以小写字母“tb”开头,后面加下划线“-”及数据表相关英文单词缩写。3.6程序运行环境本系统的程序运行环境具体如下。系统登录判断是否通过验证否是系统管理成绩管理信息管理退出系统1.系统开发平台:MicrosoftVisualStadio2005。2.系统开发语言:C#。3.数据库管理系统然间:MicrosoftSQLServer2005。4.运行平台:WindowsXP5.运行环境:Microsoft.NetFrameworkSDkv3.5。6.分辨率:最佳效果1024*768像素。3.7数据库设计1.数据库分析教务系统主要用来管理教师及学生的个人信息,以及学生成绩查询等,数据量是根据学生和教师多少来决定的,本系统使用MicrosoftSQLServer2000作为后台数据库。数据库命名为db_JW,其中包含了4张数据表,用于存储不同的信息,详细信息如下:表一tb_User表二tb_Grade表三tb_Student表四tb_Teacher2.数据库概念设计数据库设计在系统开发中占有非常重要的比重,它是通过管理系统的整体需求而制定的,数据库设计的好坏直接影响到系统的后期开发。下面对本系统中数据库设计做详细说明。在本系统中,为了提高系统的安全性,每个用户都要使用正确的用户名和密码才能进入主窗体,而且还需要根据制定的用户名提供相应的权限,为了能够验证正确的用户名和密码及得到相应的权限,应在数据库中创建登录表。登录用户信息表的实体E-R图如图所示。在教务系统时,最终的数据表是教师信息管理表,学生成绩信息表和学生个人信息表。教师信息管理表的实体E-R图如图所示:学生成绩信息表的实体E-R图如图所示:教师信息管理表教师编号教师姓名教师性别民族毕业院校教师学历系统编号所在院系登录用户信息表学生编号用户名密码权限登录时间学生个人信息表的实体E-R图如图所示:3.8文件夹组织结构每个项目都会有相应的文件夹组织结构,在开发教务系统之前,设计了文件夹组织结构图。1.文件夹组织结构图如图所示:学生成绩信息表学生学号学年系统编号课程审核状态成绩学生个人信息表学生姓名学生学号系统编号民族学生性别学生班级学生年龄入学日期学制籍贯4.公共类设计项目开发过程中,通常会以类的形式来组织、封装一些常用的方法和事件,这样做不仅可以提高代码的重用率,也大大方便了用户对代码的管理。在本系统中,主要建立了两个公共类,分别为DBConnection类和DBOperate类。DBConnection类主要用于连接数据库;在DBOperate类中则定义了一些操作数据库的公共方法,分别用于实现各种功能,下面将详细介绍这两个类。4.1DBConnection公共类DBConnection类是数据库连接类,此类主要用于连接SQLServer2000数据库,在连接数据库时,只需调用此类中的Myconnection即可。4.2DBOperate公共类在DBOperate类中建立了多个方法用于执行不同的SQL语句,下面对该类中的方法进行详细讲解。1.OperateData()方法:OperateData方法用于对数据库执行SQL语句。再来开发程序时,可能会反复的至此那个SQL语句,为了增加代码的重复使用,在公共类中建立了一个OperateData()方法,其参数是SQL语句,调用时,只需要将执行的SQL语句传递给此方法执行即可。2.BindDataGridView()方法:BindDataGridView()方法用于将数据库中的数据绑定到DataGridView空间。3.HumanNum()方法:HumanNum()方法用于查找指定数据表的返回数。4.Get_Image()方法:Get_Image()方法用于将图片从数据库中取出,并显示在PictureBox控件中。5.GetTable()方法:GetTable()方法用于根据指定的SQL查询语句返回相应的DataSet对象。6.BindDropdownlist()方法:BindDropdownlist()方法用于对指定的ComboBox控件进行数据绑定。5.登录模块设计5.1登录模块概述系统登录只要用于对进入教务系统的用户进行安全性检查,一防止非法用户进入系统。在登录时,只有合法的用户才可以进入系统。5.2登录模块技术分析登录窗体使用了SqlDataReader对象的Read()方法,从数据库中查找满足用户名和密码条件的数据,并使用SqlDataReader对象的HasRows属性判断是否已经找到指定的数据,如果找到数据记录,择用户输入的用户名和密码正确;如果没有查找到记录,则用户输入的用户名活密码错误。5.3登录模块的实现过程登录模块的具体实现步骤如下:(1)新建一个Windows窗体,命名为frmLogin.cs,主要用于实现系统登录功能。(2)在登录窗体中,单击“登录”按钮,程序调用DBConnection类中的MyConnection()方法连接数据库,然后通过SqlDataReader对象的HasRows属性判断用户输入的用户名和密码是否正确,如果正确,择登录教务管理系统,并将用户名传到主窗体中。否则,弹出“用户名或密码错误”信息提示。6.主窗体设计6.1主窗体概述主窗体是程序操作过程中必不可少的,他是人际交互中的重要环节。通过主窗体,用户可以调用系统相关的个子模块,快速掌握本系统的实现功能及操作方法。当成功通过登录窗体验证后,用户将进入主窗体。6.2主窗体技术分析在主窗体中,通过查询数据库tb_User表的的信息,来判断已经登录的用户所拥有的操作权限,如果用户的权限为“教师”,则启用所有的菜单项;如果用户的权限为“学生”,则停用部分管理菜单项。下面说明如何盘丢按用户全新,并停用的部分管理菜单。6.3主窗体实现过程主窗体的具体实现步骤如下:(1)新建一个Windows窗体,命名为frmMain.cs,主要用于实现系统主窗体的设计。(2)首先定义两个公共字段,用于获取登录用户名和登录时间,然后声明公共类DBOperate的一个实例对象。(3)当主窗体加载时,在主窗体的状态栏中显示登录用户名和登录时间,并且根据登录用户的权限设置其操作权限。(4)选择菜单栏中的“系统管理”/“修改密码”命令,会打开修改密码窗体。(5)选择菜单栏中的“信息管理”/“学生信息管理”命令,会打开学生信息管理窗体。(6)选择菜单栏中的“信息管理”/“教师信息管理”命令,会打开教师管理窗体。(7)选择菜单栏中的“成绩管理”/“成绩查询”命令,会打开成绩查询窗体。(8)单击菜单栏中的“退出”按钮,会弹出提示,询问用户是否退出系统。7、教师信息管理模块设计7.1教师信息管理窗体概述教师信息管理窗体用于管理教师的基本个人信息,在窗体中可以添加、修改、删除和查找教师信息。7.2教师信息管理模块技术分析教师信息管理模块主要用于对教师个人基本信息的管理,包括添加教师信息、删除教师信息、修改教师信息、查找教师信息。主要利用了DBOperate数据库作为对象方便的对数据库进行操作。7.3教师管理模块实现过程教师管理模块的具体实现步骤如下:(1)新建一个Windows窗体,命名为frmTeacher.cs,主要用于实现教师信息的添加、修改、删除和查找功能。(2)教师管理窗体加载时,会检索出教师信息表tb_Teacher中的所有信息,并将其绑定到DataGridView控件上。(3)如果要按姓名查找教师信息,可以再toolStripTextBox1控件的TextChange事件中编写代码,实现当控件中输入关键字后,立刻就能检索处相应的数据。(4)单击“添加”按钮,打开添加教师信息窗体,在该窗体中,可以向数据库中添加新的教师信息。(5)当教师信息填写完整后,单击“保存”按钮,首先对输入的数据进行检查验证,如果符合条件,就将输入的教师信息添加到数据库中。(6)当为新增的教师选择教师编号时,首先要判断指定的编号在数据库中知否已经存在。此功能是在输入教师编号文本框的TextChange事件中实现的。(7)在教师管理窗体中单击“修改”按钮,打开修改教师信息窗体,在该窗体中可以对教师信息进行修改。当选中某条教师信息后,单击“修改”按钮会打开修改教师信息的窗体,当打开此窗体时,会触发窗体的Load事件,首先绑定ComboBox控件用于显示教师的院系。然后根据教师编号检索数据,将教师的各项信息检索出来并显示在相应的控件上。(8)如果想修改某条教师信息,只需要更改教师的某些数据,然后单击“修改‘按钮即可,在“修改”按钮的Click事件中首先判断修改的数据是不是符合条件,如果符合条件,则声明一个update语句将修改后的数据更新到数据库中。(9)单击“删除”按钮,删除选中的教师信息。8、使用水晶报表显示教师信息,学生信息以及学生成绩。9、结束语进过两周多的努力,我们小组完成了教务系统管理,这个系统主要包含了两种身份的功能。教师管理和学生管理。每一种身份都有不同的功能。在这个系统中,我们每个人都有不同的分工。在这个两个多星期我们小组在一起工作,从开始的设计分工到最后的调试都合作的很愉快,虽然都比较累,可是看到系统最终完成我们真的很开心,每一次解决一个问题心中都非常激动,在这个系统编写的过程中我们还有许多不足,代码填写的时候没有考虑周全,而且由于时间有限,我们只是简单的设计了教师和学生。
本文标题:项目申请书1
链接地址:https://www.777doc.com/doc-3695323 .html