软件工程概论-案例分析
9
2.1.3 排课流程
各学院把课元信息提交给教务处,教务处根据全校教师情况, 教室资源情况,老师的特殊要求利用排课系统排出预排课表, 学生根据预排课表选课,教务处在学生选课后,根据各个选课 班的人数,撤销人数小于15人(特殊课程除外)的选课班。课程 表包括全校总课程表、学生课程表、教师课程表和教室课程表。 课程表由教务处编制,不得随意变动。如因特殊情况调整,须 按学校有关规定办理手续,并由教务处下达调课通知。执行流 程如图4所示。
身份验证类型,包括windows身份验证和SQL server验证, 然后输入必要的服务器名称或者地址,数据库名称,用户 名及密码等信息,之后可以测试数据库是否配置正确,把 正确的配置记录下来。 (2)学年学期设置:设置当前要处理和安排的课程是哪个学年 和学期的。 (3)导入数据:首先,检查所需数据库表是否存在。这些数据 库表是要处理的数据来源。然后,创建所需的新数据库表。 这些数据库表是要处理的数据的存放地。如果表不存在就 创建,存在就不创建。最后,从源数据库表中导入数据到 目标数据库表中。导入新数据和更新旧数据。
排课系统 Timetable System
案例分析 Case analysis
1
1 系统简介
课程的安排是学校教学系统中的一个重要环节,是维护学校教学 秩序正常进行的重要保证。随着在校学生的增多,课程类别的多样 化,学生选课的自由度增加,使得课程的安排工作日益复杂和繁琐, 所以学校课程安排的合理与否直接体现了教务部门的工作效率和学 校的教学质量。课表在整个学校的教务管理越来越显示其重要的地 位和核心的作用。由于计算机具有运算速度快、处理能力强等特点, 已经成为在教学工作每时每刻离不开的工具,用计算机代替手工排 课势在必行。目前使用计算机进行自动排课,可以使教务管理人员 迅速掌握全校教学情况,提高教务管理工作的效率,加快其现代化 进程,可看出加强学校的课程安排工作对学校教务管理工作具有非 常重要的意义。所以,研究高效率、灵活强、自动化程度较高的自 动智能排课系统,不仅在高校的教学管理工作中具有重要意义,也 是新时代教育背景下和实行学分制方案下的迫切需求。
20
21
22
(3)教室管理
包括添加、修改、 查询、删除教室。 在原始的教务管理 管理系统中没有教 室的管理,为了完 成排课新增加了这 个子系统。
23
(4)教学任务管理
包括设定学期要求、设 定校区、设定教学方式。
(l)学期要求:可以设定课 程安排在前半学期,后 半学期,全学期,或者 没有前后学期的要求。
教学任务书中要明确所要开设的课程、应开设班级 数目(班别)、课程开设的校区等信息。其中,某课 程应开设的班级数,是由要选修该课程的学生总数 及该课程的参考容量决定的,各学院可以根据自身 情况对其进行调整。教务处工作流程如图2所示。
8
2.1.2 学院工作流程
教学任务书下达到各学院后,各学院根据自身教师 情况,可以适当调整教学任务书中某课程的开课班 级数及班级容量。然后,在教学任务书中为每门课 程的每个班添加老师,以及该课程对教室的要求, 这样形成的信息称之为课元信息。同时学院的老师 可以向教务处提交特殊时间要求,如星期三下午, 信息学院领导因工作会议,不能安排上课。学院工 作流程如图3所示。
35
3.4 非功能性需求
非功能性需求主要规定了系统必须满足的服务 水平、系统非运行时间的属性以及系统必须遵 守的约束。它不会直接系统功能,但在用户和 系统支持人员对系统的认可方面具有很大的影 响。其主要包括系统的约定于假设条件,系统 地可用性、可靠性、性能、扩展性、可支持性、 系统接口。
36
3.4.1 安全可靠性
(2)自动排课:前提是已经导入数据,并且已经初始化。然 后自动排课。
(3)手工处理:包括取消已经排好的课程,安排没有排好的
课程。改变起始周和结束周,冲突检测,查看排课失败的
原因。
26
27
28
29
(6)课表管理
包括学生课表、教师课表、教室课表、各学院教 师课表、总课表的管理。对于这些课表都有查看, 导出Excel和打印功能。
(2)校区设定:设定课程在 哪个校区,可以指定校 本部校区,医学院校区。
(3)教学方式:设定教学方 式,包括传统教学,多 媒体教学。
24
(5)排课管理
包括排课初始化、自动排课、手工排课三项。 (l)排课初始化(包括教室初始化、自动排课初始化、
手工排课初始化和设定课程优先级)。 初始化教室使用情况。对所有课程,开始排课之
15
3.2 用例分析
可以创建系统管 理员、教师、设计出排 课系统的总用例 图如图6所示。
16
(1)系统管理
实现对用户及其权限的管理。为了确保数据库的 安全,为不同的用户提供不同的操作权限。权限 不同的用户对数据库的操作范围不同,对于一些 权限低的用户,甚至没有处理数据库的权力。用 户管理功能的用例图如图所示。
前需要初始化教室使用情况。还有学期,多媒体 教学,课程优先级等方面的数据需要转换。同时 完成教学任务表中课程排课状态的设定。 对于自动排课,开始排课之前需要初始化教室使 用情况。还有学期,多媒体教学,课程优先级等 方面的数据需要转换。同时完成教学任务表中课 程排课状态的设定。
25
排课管理
对于手工排课,开始排课之前需要初始化教室使用情况。 还有学期,多媒体教学,课程优先级等方面的数据需要转 换。同时完成教学任务表中课程排课状态的设定。
(1)学生课表可以按照学号或姓名查询。 (2)教室课表可以按照编号或名称查询。 (3)教师课表按照教师编号或姓名查询。 (4)各学院教师课表可以按照学院一次性导出某个
学院的所有教师的课表,并且可以打印。 (5)总课表显示所有教室的所有课程课表。
30
31
32
3.3 动态行为模型
动态模型描述系统随时间变化的行为,这些行为 通过从静态视图中抽取的系统瞬间值的变化来描 述。
10
2.1.4大学排课总流程
排课工作开始后,教务处根据各年级各专业培养方案、 各年级各专业学生人数、课程性质,生成教学任务书, 其包括要开设的课程名称、该课程要开设的班级数(班 别)、校区等信息。教学任务书下达到各学院后,学院 根据自身教师情况,修改某些课程的班级数目及相应的 班级容量,之后为教学任务书添加老师,并提出课程对 教室的要求,及学院老师对上课时间的要求(如某个时 间段不能安排课程),这样就形成了课元信息。学院再 将课元信息提交教务处,教务处根据教师情况,教室资 源情况,教师的特殊要求利用排课系统排出预排课表, 学生根据预排课表选课,教务处在学生选课后,根据各 个选课班的人数,撤销人数小于巧的选课班。教务处可 以根据具体情况调整课程表,并下达调课通知。执行流 程如图5所示。
对排课系统需求分析,主要包括确定系统角色、 建立用例模型和用户界面原型设计。从功能上 看,排课系统可以分为六个子模块:系统管理、 原始数据管理、教室管理、教学任务管理、排 课管理、课表管理。
14
3.1 功能需求描述
(l)能适合学分制对排课的要求,以单个学生作为上课的对象; (2)自动排课:对于普通课程和有特殊要求或者特殊形式的课程,可以 处理; (3)手工排课:根据实际需要,进行部分课程的人工排课,并在手工排 程中提供冲突检测功能辅助人工排课: (4)可以生成任意班级的上课课表; (5)可以生成任意任课教师的上课课表; (6)可以生成任意任课教室的上课课表; (7)提供用户(教师、学生和教室管理者等)查询课表接口; (8)权限设置:出于对数据安全、数据修改、方便维护和查询等考虑, 置不同操作者的系统使用权限; (9)可以形成报表,并能以其它格式进行输出。
2
1.1 排课系统目的
随着网络技术的不断发展,利用网络进行多媒体教学和 先进管理,使日常教学与管理得到了蓬勃的发展。在开发 项目过程主要适应高校目前以学分制为主的教学改革需求 下,使得各学院、教学单位及教务处通过校园网进行各种 教学活动和管理,从而很大程度上提高办公的效率和质量。 使得更好的适应高校信息化建设的步伐,顺应网络应用教 学管理、教学监控等多方面的需求,开发的通用性基于校 园网网络教学管理平台,可以使教务人员、教师、学生在 任何一台连接校园网的计算机完成大量的各项教学活动和 任务。目的在于,为学校提供基于Web的教学和管理方式; 实现网络化管理学校硬件资源(教学环境和教学设施)和软件 资源(教职工、学生);实现网络管理有利于学校日常教学管 理活动(排课、学生选课、考试安排、成绩查询、学生评教 等)。
5
2 系统需求分析
高校排课系统的目的是利用计算机处理技术对 高校排课问题进行高效准确的解决。由于其是 “高校教务管理系统”这一综合项目的子项目。 排课系统的设计必需建立在对排课流程的详细 分析的基础之上。
6
2.1 业务流程分析
大学排课工作的基本流程如图1所示。
7
2.1.1 教务处工作流程
教务处根据各年级、各专业的培养方案,学生人数 结合考虑课程性质向各个学院下达教学任务书,明 确这学期的教学要求。
最大程度地保证数据库中基础数据的安全。
3
1.2 现状分析
高校的课表安排是一项十分繁重而复杂的工作, 它涉及几十甚至上百个专业、几百门课程、几百 名教师的合理安排。然而教、实验室等资源又有 限, 更给排课增加了难度。在整个排课过程中, 自 始至终充满了冲突, 其中包括上课班级、所开课 程、任课教师、上课时间、上课地点等5 个方面 在排列组合中所发生的冲突与矛盾。班级多、课 程门类多、教师少、教室少是发生冲突和矛盾的 重要因素。为了减轻劳动强度, 提高工作效率, 人 们自然想到利用计算机来解决排课问题。
系统应能准确、安全、可靠的运行,具备较强的操作 弹性能力,保证数据一致性,确保排课的顺利进行。
另外,系统中的许多基础信息是学校教学管理中的重 要基础信息,为了确保这些信息不被改变或破坏,为 系统设计三级安全体系。