教务管理系统的开发

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

教务管理系统的开发

(采用面向对象方法开发)

1 问题分析

教务管理是高校必不可少的管理内容,烦琐、复杂而准确度要求高。随着高校扩招和信息化的进程,教务管理日趋复杂,龙其是选课、排课和成绩管理。在此,围绕选课业务所涉及的业务内容开发一个简单的教务管理系统。教务系统业务包括如下内容。

(1)学生管理:系统管理员对学生基本情况进行登记、删除和修改。学生可以查看自己的信息。

(2)教师管理:系统管理员对所有专职教师进行曲登记、删除和修改,包括教师任课信息。教师可以查看自己的信息。

(3)课程管理:系统管理员对本校所有开过课程和新开课程进行登记、删除和修改。

(4)选课程管理:每学期开学以前要进行学生选课工作。学生可以在所有开设课程中选择自己尚未选择的课程。

(5)成绩管理:期末考试结束后,教师登录学生成绩,各学院将学生成绩结果报教务处。学生可以查看自己的成绩。

2 可行性研究

1.经济可行性

2.技术可行性

3.社会可行性

3 面向对象的分析

3.1 建立用例模型

根据问题分析的业务描述,得到系统用例图如图1所示。每个用例规约如表1至表9所示。

图1 系统用例图

表2 “注册”用例规约

表7 “选课”用例规约

表8 “录入成绩”用例规约

3.2 建立类模型

根据用例图寻找系统类(实体类)。本系统中的实体类共有5个:用户、学生、课程、教师、成绩。类图如图2所示。

图2 教务管理系统的类图

3.3 创建顺序图

有了用例图和用例规约,可以对系统有一个初步的了解,为了更全面地掌握系统的处理流程,下一步可以选用顺序图描述系统的处理顺序。对每个用例或者相关的几个用例可以创建一个顺序图。在本系统中,除了身份验证、修改密码、查询成绩用例外,其余用例涉及的主要内容就是对信息的管理(增加、删除、修改)操作。因为都是同类的处理,所以这里只对学生基本信息管理用例和选课管理创建顺序图,可以用它来理解其他的用例处理过程。

学生信息管理顺序图如图3所示,选课管理顺序图如图4所示。

图3 学生信息管理顺序图

图4 选课管理顺序图

4 数据库设计

数据库设计是在DBMS的支持下,按照应用的要求设计出合理的数据结构。由于采用了面向对象的开发方法,这里给出类模型到关系模型的转化过程。本系统用MySql数据库,系统数据库名称:教务信息库:jwglxt。

4.1 类模型到关系模型的转化

对3.3中得到的类型模型进行分析,有用户、学生、课程、教师、成绩5个实体类。考虑到实际应用中,教师和所授课程变化频率较高,因此,将关联类授课作为一个单独的关系模式,用来描述教师和所授课程的关系。选课变化的频率较高,将关联类选课也作为一个单独的关系模式。其余各个实体类分别映射成数据库中的关系模式。

4.2 数据库结构

(1)表名:用户信息表(如表10所示)。

标志:systemUser。

(3)表名:学生信息表(如表11所示)。

标志:student。

(4)表名:教师信息表

(5)表名:成绩表

(6)表名:教师授课表

(7)表名:选课表

5 面向对象的设计

5.1 设计软件类

1.实体类

在OOA阶段得到的是类图中的类都是实体(关联)类,包括用户实体、学生实体、课程实体、教师实体(教师信息和教师任课信息)、成绩实体、选课关联、授课关联。每个实体类在实现的时候要对应一个数据对象。

2.边界类

由用例模型可知,每个用例实现要对应一个页面,也就是一个边界类。其中,“选课”用例要对应选课和查看选课结果两个页面。在系统实现中,每个边界类要对应一个页面,如果使用JSP制作页面,那么每一个边界类对应一个JSP文件。考虑到再添加一个系统的首页,本系统的边界类有:

●login.jsp——用户登录边界类

●modifyPassword.jsp——修改密码

●regist.jsp——注册

●index.jsp——系统首页

……

3.控制类

控制类的作用是控制每个程序的流程和程序的执行状态,而本身尽量不要完成业务功能,通过对各个组件的设计调度完成整个的应用程序。为每个用例实现建立一个控制类,控制用例实现过程的程序流程。原系统共有9个用例,那么需对应9个控制类,由于控制类的实现方式取决于编程使用的程序框架和程序结构,因此在设计阶段不给出控制类的文件名。系统的9个控制类如下。

(1)登录控制类。接收登录请求,控制登录过程的执行状态,调用模型,得到处理结果,转发请求给index.jsp。

(2)修改密码控制类。接收修改密码请求,控制修改密码的执行状态,调用模型modifyPassword.jsp。

(3)注册控制类。

(4)学生信息管理。

(5)教师信息管理。

(6)课程信息管理。

(7)选课管理。

(8)录入成绩。

(9)成绩查询。

5.2 设计软件体系结构

本系统采用MVC设计模式搭建程序结构,模型用来完成对业务逻辑的封装;控制器控制各个程序流程,也就是上一步设计的控制类的实现;视图用来显示页面,也就是上一步设计的边界类的实现。

模型部分除了包含对上一步设计的实体类的属性封装外,还需要实现实体类对应的各个方法。对全部的业务功能进行分类,设计各个业务Bean如下。

1.chooseCourseService.java

用于处理选课业务,包含下面的方法:

●student_showCourse()——显示目前已开设的课程。

●insertChooseCourse(String studentName, String[] courseName)——插入一条选课

记录。

●finishCouser(String studentName)——查询已选课程。

2.operateService

实现用户的相关操作业务,包含下面的方法:

……

5.3 人机交互界面设计

6 面向对象实现

6.1 制定代码规范

6.2 编写代码

相关文档
最新文档