软件工程概论案例分析ppt课件.ppt_第1页
软件工程概论案例分析ppt课件.ppt_第2页
软件工程概论案例分析ppt课件.ppt_第3页
软件工程概论案例分析ppt课件.ppt_第4页
软件工程概论案例分析ppt课件.ppt_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

案例分析Caseanalysis 排课系统TimetableSystem 1系统简介 课程的安排是学校教学系统中的一个重要环节 是维护学校教学秩序正常进行的重要保证 随着在校学生的增多 课程类别的多样化 学生选课的自由度增加 使得课程的安排工作日益复杂和繁琐 所以学校课程安排的合理与否直接体现了教务部门的工作效率和学校的教学质量 课表在整个学校的教务管理越来越显示其重要的地位和核心的作用 由于计算机具有运算速度快 处理能力强等特点 已经成为在教学工作每时每刻离不开的工具 用计算机代替手工排课势在必行 目前使用计算机进行自动排课 可以使教务管理人员迅速掌握全校教学情况 提高教务管理工作的效率 加快其现代化进程 可看出加强学校的课程安排工作对学校教务管理工作具有非常重要的意义 所以 研究高效率 灵活强 自动化程度较高的自动智能排课系统 不仅在高校的教学管理工作中具有重要意义 也是新时代教育背景下和实行学分制方案下的迫切需求 1 1排课系统目的 随着网络技术的不断发展 利用网络进行多媒体教学和先进管理 使日常教学与管理得到了蓬勃的发展 在开发项目过程主要适应高校目前以学分制为主的教学改革需求下 使得各学院 教学单位及教务处通过校园网进行各种教学活动和管理 从而很大程度上提高办公的效率和质量 使得更好的适应高校信息化建设的步伐 顺应网络应用教学管理 教学监控等多方面的需求 开发的通用性基于校园网网络教学管理平台 可以使教务人员 教师 学生在任何一台连接校园网的计算机完成大量的各项教学活动和任务 目的在于 为学校提供基于Web的教学和管理方式 实现网络化管理学校硬件资源 教学环境和教学设施 和软件资源 教职工 学生 实现网络管理有利于学校日常教学管理活动 排课 学生选课 考试安排 成绩查询 学生评教等 1 2现状分析 高校的课表安排是一项十分繁重而复杂的工作 它涉及几十甚至上百个专业 几百门课程 几百名教师的合理安排 然而教 实验室等资源又有限 更给排课增加了难度 在整个排课过程中 自始至终充满了冲突 其中包括上课班级 所开课程 任课教师 上课时间 上课地点等5个方面在排列组合中所发生的冲突与矛盾 班级多 课程门类多 教师少 教室少是发生冲突和矛盾的重要因素 为了减轻劳动强度 提高工作效率 人们自然想到利用计算机来解决排课问题 1 3系统目标 高校排课系统的目的是利用计算机处理技术对高校排课问题进行高效准确的解决 由于其是 高校教务管理系统 这一综合项目的子项目 排课系统的设计必需建立在对排课流程的详细分析的基础之上 由于各学校自身情况 采用的教学模式 学分制或学年制 的不同 导致各学校排课流程存在差异 以大学为分析对象 设计出适合学分制模式下的高校排课算法 2系统需求分析 高校排课系统的目的是利用计算机处理技术对高校排课问题进行高效准确的解决 由于其是 高校教务管理系统 这一综合项目的子项目 排课系统的设计必需建立在对排课流程的详细分析的基础之上 2 1业务流程分析 大学排课工作的基本流程如图1所示 2 1 1教务处工作流程 教务处根据各年级 各专业的培养方案 学生人数结合考虑课程性质向各个学院下达教学任务书 明确这学期的教学要求 教学任务书中要明确所要开设的课程 应开设班级数目 班别 课程开设的校区等信息 其中 某课程应开设的班级数 是由要选修该课程的学生总数及该课程的参考容量决定的 各学院可以根据自身情况对其进行调整 教务处工作流程如图2所示 2 1 2学院工作流程 教学任务书下达到各学院后 各学院根据自身教师情况 可以适当调整教学任务书中某课程的开课班级数及班级容量 然后 在教学任务书中为每门课程的每个班添加老师 以及该课程对教室的要求 这样形成的信息称之为课元信息 同时学院的老师可以向教务处提交特殊时间要求 如星期三下午 信息学院领导因工作会议 不能安排上课 学院工作流程如图3所示 2 1 3排课流程 各学院把课元信息提交给教务处 教务处根据全校教师情况 教室资源情况 老师的特殊要求利用排课系统排出预排课表 学生根据预排课表选课 教务处在学生选课后 根据各个选课班的人数 撤销人数小于15人 特殊课程除外 的选课班 课程表包括全校总课程表 学生课程表 教师课程表和教室课程表 课程表由教务处编制 不得随意变动 如因特殊情况调整 须按学校有关规定办理手续 并由教务处下达调课通知 执行流程如图4所示 2 1 4大学排课总流程 排课工作开始后 教务处根据各年级各专业培养方案 各年级各专业学生人数 课程性质 生成教学任务书 其包括要开设的课程名称 该课程要开设的班级数 班别 校区等信息 教学任务书下达到各学院后 学院根据自身教师情况 修改某些课程的班级数目及相应的班级容量 之后为教学任务书添加老师 并提出课程对教室的要求 及学院老师对上课时间的要求 如某个时间段不能安排课程 这样就形成了课元信息 学院再将课元信息提交教务处 教务处根据教师情况 教室资源情况 教师的特殊要求利用排课系统排出预排课表 学生根据预排课表选课 教务处在学生选课后 根据各个选课班的人数 撤销人数小于巧的选课班 教务处可以根据具体情况调整课程表 并下达调课通知 执行流程如图5所示 排课总流程 2 1 5排课约束条件 排课问题中 主要任务是将班级 教师 课程安排在一周内某一不发生冲突的时间和教室 保证课表在时间的分配上符合一切共性 时间上不存在冲突 和个性 不与老师的特殊时间要求冲突 的要求 在此基础上 使其安排在各个目标上尽量达到最优 3系统需求分析 对排课系统需求分析 主要包括确定系统角色 建立用例模型和用户界面原型设计 从功能上看 排课系统可以分为六个子模块 系统管理 原始数据管理 教室管理 教学任务管理 排课管理 课表管理 3 1功能需求描述 l 能适合学分制对排课的要求 以单个学生作为上课的对象 2 自动排课 对于普通课程和有特殊要求或者特殊形式的课程 可以处理 3 手工排课 根据实际需要 进行部分课程的人工排课 并在手工排程中提供冲突检测功能辅助人工排课 4 可以生成任意班级的上课课表 5 可以生成任意任课教师的上课课表 6 可以生成任意任课教室的上课课表 7 提供用户 教师 学生和教室管理者等 查询课表接口 8 权限设置 出于对数据安全 数据修改 方便维护和查询等考虑 置不同操作者的系统使用权限 9 可以形成报表 并能以其它格式进行输出 3 2用例分析 可以创建系统管理员 教师 学生和教室管理员四个参与者 在确定好角色的基础上 设计出排课系统的总用例图如图6所示 1 系统管理 实现对用户及其权限的管理 为了确保数据库的安全 为不同的用户提供不同的操作权限 权限不同的用户对数据库的操作范围不同 对于一些权限低的用户 甚至没有处理数据库的权力 用户管理功能的用例图如图所示 用户管理主要是系统中的用户进行管理 可以进行新建 删除 编辑 禁止等操作 其中修改密码功能不但超级管理员能够进行 且普通用户可以进行修改自己的密码操作 用户管理用例的描述 2 原始数据管理 包括数据库设置 学年学期设置 导入数据 1 数据库设置 用来配置和测试数据库 首先选择数据库的身份验证类型 包括windows身份验证和SQLserver验证 然后输入必要的服务器名称或者地址 数据库名称 用户名及密码等信息 之后可以测试数据库是否配置正确 把正确的配置记录下来 2 学年学期设置 设置当前要处理和安排的课程是哪个学年和学期的 3 导入数据 首先 检查所需数据库表是否存在 这些数据库表是要处理的数据来源 然后 创建所需的新数据库表 这些数据库表是要处理的数据的存放地 如果表不存在就创建 存在就不创建 最后 从源数据库表中导入数据到目标数据库表中 导入新数据和更新旧数据 3 教室管理 包括添加 修改 查询 删除教室 在原始的教务管理管理系统中没有教室的管理 为了完成排课新增加了这个子系统 4 教学任务管理 包括设定学期要求 设定校区 设定教学方式 l 学期要求 可以设定课程安排在前半学期 后半学期 全学期 或者没有前后学期的要求 2 校区设定 设定课程在哪个校区 可以指定校本部校区 医学院校区 3 教学方式 设定教学方式 包括传统教学 多媒体教学 5 排课管理 包括排课初始化 自动排课 手工排课三项 l 排课初始化 包括教室初始化 自动排课初始化 手工排课初始化和设定课程优先级 初始化教室使用情况 对所有课程 开始排课之前需要初始化教室使用情况 还有学期 多媒体教学 课程优先级等方面的数据需要转换 同时完成教学任务表中课程排课状态的设定 对于自动排课 开始排课之前需要初始化教室使用情况 还有学期 多媒体教学 课程优先级等方面的数据需要转换 同时完成教学任务表中课程排课状态的设定 排课管理 对于手工排课 开始排课之前需要初始化教室使用情况 还有学期 多媒体教学 课程优先级等方面的数据需要转换 同时完成教学任务表中课程排课状态的设定 设定优先级共有三种方案 第一种方案 根据课程的学时数 多媒体教学要求 前后学期要求来确定课程的优先级 出现冲突的时候 优先安排学时多 多媒体教学 指定前后学期的班级 第二种方案 根据选课学生人数来确定课程的优先级 出现冲突的时候 优先安排学生多的班级 学生少的班级可能安排不上 第三种方案 前两种方式综合在一起 2 自动排课 前提是已经导入数据 并且已经初始化 然后自动排课 3 手工处理 包括取消已经排好的课程 安排没有排好的课程 改变起始周和结束周 冲突检测 查看排课失败的原因 6 课表管理 包括学生课表 教师课表 教室课表 各学院教师课表 总课表的管理 对于这些课表都有查看 导出Excel和打印功能 1 学生课表可以按照学号或姓名查询 2 教室课表可以按照编号或名称查询 3 教师课表按照教师编号或姓名查询 4 各学院教师课表可以按照学院一次性导出某个学院的所有教师的课表 并且可以打印 5 总课表显示所有教室的所有课程课表 3 3动态行为模型 动态模型描述系统随时间变化的行为 这些行为通过从静态视图中抽取的系统瞬间值的变化来描述 在详细描述用例时 是从用户角度出发的 没有涉及系统内部 通过分析得到了满足系统需求的类以后 就可以根据用例驱动的思想 用这些类之间的交互来 实现 用例 顺序图能更好的说明对象问的交互顺序 有利于理解系统 因此用顺序图来描述主要用例的 实现 1 班级课表生成顺序图 2 查看课表顺序图 3 4非功能性需求 非功能性需求主要规定了系统必须满足的服务水平 系统非运行时间的属性以及系统必须遵守的约束 它不会直接系统功能 但在用户和系统支持人员对系统的认可方面具有很大的影响 其主要包括系统的约定于假设条件 系统地可用性 可靠性 性能 扩展性 可支持性 系统接口 3 4 1安全可靠性 系统应能准确 安全 可靠的运行 具备较强的操作弹性能力 保证数据一致性 确保排课的顺利进行 另外 系统中的许多基础信息是学校教学管理中的重要基础信息 为了确保这些信息不被改变或破坏 为系统设计三级安全体系 第一级管理员身份验证第二级操作员身份验证第三级普通用户身份验证针对不同的使用者角色 分配不同的使用权限 以便最大程度地保证数据库中基础数据的安全 3 4 2操作灵活性 系统要具有友好的人机界面 要求简单 明了 提示性强 采用友好的图形界面引导教务人员完成整个排课工作 整个系统界面风格要求统一 层次清楚 方便用户使用 3 4 3可维护性和可扩展性 在系统使用环境发生某些情况的改变下 系统要能够迅速使用这种变化 而不需要对系统进行大的调整 比如后台数据库的升级问题 如果系统数据库从一种数据库更换为另一种数据库 那么系统的内部应该不能进行大的调整就能使用这种变化 4系统设计 高校排课系统是一个系统管理 原始数据管理 教室管理 教学任务管理 排课管理 课表管理等业务的管理系统 系统架构必须从各方面满足实际需求 这是架构的设计目标 同时在设计与开发的过程中严格遵守的特殊约束 从而保证可以实现架构设计的目标 4 1系统设计原则 系统架构设计的目标包括安全目标 保密目标 最大化的重用 简洁 灵活等方面的规定 l 安全目标 架构从管理安全 系统安全 数据安全三个方面来具体考虑和保障系统安全 管理安全是指建立相应的安全管理制度 最终决定是否安全是入来决定的 系统安全从网络 硬件 系统软件 应用软件方面考虑如何加强整个系统的安全性 数据安全是指企业数据的安全 包括备份策略 加密 恢复等 2 保密目标 对于校园内重要的数据实行单独保存 对排课系统设计安全级别 对于需要在校医网上传输的重要数据 需要加密处理 3 最大化的重用 重用是减少冗余的一个有效的途径 包括组件级别的重用 组件的实现通常会应用一种或几种设计模式 这些模式与组件的结合使用大大提升架构的质量 4 1系统设计原则 4 均匀性 这个均匀性是指在安排一门课程上天数分布的均匀性和节数分布的均匀性 教师方面的因素要考虑教师的课程安排在一天内是否有连续性出现和一天内上课的次数 教室方面的因素包括考虑教室的利用率 5 简洁 把复杂问题简单化是架构设计的一个重要的目标 明确类以及类之间的职责关系 6 可靠性 根据非功能需求对可靠性的要求来设计 提高系统的可靠性 增强容错处理能力 7 可扩展性 系统在设计时 充分考虑未来各院校排课业务的变化 组织架构的变化 业务流程的变化等 将因业务或者需求的变更带来的系统升级和改 4 2系统总体架构 排课系统需要大量的数据 包括专业计划信息 课程信息 任课教师信息 开课班级信息 设备资源信息等 为在校园网这些信息共享 必须将数据集中存放 统一管理 4 2 1网络架构 4 2 2分层架构 三层架构 本系统的体系结构采用了三层的软件架构的设计思想 在本系统中的三层结构分别指的是如下三层 1 排课UI表现层 它实现图形用户接口 根据业务需求展示业务内容 2 排课业务逻辑层 它实现了排课的业务逻辑 3 排课数据服务层 它为排课业务逻辑层提供了数据服务的支持 4 3主要功能模块描述 该排课系统6个功能模块组成 系统管理模块 原始数据管理模块 教室管理模块 教学任务管理模块 排课管理模块和课表管理模块 如图所示 其中系统管理模块包括 用户管理 设置权限 初始化 数据备份和数据恢复等功能 原始数据管理模块包括 数据库设置 学年学期设置和导入数据等功能 教室管理模块包括增加教室 修改教室 查询教室和删除教室等功能 教学任务管理模块包括 学期要求 设定教学方式和排课约束等功能 排课管理模块包括 自动排课 手动排课和调课 修改起始和结束周 排课失败原因 学生冲突详情 冲突检测等功能 课表管理模块包括 学生课表 教室课表 班级课表 教师课表 课程信息 总课表 各学院教师课表等功能 系统功能分解图 4 4数据库设计 排课管理系统是一项复杂的系统工程 其间需要大量的数据来支撑 从某种程度上来讲 排课管理系统的设计过程 其实也就是一个规范和完整的数据库设计过程 经过多年的发展 关系型数据库系统 RDBMS 是最成熟的一种数据库管理模式 也是当前最流行的数据库管理系统 故在此也采用该模式 4 4 1关系模型 4 4 2建立实体关系 4 4 3定义属性表 排课管理是一个复杂的数据流程过程 其间涉及到的属性表也非常的庞杂 因此从源数据表中抽取说明性的名词开发出属性表 是整个数据库设计环节中比较关键的一环 在此过程中 需要确定属性的所有者 定义非主键的属性 检查属性的非空及非多值规则 此外 还要检查完全依赖函数规则和非传递依赖规则等 4 5计算机自动排课系统总体流程图 4 5 1用户登录管理流程 用户登录管理流程描述 l 检测数据库中有无管理员帐号 如果有 则等待用户输入用户名和密码 否则按程序本身自动执行插入命令 新建一个管理员用户 并等待用户输入 2 验证用户名和密码是否正确 错误次数不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论