基于UML的教务管理系统建模与分析
2021-12-09王璐
王 璐
(青岛科技大学 山东 青岛 266000)
1 引言
教务管理是高校的核心业务之一,支撑高校各项基础工作的顺利开展,诸如课程管理、排课管理、调课管理、教室管理等。随着信息化技术的发展,教务管理也从原始的基于手工处理的方式,逐步发展成为基于移动互联网的电子化处理方式[1-3]。在这个过程中,教务管理系统也由简单到复杂[4-6],逐步成为高校信息化体系中最重要的组成部分。为此,本文根据当前教务管理系统的主要需求,通过UML对其进行建模与分析,为教务管理系统的下一步发展提供参考。
2 教务管理的角色分析
2.1 用户群分析
建立一个良好的教务系统,首先要对系统所服务的人群进行充分分析。通过在工作中的总结,可将教务管理系统主要服务对象分为:教务管理人员(包括教务处人员、学院教学院长及教学秘书)、普通任课教师、学生(包括本科生、研究生)三大类。每一大类人员在不同的高校中还会更加细分为具体的人员类别,相同类别的人员有其主要关注的业务功能。需要注意的是,某些时候人员类别之间可能会存在交叉,例如,教务管理人员有可能也是任课教师,某些任课教师可能也在本校进修博士研究生等情况。这就要求系统需要提供完善的权限管理与角色管理功能。
2.2 用户群用例分析
在上述用户群分析的基础上,针对每一个用户群进行用户需求挖掘与用例分析。一般来说,对用户需求挖掘的主要方法包括以下几种:(1)当前系统分析,通过对现有教务系统的功能进行剖析,逐一分析出每一大类用户所关注和使用的业务和流程。(2)用户调研,通过访谈或者问卷调查,收集用户对新教务系统的期望,通过动词分析与名词分析技术,总结出用户所需功能。(3)用户工作流程建模,通过深入用户工作环境,抽象用户的工作流程建立系统功能。通过以上需求获取方法,可以得到上述用户群的用例图,见图1。
图1 用户用例图
3 教务管理的功能分析
基于上述对用户用例的分析,可以构建出教务管理系统的主要功能模块,主要包括课程管理模块(对应用例:课程管理)、教学管理模块(对应用例:制订教学计划、选课、排课)、审批模块(对应用例:调停课申请、调停课审批)、成绩管理模块(对应用例:录入成绩、查询成绩)、查询模块(对应用例:课表查询、调停课查询)、评教模块(对应用例:在线评教)、管理模块(对应用例:用户管理、权限管理、数据管理),见图2。
图2 系统主要功能模块
4 关键流程建模
通过上述分析,本文给出了教务管理系统所需提供的主要功能和模块划分。下一步需利用UML模型对教务系统的关键业务流程进行建模,进而明确关键业务流程的处理过程,为后续开发提供基础。本文选取教务系统中的选课流程和调课流程为代表,分别利用UML活动图和UML状态转化图进行建模分析。
4.1 选课流程活动图建模
在高校教务管理中,一个典型的选课流程应包括以下阶段:(1)学生登录系统后,查看本学期已选的课程列表。(2)学生可通过浏览、筛选和搜索的方式查看所有的选修课信息。(3)学生可查看某一个选修课的详细信息,包括选修限制、课时、学分等。(4)学生可选择某一个选修课,加入自己的课表,此时系统自动判断该学生是否可以选择该课程,并给出提示。(5)学生选课完毕,保存课表,关闭系统。其UML活动图见图3(a)。
4.2 调课流程状态图建模
教师调课是教务管理系统中的一个常用功能。通常情况下,一个调课申请需要多人审批后才能实现,调课单作为系统中的一个对象也经过了多种状态的流转。典型的审批流转包括:(1)教师新建一个调课单,填写相关调课信息。(2)教学秘书审批后,调课单标记为“教学秘书已审批”。(3)学院教学院长审批,调课单标记为“教学院长已审批”。(4)教务处审批,调课单正式生效。利用UML状态转换图对其建模,见图3(b)。
图3 主要流程UML模型图
5 系统数据库设计
通过上文对教务系统的分析,得到了教务系统的功能分布和关键流程模型。为了实现上述功能,系统中必须使用数据库实现上述流程中的数据流转,而数据库的建立必须建立在对系统内部对象的分析与建模之上。为此,本节根据上述分析系统中主要的对象关系,主要得到以下对象。
(1)学生对象,其数据库模式为:学生(学号、姓名、性别、身份证号、出生年月、所属学院代码、所属专业代码、班级、其他信息),其中学号为主键,所属学院代码、所属专业代码为外键。
(2)教师对象,其数据库模式为:教师(工号、姓名、性别、身份证号、所属学院代码、参加工作时间、职称、身份类型、所在岗位代码),其中工号为主键,所属学院代码、所在岗位代码为外键。
(3)课程对象,其数据库模式为:课程(课号、课程名、学时、学分、开课学院代码、课程类型代码),其中课号为主键,开课学院代码、课程类型代码为外键。
(4)选课对象,该数据库模式是为了将学生对象与课程对象联系起来,记录每一个学生所选课程的情况。具体的字段包括:选课(选课编码、学号、课号),其中选课编码作为该模式的主键,是唯一的编码,用于唯一标示某条选课信息,学号和课程号为外键。在更新或查询选课信息时,其他的诸如开课时间、任课教师、学时学分等选课信息均通过课号外键从课程对象、授课对象中关联获取。
(5)授课对象,该数据模式是为了将任课教师对象与课程对象联系起来,记录每个任课教师的承担课程的情况。具体的字段包括:授课(授课编码、工号、课号、开课学期),其中授课编码作为该模式的主键,是唯一的编码,用于唯一标示某条授课信息,工号、课号为外键,开课学期为本次授课所对应的学期信息。某一门课可能被同一教师在不同学期开课。在更新或查询授课信息时,其他的诸如授课班级、授课人数等均通过外键关联查询。
除上述主要数据库模式之外,系统中为了实现权限管理、用户管理等,还需要设计一些用户表、权限表等数据库模式。由于这些表较为常用,本文不再赘述。上述各类数据库模式为系统数据的存储提供了有力的保障。
6 系统部署的选择
传统的信息化系统通常通过网站(B/S结构)或者PC桌面应用程序(C/S结构)进行部署,并主要集中在学校内部校园网中运行。而进入移动互联网时代之后,传统的软件部署方式已经无法满足用户的要求。因此,本文所设计的系统采用以B/S结构部署为基础,增加手机移动端APP访问的功能。为了实现手机APP的访问,系统不能仅仅部署在校园网内,而是必须提供外网访问的接口。为了保障安全性,则需要联合部署相应的防火墙和VPN系统,或者为公网访问接口提供的独立的服务器支持,从而避免外部的网络攻击行为对校园网内部系统造成影响。典型的网络部署结构图见图4。
图4 系统部署图
7 结语
本文根据当前高校教务管理的工作流程,通过UML对教务管理系统进行了建模和分析,提供了基本的用户需求用例图以及主要流程的UML动态模型,并在最后提出了支持手机APP访问的系统部署方式,对类似教务系统的设计与开发提供了有益的参考。