《UML大作业排课系统.pdf》由会员分享,可在线阅读,更多相关《UML大作业排课系统.pdf(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、面向对象的系统分析与设计(面向对象的系统分析与设计(UMLUML)课程作业)课程作业自动排课系统自动排课系统第第1 1组组小组成员 1:小组成员 2:小组成员 3:-I-评分标准评分标准班级学号姓名承担工作评语自我打分教师打分-II-自动排课系统自动排课系统一一.系统功能分析:系统功能分析:系统功能描述:(1).课程规划人员必须在排课之前规划好本学期各专业的课程,并且要保证各个专业学生学期总学时不高于某个规定值。(2).教师可以提前申请教授课程,可以根据自己的代课课程提出对媒体教室的需求。需要教师填写个人代课意向申请,教师意向将在系统排课时被优先考虑。(3).系统根据教室的多媒体安装情况、座位
2、数,专业课程设置情况,教师意向,选课学生数量等信息进行排课,使尽可能满足各种用户的要求;支持教师对课表更改进行申请,系统给予微调整。(4)教室管理员根据对教室设备的更新情况修改教室配置的基本信息。(5)系统管理员规定一确定时间进行系统自动排课,到这一时间时,系统将自动进行排课,生成课表。(6).课表生成后,所有用户将有权对课表按班级、教师、教室等不同方式进行的查询。二二 UMLUML 图图1.活动图(1).课表自动生成活动图(2).教师申请更改课表活动图2.用例图申请课表更改学生(from Actor)(from Usecase)课表更改(from Usecase)系统管理员(from Act
3、or)课表查询(from Usecase)任课教师(from Actor)课程规划人员(from Actor)教室管理员教室使用状态设置课表生成(from Usecase)(from Usecase)(from Actor)规划专业课程(from Usecase)安排上课教室及时间(from Usecase)安排代课教师(from Usecase)提交个人意向(from Usecase)用例描述文档:用例编号用例编号用例名称用例名称参与者参与者过程描述过程描述UC001系统自动排课系统管理员 教师 课程规划人员1)收集整理教师的代课意向,教师意向享有优先权。2)查询空闲时间表数据库,班级课程数
4、据表,教室媒体信息选择第一适合时间。3)根据教师申请更改课表进行微调整。4)根据教室多媒体信息变更进微调整。用例编号用例编号用例名称用例名称参与者参与者过程描述过程描述UC002教室时间安排系统管理员 教师 教室管理员1)根据教师的个人意向、课程讲授时间需求和教室的多媒体安装情况、座位数安排教室,时间,保证教师的讲授时间不冲突。2)为已安排教室和时间的课程的代课教师安排其他教学任务的教室和时间。3)重复 1)2)操作,直至将所有课程安排完成。4)对课表进行微调用例编号用例编号用例名称用例名称参与者参与者过程描述过程描述UC003申请更改课表教师1)当教师对已排好的课表不满时,可向系统管理员提出
5、更改申请,在资源允许的情况下对课表进行修改。2)教师用户登录系统后,选择需要更改课表的班级、节次。选择能满足该班级教学的教室,包括教室座位数,多媒体安装情况等。3)提交申请。3.概念层次类图访 客教 师1.*学 生课 程 规 划 人 员系 统 管 理 员1.11.*1.11.1教 师 个 人 意 向1.*班 级课 程 规 划课 程 表 容 器1.*课 程教 室班 级 课 程 表4.顺序图:系统管理员:管理窗口:教师个人意向:教师:教室:课程表结点:课程规划:课程规划人员1:课程规划管理()2:构造课程规划()4:3:5:设置接受个人意向时限(Date)6:设置个人意向(String,Boole
6、an)7:构造个人意向()8:接收个人意向填写(教师个人意向)9:10:读取教师个人意向()11:验证代课资格(课程)12:分配教室(班级,Boolean)13:14:构造课程表结点(班级,Integer,教室)15:添加到班级课程表(班级)16:17:18:5.状态图(1).班级课程表状态图班级课程表状态图生成前执行自动课表生成 提交申请截止时间起 更改课表 教师用户成功提交更改课表申请 生成后使用更改课表适用学期结束废弃(2).班级状态图班级状态图添加新班级注册正常注册操作错误注销班级 学生毕业 注销(3).教室状态图教室状态图教室初始设置空闲预留专用取消预留设置更改教室 教师成功申请更改
7、课表 安排授课 自动排课时 授课占用6逻辑层次类图访客+按照课程查看课表()按照教室查看课表()按照教师查看课表()查看课表生成时间()登陆()()教师+教师编号+教师姓名+教师个人意向+设置个人意向()1.*验证代课资格()调课申请提交()注销()()1.11.*1.1学生+学号姓名专业班级:in:st:st:in系统管理员课程规划人员+课程规划管理()+管理人姓名:int+添加教师()注册新班级()注销班级()注销学生()设置排课时间()+选课()0.10.*教师个人意向+意向人:Tea+代课课程意向:Les+上课时间要求:boo+读取教师个人意向+构造个人意向()班级+班级编号专业班级人
8、数班级课程表:int:std:int:Cla0.1课程规划+专业:st+学期:st+规划课程:Le+获取班级规划+构造课程规划课程表容器+课程表编号:std:+使用班级:int+新班级注册()+班级注销()0.*教室课程+课程编号课程名称使用限制学分学时:in:st:bo:in:in-+教室楼号教室号多媒体安装情况座位数:int:int:boo:int班级课程表+上课时间课程任课教师教室上课班级学年学期:in:Le:Te:R:C:in:st设备更新()设备删除()设置教室专用信息()分配教室()7.设计层次类图访客+按照课程查看课表()()按照教室查看课表()()按照教师查看课表()()查看课
9、表生成时间()()登陆()():ClassTimeTable:ClassTimeTable:ClassTimeTable:int:void学生+学号姓名专业班级:int:std:string:std:string:int教师+教师编号:int+教师姓名:std:string+教师个人意向:bool+设置个人意向()()验证代课资格()()调课申请提交()()注销()()1.1系统管理员课程规划人员+课程规划管理():Lesson+管理人姓名:int+添加教师()注册新班级()注销班级()注销学生()设置排课时间():Teacher:Class:void:void:bool+选课():Class
10、TimeTable1.*0.1:bool:bool:bool:void1.*1.10.*教师个人意向+意向人:Teacher+代课课程意向:Lesson+上课时间要求:bool+读取教师个人意向():void+构造个人意向():Lesson班级+班级编号专业班级人数班级课程表:int:std:string:int:ClassTimeTable课程规划+专业:std:string+学期:std:string+课程规划:Lesson+获取班级规划课程():void+构造课程规划():void课程表容器+课程表编号:std:string+使用班级:int+新班级注册():int+班级注销():voi
11、d*教室课程+课程编号课程名称使用限制学分学时:int:std:string:bool:int:int-+教室楼号教室号多媒体安装情况座位数:int:int:bool:int:bool:void:void:void+班级课程表上课时间课程任课教师教室上课班级学年学期:int:Lesson:Teacher:Room:Class:int:std:string设备更新()设备删除()设置教室专用信息()分配教室()8.组件图自动排课系统构件图自动排课系统收集教师代课意向课表查询课表更改课表生成安排代课教师安排授课时间、教室9.部署图10.持久类类图及关系模型(1).持久类类图教 师学 生1.*班 级 课 程 表1.*1.1班 级0.*教 室课 程(2).对应关系模型教师(教师编号,教师姓名)学生(学号,姓名,专业,班级)班级(班级编号,专业,班级人数,班级课程表)课程(课程编号,课程名称,使用限制,学分,学时)班级课程表(上课时间,课程,任课教师,上课班级,学年,学时)
限制150内