软件学院管理信息系统 ——学生、科研管理和实验室管理子系统设计-毕业论文_第1页
软件学院管理信息系统 ——学生、科研管理和实验室管理子系统设计-毕业论文_第2页
软件学院管理信息系统 ——学生、科研管理和实验室管理子系统设计-毕业论文_第3页
软件学院管理信息系统 ——学生、科研管理和实验室管理子系统设计-毕业论文_第4页
软件学院管理信息系统 ——学生、科研管理和实验室管理子系统设计-毕业论文_第5页
免费预览已结束,剩余27页可下载查看

下载本文档

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

文档简介

本科毕业论文本科毕业论文 (科研训练、毕业设计) 题题 目:软件学院管理信息系统目:软件学院管理信息系统 学生、科研管理和实验室管理子系统设计 姓 名: 学 院:软件学院 系: 专 业:软件工程 年 级: 学 号: 指导教师(校内): 职称: 指导教师(校外): 职称: 年 月 日 本科毕业论文 2 软件学院管理信息系统 学生、科研管理和实验室管理子系统设计 【摘要】 本文阐述了厦门大学软件学院管理信息系统的开发,使用 Struts 开发框架,采用 B/S 结构和 Microsoft SQL Server 2000 数据库。该系统在设计上遵循 MVC 设计模式,并从 功能上划分为五个子模块:学生子模块、教师子模块、实验室管理子模块、科研管理子模块 和教务管理子模块。它力求为软件学院全院师生提供友好的界面和方便的功能以提高工作效 率。 【关键词】 管理信息系统 Struts B/S 结构 Microsoft SQL Server 2000 MVC 设计模 式 本科毕业论文 3 Abstract The information administration system of Software School of Xiamen University is developed based on the Struts framework, which encourages application architectures based on Model-View- Controller (MVC) design paradigm. The system adopts the structure of Browser/Server (B/S) and Microsoft SQL Server 2000 database. It contains five modules: student module, teacher module, laboratory administration module, scientific research administration module and educational administration module. It provides a friendly interface and convenient functions for all teachers and students of software school to improve the efficiency of work. Keyword The information administration system Struts Model-View-Controller (MVC) Browser/Server (B/S) Microsoft SQL Server 2000 本科毕业论文 4 目录 引言引言.5 第一章第一章 需求需求.6 1.1 系统需求6 1.2 软硬件需求6 第二章第二章 设计模式及所应用的技术设计模式及所应用的技术.7 2.1 MVC 设计模式.7 2.2 STRUTS开发框架8 2.3 JSP.8 第三章第三章 系统总体设计系统总体设计.9 3.1 系统设计原则9 3.2 系统规模及性能要求9 3.3 系统功能模块划分9 3.4 系统基本处理流程11 3.5 文件存放路径.11 3.6 出错处理12 第四章第四章 数据库设计数据库设计.13 4.1 数据库命名规则13 4.2 数据库物理设计13 第五章第五章 设计实现设计实现.16 5.1 数据源设置16 5.2 实例模块功能说明16 5.3 创建试图组件17 5.4 创建控制器组件20 5.5 创建模型组件22 第六章第六章 界面及功能界面及功能.25 6.1 学生信息查询25 6.2 就业信息26 6.2.1 本院学生就业情况查询管理.26 6.2.2 添加学生就业信息27 6.2.3 就业情况分析27 结论结论.29 致谢语致谢语.30 参考文献参考文献.31 本科毕业论文 5 引言 厦门大学是一所现代化的高水平综合大学,在学校管理上实现全面的信息化是一所现代 化大学的关键环节。而作为以培养高水平软件人才为教学目标的软件学院,在这方面更应该 走在其他学院的前列。在学院教学管理上实现信息化将能够提高各级行政人员的办公效率、 实现各类信息的有效共享、为教师的教学和学生的学习提供便利,同时也为学院领导提供辅 助决策服务。 本科毕业论文 6 第一章 需求 1.1 系统需求 通过对学院内教师、学生及行政人员进行的需求调查,可归结为以下几点: 学生管理需求包括学生的基本信息、政治面貌、综合测评、就业情况、交费情况及 学生论文等信息的管理查询。 学生需求包括个人综合测评的动态查询、网上选课、课表查询、课程作业的上传和 教学资源的下载、学生论文网上提交、CET 考试网上报名等功能。 科研项目管理功能要求具有网上项目申报及审批,为学院的科研项目管理提供便利、 学术论文的上传管理。 学院实验室管理需求包括实验室安排的网上查询、实验室网上预约及撤销预约、实 验室设备管理、可借用设备及软件信息查询。 注:由于我只负责学生、科研和实验室管理模块的设计,故以上需求不包括系统的其他 功能模块。 1.2 软硬件需求 根据学院目前的软硬件条件并考虑到系统将来发展的需要,提出以下软硬件需求。 软件环境 操作系统: Windows 2000 Server 数据库服务器:SQL Server 2000 web 服务器: Tomcat 客户端要求: Windows 系列操作系统 Internet Explorer 浏览器 5.0 以上版本 MS Office 办公软件 硬件环境 服务端要求:配置英特尔 至强 处理器的服务器,内存至少 512M 客户端要求;至少配置英特尔 赛扬 处理器,内存至少 128M 本科毕业论文 7 第二章 设计模式及所应用的技术 2.1 MVC 设计模式 MVC 是指 Model-View-Controller 的简称,即模型-视图-控制器。它是 20 世纪 80 年代 为编程语言 Smalltalk-80 发明的一种软件设计模式,现在被推荐为 Sun 公司 J2EE 平台的 设计模式,被广泛使用。该设计模式强制地把应用程序的输入、处理和输出分开,也就是把 应用程序分为三个核心模块,也就是前面提到的模型-视图-控制器,它们分别担任不同的任 务。其关系示意图如下: 图 2-1 MVC 设计模式 模型:表示业务数据和业务逻辑,其对业务流程的处理过程对于其他层来说相当于暗箱, 模型接受视图请求的数据,并返回最终的处理结果。在模型同界面相分离的情况下,代 码即可实现可管理性和可重用性。 视图:提供模型的表示,也就是应用程序的外观,它是用户可以看到并与之交互的界面。 视图向用户显示相关数据、接受用户输入的数据,但它并不进行任何的业务处理。视图 可以接收模型的数据更新事件从而实现用户界面的同步更新。 控制器:对用户的输入做出反应,调用合适的模型和视图来完成任务,它相当于一个任 务分发器,根据不同的要求选择不同的模型和视图来响应,控制器本本身不处理任何数 据。 总的来说就是客户端请求首先发送到 Servlet,Servlet 通过 JDBC 来连接数据库, 执行数据库操作,操作完成后把结果用 JavaBean 封装起来,然后把结果保存到请求对 象中,最后把视图派发到用于显示的 JSP 页面。JSP 页面读取 Servlet 的执行结果进行 显示。 本科毕业论文 8 MVC 设计模式的三个模块相互独立,改变其中一个不会影响到其他两个,依据这种设 计原理能够构造良好的构件,从而提高了代码的可重用性,有利于软件开发过程的软件工程 化管理,提高后期软件的开发效率。 2.2 Struts 开发框架 Struts 开发框架是由 Apache 软件基金会提供的一个面向 Java Web 应用的开源开发框 架,它基于 Java Servlet、JavaBeans、ResourceBundles 和 XML 等 Java 技术,在 JSP Model2 的基础上实现的一个 MVC 框架。它提供了自己的控制器组件并结合其他相关技术 实现了模型层和视图层。在 Struts 的模型层中结合了标准的数据访问技术如 JDBC、EJB 等 等,而视图层则支持 JavaServers Page 包括 JSTL 和 JSF。Struts 为 Web 应用提供了一个 通用的框架,使得开发人员能够把精力集中在如何解决实际问题上。另外 Struts 框架还提供 了许多可供扩展核定制的地方,使得应用程序能够方便地扩展框架来满足用户的实际需要。 因此使用 Struts 开发框架能够简化 Web 应用的开发过程,提高开发的效率,缩短开发周期。 2.3 JSP JSP 页面由 HTML 代码和嵌入其中的 Java 代码组成。服务器在页面被客户端请求以后 对这些 Java 代码进行处理,然后将生成的 HTML 页面返回给客户端浏览器。JSP 具备了 Java 技术的简单易用、完全面向对象、具有平台无关行窃安全可靠、主要主要面向 Internet 的所有特点。它继承了 Java 的一次编写到处运行的特色,支持多种系统平台,可在任意环 境中开发,在任意环境中部署,在任意环境中扩展。同时具有良好的可伸缩性及多样化且功 能强大的开发工具支持。 本科毕业论文 9 第三章 系统总体设计 3.1 系统设计原则 包容性和可扩展性 系统应具有较好的可扩展性和包容性,系统的可扩展性应包括能接纳现有的系统和 今后系统软硬件扩展时,应用需求的变化。有一个较好的应用平台,能容易地加以调整。 系统易于扩充升级,既能满足当前需求,又为今后的扩展留下充足的空间。 系统简洁易用、易维护、适用非计算机专业人员使用 应用系统的设计要符合日常办公的要求,应具有完备实用的功能,简单易学、界面 友好,便于非计算机专业人员学习使用,并且应该易于实现维护更新。 为教师、学生及行政人员提供良好的信息服务 对信息进行合理布局,提供高效优质的服务,方便学院师生可以在任意平台上对本 专业的教学情况进行查询,了解课程情况、网上选课、网上排课等,教师也可以通过查 询了解学生的情况。 运行可靠,安全保密 应具有较安全的通信机制、身份认证、权限检查,以解决信息系统的安全性、保密 性问题,权限不同的访问者只能访问规定的信息、进行规定的操作。 3.2 系统规模及性能要求 规模要求 按照厦门大学软件学院的发展规划,到 2009-2010 学年学院在校生人数将达到近 3000 人。所以系统的设计要充分考虑到学院发展的需要,与之相对应地为将来系统的 升级扩展留下充分的空间。 性能需求 响应时间:通过校园网进行访问,要求网页的下载时间应该在 3-5 秒内。 数据精确度:要求小数能精确到小数点后两位。 查询结果输出:要求对各类查询的结果能做到格式化输出,并能保存成 Excel 文档。 报告打印:要求输出的数据格式要便于实现打印。 国际化要求:因为学院有部分外籍教师,所以要求软件能够实现国际化,也就是实 现软件的显示语言与用户使用的操作系统的默认语言相对应。 3.3 系统功能模块划分 学生子系统 学生可以通过该系统查询课程相关信息、下载课程资源、上传课程作业(这样可以 避免了使用 FTP 上传作业的相互抄袭现象,每个同学只能看到自己上传的作业,而无法 访问其他同学上传的作业) ,同时同学可以通过网络选择选修课程,目前学院的选修课 的选择是使用手工填表,人工统计的方式,该功能可以大大简化工作流程,使得学生选 课情况可以很方便的进行统计。 科研管理子系统 供科研项目管理部门使用,用于管理教师科研项目,方便教师通过网络申报科研项 本科毕业论文 10 目,科研秘书可以通过网络审批科研项目,并对项目进行监控。同时教师也可通过该系 统上传个人学术论文。 实验室管理子系统 该子系统用于实现实验室管理,安排实验室课程,同时实验秘书可以通过该系统监 控实验室设备的使用情况及实验室的使用情况。并且该系统可以用于管理外借设备及软 件的情况。各课程教师也可通过该系统预约实验室。 图 3-1 系统模块功能划分 本科毕业论文 11 3.4 系统基本处理流程 图 3-2 系统基本操作流程图 3.5 文件存放路径 Web 服务器使用 Tomcat,所以所有的 Web 应用都放在%Tomcat_Home%/webapps 目 录下。因此在 webapps 目录下建立一个名为 eManage 的子目录。其他文件的具体放置目 录如下: 路径存放文件及功能包含下一级目录 .eManage所有文件所有 .eManageWEB-INF存放应用配置文件及. class 和.jar 文件 classes lib .eManageWEB-INFclasses存放 javabean 及 servlet 文件 无 .eManageWEB-INFlib存放应用所需的 java api无 .eManageadmin存放应用管理文件,.jsp无 本科毕业论文 12 .eManageapp存放应用主文件,.jsp无 .eManagecss存放样式表文件,.css无 .eManageimage存放各类图片文件无 .eManagejs存放 javascript 脚本文件, .js 无 表 3-1 文件存放目录表 3.6 出错处理 出错类型出 错 提 示处理方法 要求信息输入不全 面 提示该信息要求用户输 入 无法提交页面表单 未选择相关信息提示用户选择同上 输入信息类型不正 确 提示信息输入错误,要 求用户重新输入。 同上 用户名或密码错提示用户名和密码输入 错误 不允许用户登录或完成 操作 用户无权限无此权限用户无法进行该操作 数据库出错数据库操作失败恢复数据库 其他出错出现未知错误视情况而定 表 3-2 出错处理类型表 在开发过程中将根据不同的错误进行相应的处理。 本科毕业论文 13 第四章 数据库设计 4.1 数据库命名规则 所有的表按照其存储的内容选择一个合适的英文单词命名 各表中的列名按照其属性的英文单词命名 4.2 数据库物理设计 学院现有班级信息记录表主要存放学院各个班级的信息,便于在处理数据时将学生的数 据按班级进行分类统计。 学院现有班级信息记录表classes Column Name Column Datatype Column Is PK Column Is FK Column Null Option Column Comment class_idvarchar(6) YesNoNOT NULL班级记录编号,由入学年 份+小班编号+班级类型组 成 class_namevarchar(20)NoNoNULL班级名称 class_type bitNoNoNOT NULL班级类型,本科班 1、研 究生班 2、博士生班 3 class_year varchar(4) NoNoNOT NULL学生入学年份 class_nobitNoNoNOT NULL小班编号 teacher_id varchar(15)NoYesNOT NULL教师编号 角色定义表用来定义访问系统的各个角色及该角色的访问权限,便于在添加用户是可以 根据角色控制用户对系统的使用。 角色定义表role Column Name Column Datatype Column Is PK Column Is FK Column Null Option Column Comment role_idintegerYesNoNOT NULL 角色 ID role_namevarchar(20)NoNoNOT NULL 角色名称 role_purview varchar(50)NoNoNOT NULL 角色权限位图 学生信息表保存学生的基本信息及其联系方式供教师查询需要的信息。 学生信息表students Column NameColumn Datatype Column Is PK Column Is FK Column Null Option Column Comment student_novarchar(15) YesNoNULL学生学号 student_namevarchar(20) NoNoNOT NULL学生姓名 student_sexvarchar(2)NoNoNOT NULL学生性别 student_ageintNoNoNOT NULL学生年龄 本科毕业论文 14 student_birthdaydatetimeNoNoNOT NULL学生生日 student_typevarchar(6)NoNoNOT NULL学生类型:分为本科 生、硕士生、博士生 student_gradevarchar(4)NoNoNOT NULL学生年级,如 2002 级 student_classvarchar(20) NoNoNULL学生所属班级 student_nativevarchar(20) NoNoNOT NULL学生籍贯 student_polityvarchar(4)NoNoNOT NULL学生政治面貌 student_phonevarchar(14) NoNoNULL学生宿舍电话 student_mobile varchar(11) NoNoNULL学生移动电话 student_emailvarchar(50) NoNoNULL学生电子邮件 student_addressvarchar(150)NoNoNULL学生宿舍住址 class_idvarchar(6)NoYesNOT NULL班级记录编号,由入 学年份+小班编号+班 级类型组成 home_phonevarchar(15) NoNoNULL学生家庭电话 home_addressnvarchar(20)NoNoNULL学生家庭住址 学生就业情况记录表用于保存本院毕业生的就业信息以便学院相关教师查询、统计毕业 生的就业情况,并为学院领导提供决策辅助支持。 学生就业情况记录表students_job Column Name Column Datatype Column Is PK Column Is FK Column Null Option Column Comment student_novarchar(15)YesYesNOT NULL 学生学号 companyvarchar(50)NoNoNOT NULL 单位名 propertyvarchar(10)NoNoNULL单位性质 provincevarchar(20)NoNoNULL所属省份 cityVARCHAR(20 ) NoNoNULL所在城市 教师信息记录表用于保存教师的基本信息供相关人员查询。 教师信息记录表teachers Column NameColumn Datatype Column Is PK Column Is FK Column Null Option Column Comment teacher_idvarchar(15) YesNoNOT NULL 教师编号 teacher_namevarchar(20) NoNoNOT NULL 教师姓名 teacher_sexvarchar(1)NoNoNOT NULL 教师性别 teacher_ageintNoNoNOT NULL 教师年龄 teacher_degree varchar(10) NoNoNOT NULL 教师学历 teacher_position varchar(20) NoNoNOT NULL 教师职务 teacher_country varchar(20) NoNoNULL教师国籍 本科毕业论文 15 teacher_phonevarchar(14) NoNoNULL教师固定电话 teacher_mobile varchar(11) NoNoNULL教师移动电话 teacher_emailvarchar(50) NoNoNULL教师电子邮件 teacher_addressvarchar(150)NoNoNULL教师家庭住址 学生用户表用于保存学生用户的用户信息包括密码、登录名(学号) 、密码及其系统角 色。 学生用户表users_student Column Name Column Datatype Column Is PK Column Is FK Column Null Option Column Comment student_novarchar(15)YesYesNOT NULL 学生学号 role_idintegerNoYesNOT NULL 角色 ID user_pwdvarchar(20)NoNoNOT NULL 用户密码 教师用户表用于保存教师用户的用户信息包括密码、登录名、密码及系统角色。 教师用户记录表users_teacher Column Name Column Datatype Column Is PK Column Is FK Column Null Option Column Comment user_namevarchar(20)YesNoNOT NULL 用户登录名 role_idintegerNoYesNOT NULL 角色 ID user_pwdvarchar(20)NoNoNOT NULL 用户登录密码 本科毕业论文 16 第五章 设计实现 以本院学生就业情况查询管理作为实例,说明使用 struts 实现 MVC 模式。 5.1 数据源设置 在 struts-config.xml 对要使用的数据源进行相应的设置。具体设置内容及说明如下: 定义数据源名,如果这个数据源是系统唯一的数据源,则可以不要定义key 设定连接池最小活动连接数 设定连接池最大活动连接数 设定数据库用户名 设定数据库用户密码 设定所用的JDBC驱动 设定数据库URL 5.2 实例模块功能说明 以本院学生就业情况查询管理为例,下面是该功能的界面截图。 本科毕业论文 17 图 5-1 本院学生就业情况查询管理界面 其功能为通过输入学生的学号或者学生的姓名获得学生的就业信息,包括就业单位、单 位性质、单位所在省份和单位所在城市,并允许用户修改和删除某个特定学生的就业信息。 5.3 创建试图组件 在这里例子中包含两个视图组件: 一个 JSP 文件:studentEmployment.jsp。 一个 ActionForm Bean:StudentEmploymentForm(.java) 。 例程 5-1 为 studentEmployment.jsp 的主要源代码。 例程 5-1 studentEmployment.jsp(部分) . . 查询条件 条件类型 学生学号 学生姓名 本科毕业论文 18 查询 清除 . . “”表示该部分代码省略 我们可以看到这里没有任何 Java 程序代码,只是用了 struts 的客户化标签,如: 和等,这些客户化标签是联系视图组件和 struts 框架中其他组件 的纽带。使用这些标签可以访问和显示来自控制器和模型组件的数据。 这里的 相当于 Html 中的 。 这里的 相当于 Html 中的 。 而这里的 学生学号 学生姓名 相对于 Html 中的 学生学号 学生姓名 例程 5-2 为 StudentEmploymentForm.java 的源程序,它用来处理 studentEmployment.jsp 中的表单数据。 例程 5-2 StudentEmploymentForm.java package edu.xmu.sw.form; import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; 本科毕业论文 19 import org.apache.struts.action.ActionMessage; public class StudentEmploymentForm extends ActionForm private String type; private String condition; public ActionErrors validate( ActionMapping mapping, HttpServletRequest request) ActionErrors errors=new ActionErrors(); if(condition=null | condition.length() 设置数据源 本科毕业论文 24 设置一个forward,名为“employList” “”代表该部分省略 从上面的例子可以看出这样开发编码量要远大于不使用 Struts 开发框架开发的编码量, 但是这样开发虽然层次分明,对于提高后期开发及软件维护有很大好处。其他的功能也将使 用相同的方法开发。 本科毕业论文 25 第六章 界面及功能 6.1 学生信息查询 该模块的功能是根据用户输入的查询条件,从数据库中查找到指定学生的详细信息。查 询条件包括学号、姓名、性别、学生类型、年级、籍贯和政治面貌。用户可以根据需要任意 输入已知的查询条件来进行查询。其界面如图 6-1 所示。 图 6-1 学生信息查询 其查询结果以列表方式显示给用户,如图 6-2 所示。 图 6-2 查询结果列表 在列表中仅显示了学生的部分信息,如果用户希望查看某个学生的详细信息可以点击 “查看详细资料”来查看。如图 6-3 所示。 本科毕业论文 26 图 6-3 学生详细信息 今后的进一步开发过程中,将可能为学生详细信息查看功能中加入更加详细的信息,以 方便相关人员更快地查询本院学生的信息。 6.2 就业信息 该功能模块主要提供毕业生就业信息的管理及分析。 6.2.1 本院学生就业情况查询管理 通过输入学生的学号或者姓名查询该学生的就业信息,同时可以修改或者删除某个特定 学生的就业信息。其界面如图 6-4 所示 图 6-4 本院学生就业情况查询管理 其查询结果如图 6-5 所示。在查询结果中用户可以点击“修改”来修改某个学生的就业 信息,也可以点击“删除”来删除某个学生的就业信息。 本科毕业论文 27 图 6-5 就业信息查询结果 6.2.2 添加学生就业信息 该功能用于添加某个学生的就业信息,在添加前要先输入该学生的学号,以验证该学生 是否是软件学院的学生,如果验证成功,也就是说软件学院存在该名学生,则生成添加表单 如图

温馨提示

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

评论

0/150

提交评论