1、 1 课 程 设 计 论 文 基于 JAVA 的学生成绩管理系统的设计与实现 THE DESIGN AND REALIZATION OF THE RESULT OF STUDENT ADMINISTRATION MANAGEMENT SYSTEM ON THE JAVA 学生姓名: 学 号: 年级专业: 指导老师: 学 院: 提交日期: 2009 年 11 月 2 目 录 摘 要 .3 前言 .4 1 需求分析 .4 1.1 功能需求分析 . 4 1.2 性能需求分析 . 5 1.3 数据库需求分析数据流图 . 5 1.4 数据结构分析数据流图 . 6 2 概要结构设计 .8 2.1 系统功能
2、结构设计 . 8 2.2 数据库概念结构设计 . 9 3 逻辑结构设计 . 10 4 详细设计及功能实现 . 10 4.1 模块设计与实现 . 10 5 总结 . 21 参考文献 . 21 致 谢 . 21 3 基于 Java 的学生成绩管理系统的设计与实现 作 者:周亚平 指导老师:陈义明 (湖南农业大学科学技术师范学院 2004 级计算机科学与技术专业教育班 ,长沙 410128) 摘 要 : 随着计算机技术的飞速发展和高等教育体制改革的不断深入,传统教育管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成教学管理工作。提高教学管理水平的主要途径是更新管理者的思想,增强对管理活
3、动的科学认识。 基于 Java 与 SQL server数据库 技术建立一个 高校成绩管理系统该系统为管理员、学生和教师提供了查询、修改、增加记录、删除等功能,功能比较落齐全,基本上能满足学生和老师的要求。 关键词 : Java;需求分析;概要设计;学生成绩管理系统; The Design And Realization Of the educational administration management system Based On JAVA Author: Zhou yapping Tutor: Chen yiming ( School of Information Science
4、technique normal school,Hunan Agricultural University,Changsha, 410128) Abstract: Fly technically along with the calculator to develop soon and the higher education system reform of continuously thorough, traditional education management the method, means and work efficiencies have already cant adap
5、t the new development demand, cant complete the teaching management work nicely.The main path that raises the educational administration management level is a thought that renews the governor, strengthenning the science understanding to manage the activity.According to the JAVA build up that system
6、of an educational administration of high school management systems pursue studies with the database technique to living to provided the search, modify, save, increase the record and select elective courses etc. with teacher function, the function relatively falls well-found, can satisfy the request
7、between student and teacher basically. Keyword:JAVA; The need analysis; The essentiadesign; Database; Detailed design 4 前言 学生成绩管理工作是高校教育工作的一项重要内容。教务管理工作是指学校管理人员按照一定教育方针,运用先进的管理手段,组织 、协调 、指挥并指导各用户活动,以便高效率、高质量地完成各项教学任务,完成国家所制定的教育目标。学生成绩管理工作是学校教学工作的中枢,是保证高校教学机制正常运转的枢纽,它是一项目的性、计划性、适用性、创造性和科学性很强的工作。学生成绩工
8、作关系到高校教学秩序的稳定。 随着计算机技术的飞速发展和高等教育体制改革的不断深入,传统教育管理方法、手段以及工作效率已不能适应新的发展需要,无法很好 地完成教学管理工作。提高教务管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。同时,运用先进的信息技术,开发高校综合成绩管理信息系统,是深化教务体制改革的有利措施。 JAVA 以 GUI 的编程方式、面向对象的程序设计、众多的 GUI 组件和强大的数据库应用开发支持,在竞争激励的开发工具市场中越来越羸得程序设计者的青睐。 JAVA 是 Windows 系统下的可视化集成开发工具,提供了强大的可视化组件功能,使程序员能够快速、高效地
9、开发出 Windows 系统下的应用程序,特别是在数据库和网络方面, JAVA 与其它开发 工具相比更是胜出一筹。可视化主要是指开发图形用户界面,而只需调用 GUI 组件即可。 1 需求分析 1.1 功能需求分析 该学生成绩管理系统具备三方面的功能:一方面是学生用户,学生通过输入学号和密码进下该系统后,可以进行一些基础查询(学生信息查询、班级信息查询、课程信息查询)、成绩管理(成绩查询、计算平均分)重新登陆系统;一方面老师进入该系统则比学生多一些权限:成绩输入、成绩查询。 具体功能 的详细描述 如下 1.1.1 选择 学生基本维护 菜单命令,即可进入 学生基本维护 功能窗体,在其中输入学生的相
10、关信息 ,如果需要添加或修改学生信息,则单击相应的按纽,输5 入新信息后单击 添加 就可以了。需要删除一条信息,则只要选择这条信息再点击 删除 。在搜索条件中输入相关的条件,单击 查询 就可查找信息。 1.1.2 选择 学生信息查询 菜单命令,即可进入 学生信息查询 功能窗体,在其中的下拉列表中选择你要看的信息,则在下面的表格中显示你要的信息。 1.1.3 选择 成绩管理 添加成绩 菜单命令,即可进入 添加成绩 功能窗体,此功能权限只有管理员和教师。 1.1.4 选择 成绩管理 输入成绩 菜单命令, 即可进入 输入成绩 功能窗体, 此功能权限只有管理员和教师。 1.1.5 选择 成绩管理 修改
11、成绩 界面,此功能规管理员所有。 1.1.6 选择 成绩管理 查询成绩 界面此界面对学生也是可见的,它的权限规所有用户所有。 1.1.7 选择 登陆 重新登陆 则会返回登陆界面,为用户提供方便。 1.1.8 选择 退出 将退出整个系统。 1.2 性能需求分析 时间特性要求:在软件方面,响应时间 有点慢 , 因为是用 JBuilder 做的,它占用内存比较大, 更新处理时间比较快而且迅速。 安全性: 设立 口令号 和密码验证方式,防止非法用户登录 进行 操作。 也就是用户只有管理员、学生和教师才能进入这个系统,用户凭口令号和密码进入此系统,系统会自动判断用户是那种类型,分别拥有不同的权限。 1.
12、3 数据库需求分析 数据流图 在 教务 系统中功能模块主要牵涉到的信息包括:是 学生 信息 ( base_info) 、班级信息 (class_info)、 课程 信息 (class_info)、 成绩表 (chengjibiao)、选课表 (xuankebiao)、登陆表 (stu)。 学生 信息:包含 学号 (id)、姓名 (name)、班级 (class)、性别 (sex)、地址 (address) 课程信息:包括课程编号 (course_id)、课程名称 (coursename)、教师( teacher) 选课表:编号 (select_id) 课程名称 (coursename)、课程编
13、号 (course_id)、学号 (xh)、 姓名 (name)、成绩 (result) 、教师( teacher) 成绩表:编号 (number)、学号 (id)、课程名称 (coursename)、成绩 (result)、教师6 ( teacher) 班级信息:班级编号 (bjbh)、学号 (id)、姓名 (name)班级名称 (bjmc)、班主任 (bzr)。 登陆表:口令号 (id)、密码 (password)、权限 (rightlimit)。 根 据 以 上 划 分 的 具 体 数 据 信 息 ,得到 数据流图如 1.1 所示 :1.1 数据库需求分析 数据流图 1.4 数据 结构
14、分析 数据流图 1.4.1 数据结构: 学生 信息 =组成: 学号 (id)、姓名 (name)、班级 (class)、性别 (sex)、地址 (address) 课程信息 =组成: 编 号 (course_id)、课程名称 (coursename)、教师( teacher) 选课信息 =组成: 编号 (select_id) 课程名称 (coursename)、课程编号 (course_id)、学号 (xh)、姓名 (name)、成绩 (result) 、教师( teacher) 成绩表包括 =组成:编号 (number)、学号 (id)、课程名称 (coursename)、成绩 (resul
15、t)、教师( teacher) 课程信息包括 =组成:课程编号 (course_id)、课程名称 (coursename)、教师( teacher) 班级信息 =组成:班级编号 (bjbh)、年级 (nj)、班级名称 (bjmc)、人数 (rs)、班主任(bzr) 登陆表 =组成:口令号 (id)、密码 (password)、权限 (rightlimit) 1.4.2 数据流 : 1.4.2.1 对图 1.1 中所涉及的 数据流 描述如下: 1) 数据流名: 口令号 说明:根据这个 口令号 定位到用户管理数据库,以便进行身份验证。 数据流来源:登陆界面输入的 口令号 和密码。 数据流去向:其中
16、用户 口令 信息将存在于整个操作过程中,防止非法登陆。 用 户 登 录 操 作 登陆信息 错误信息 账号信息 2 开发环境与工具介绍 前端客户端我用的是Macromedia Dreamweaver 8 来编写 JSP 文件。中间业务逻辑层的JavaBeans用的是JBuilderX EnterpriseX 版。数据库的编写是采用MYSQL 数据库。 2.1 开发环境 由于我用的是返回信息 寻找信息 数 据 库 7 数据流 组成: 口令号 (文本); 密码 (文本) 2) 数据流名: 寻找 信息 说明:根据 用户 在 学生信息维护 的时候所填写的信息。 数据流来源: 学生信息维护 界面 学生 输
17、入包含 学号 、 班级编号、名称等 。 数据流去向: 学号 将存在整个操作,其它的存入数据库。 数据流组成: 学号 (文本); 姓名 (文本) 等 3) 数据流名: 寻找 信息 说明:根据 用户在成绩管理 的时候所填写的信息。 数据流来源: 成绩输入、修改、添加等 界面 用户 输入包含 课程编号、课程名称、成绩、教师。 数据流去向: 学号、班级编号、课程编号 将存在整个操作,其它的存入数据库。 数据流组成: 课程编号( 文 本) 、课程名称( 文本) 、教师( 文本) 等。 4) 数据流名: 返回 信息 说明:根据 用户 在 学生信息维护 的时候所填写的信息 存入了数据库之后 。 数据流来源:
18、 由学生信息维护 界面 学生 输入 的 包含 学号、姓名、性别等存入数据库的。 数据流去向: 学生信息维护 界面 。 数据流组成: 学号( 文本) 、姓名( 文本) 、班级名称( 文本) 、性别( 文本)等。 5) 数据流名: 返回 信息 说明:根据 用户在成绩管理 的时候所填写的信息 存入数据库后 。 数据流来源: 由成绩管理 输入 的 包含 班级名称、教师、课程名、成绩存入数据库的 。 数据流去向: 成绩管理的各子 界面。 数据流组成 : 班级编号 (文本); 班级名称 (文本); 教师 (文本) 等 ; 1.4.2.2 对图 1.1 中所涉及 的处理过程 描述如下: 1) 处理过程 名:
19、登 陆 输入数据流: 口令号 、密码 8 输出数据流:不符合输入条件的错误信息 处理过程 逻辑:用 IF 条件进行判断。 2) 处理过程 名: 班级信息维护 输入数据流: 班级编号 、 班级名称、教师等 输出数据流: 班级编号 、 班级名称等 ,其中班级编号 将存在整个操作 。 处理过程号:班级编号,其中班级编号 将存在整个操作。 3) 处理过程 名: 学生信息维护 输入数据流: 学号、姓名、班级编号、性别等。 输出数据流: 学号、 姓名、班级编号、性别等。其中学号 将存在整个操作 。 4) 处理过程 名: 课程查询 输入数据流: 学号、姓名 输出数据流: 学号、班级名称、课程名称、上课时间节
20、、上课时间天、上课地点、其中课程编号 将存在整个操作 。 5) 处理过程 名: 成绩输入 输入数据流: 课程编号、课程名称 输出数据流: 编号、学号、课程名称、成绩 、其中编号和学号 将存在整个操作 。 2 概要 结构 设计 2.1 系统 功能 结构 设计 2.1.1 模块 的功能设计 根据需求分析阶段得到的功能需求,管理员、学生和教师用户通过输入口令号和密码进下该系统后,可以进行一些学生基础信息查 询(学生信息查询、班级信息查询、课程信息查询)、学生信息维护、成绩管理(成绩查询、计算平均分)重9 新登陆系统、退出。 模块功能 大概可以分为 如下 4 个 方面 :这几个模块 学生基础维护、成绩
21、管理、登陆、退出 。其中 基础维护 还要包括 学生信息维护、班级信息维护、课程信息维护。成绩管理 包括 成绩查询、添加成绩、成绩输入等。综上所述,得到客户端功能模块图 如下 2.1 所示。 2.2 数据库 概念 结构设计 根据 需求分析阶段得到的数据字典以及数据流图,由以上分析可以得到系统中出现的 实体有: 学生 信息实体、 课程信息 实体 、班级信息实体、成绩表实体等等。 可以画出对应的 E-R 图如下: 得到总 E-R 图 2.2 如下: 老师登陆 学生基本信息 成绩管理 登陆 退出 学生信息维护 学生信息查询 成绩查询 成绩修改 成绩输入 重新登陆 图 2.1 客户模块系统功能模块图 退
22、出 成绩添加 10 m 1 n 1 1 1 1 n 1 n 3 逻辑 结构设计 根据上面 概念结构设计阶段得到的 E-R 图,下一步应该将它转化为关系模型。 可以得到对应的关系模式为: Base_info( id、 name、 class、 sex、 address) Class_info( class_id、 classname、 teacher、 id) xuankebiao( number、 id、 coursename teacher、 class_id、 classname、 result) chengjibiao( number、 id、 name、 course、 result)
23、 course_info( number、 course-id、 coursename dates、 teacher、 jieshu、 address) stu( id、 password、 rights) 4 详细设计及 功能实现 4.1 用户登录模块设计与实现 设计思路: 为了检验 登录 用户是否是 一个 合法用户, 当 用户输入用户名和密码 后,需要查询数据库以便验证该用户是否为非法用户。同时通过用户输入的口令号就可知道用户是管理员、学生,还是教师,他们的权限不同。 xuankebiao course_info Class_info Base_info stu chengjibiao stady belong stady login choose