选课系统概要设计$作者:**学号:09**********时间: 指导老师用户描述 ...设计约束 ...3.总体结构...系统结构图 . 系统模块说明 系统流程图 .4.数据库系统设计 错误!未定义书签目录1.引言 错误!未定义书签目的 错误!未定义书签背景 错误!未定义书签2.系统概述 错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签数据库表 错误!未定义书签表结构 错误!未定义书签5. 系统IPO图 6. 接口设计 7. 系统出错处理设计8. 系统其他说明...错误!未定义书签错误!未定义书签错误!未定义书签错误!未定义书签1.引言目的开发网上选课系统主要是为方便学生自主选课,及时掌握自己的选课信息和课表信息 让教师及时了解自己的教学信息,让学校更好的管理选课工作背景项目名称:选课系统提出者:**设计人:**建立一个学生网上选课系统,为学生自主网上选课提供平台系统各用户及功能实现 要求如下:用户描述本系统有三类用户:1. 管理员用户 对整个系统起管理维护作用,备份还原数据,管理维护学生、教师的课程信息及开设课 程等职务。
2. 学生用户 学生可以在规定时间段选修课程的权利,同时具有查询、删除选课记录的功能选课完 成后学生可以查看个人课表并打印3. 教师用户 教师可以查看自己所教授课程的课程信息和选修本课程学生的信息同时,教师也可以 查看教师个人课表并打印设计约束1•需求约束:系统需求以《学生选课系统需求分析报告》为依据,建立一个完善的学生选课 系统2.应该遵循的标准和规范:由于本系统不是一个完全独立的系统,与教务系统等校园系统有一些数据上的共享,因此 在字段定义使用上最好能保持一致3•用户界面应该严肃点,正式些,不该太过花哨3.总体结构根据对项目的需求分析与理解,系统结构图可以将系统结构设计如下:学生用尸查看课表垂统结构圈系统模块说明学生模块:选课:在规定时间段选修课程 查看选课情况:查看自己的选课记录 退选:在选课时间内可以退选已选的某些课程 查看课表:选课结束后查看自己的课程表教师模块:查看所教授课程信息:查看自己的教课程的情况 查看选课学生:查看选修自己课程的学生情况 查看课表:查看自己本学期的教学课表管理员模块:课程信息分配:为所有课程分配老师、教师、上课时间等 设置选课限制,主要是对对选修学分的限制,限制每位学生本次选课 所能选修学分的上限值和下限值。
修改学生选课记录:选课时间结束后,由于某些特殊原因学生需要退选或改选课程, 只能找管理员处理删除课程:第一轮选课结束后,将那些选课人数太少不足以开班的课程删除选该课 程的学生可以和未选学生一起参加第二轮选课系统维护:备份、还原数据系统流程图4.数据库系统设计数据库表本系统一共设计了七个数据库表数据库表备注Student本次参与选课学生表,由教务系统导入Teacher本次开课教师表,由教务系统导入.Course本学期的开设的供选修的课程ClassRoom教室编号表,将教室编号,方便为课程分配教室历年使用,基本不变)Class Time学校上课时间安排表例如:周一 1、2节编号001 (历年使用,基本不变)Dep t院系表,为院系编号,方便管理数据历年使用,基本不变)CourseArrange存储所有课程分配后的具体信息数据保存十年)StudentCourse存储学生选课信息数据保存十年)User用户表,主要用于记录账号密码表结构Student 表结构字段名字段类型说明备注SidChar(8)学生学号主键SnameVarchar(20)学生姓名Sdep tChar(4)院系编号参照Dept表DidTeacher 表结构字段名字段类型说明备注TidChar(8)教师编号主键TnameVarchar(20)教师姓名Tdep tChar(4)院系编号参照Dept表DidCourse 表结构字段名字段类型说明备注CidChar(8)课程编号主键CnameVarchar(20)课程名Cdep tChar(4)开课院系参照Dept表DidCtimeInt课时CreditInt学分ClassRoom 表结构字段名字段类型说明备注RidChar(4)教室编号主键RaddressVarchar(20)教室地址ClassTime 表结构字段名字段类型说明备注CTidChar(3)时间编号主键TimeVarchar(20)时间段Dept 表结构字段名字段类型说明备注DidChar(4)院系编号主键DnameVarchar(20)院系名CourseArrange 表结构字段名字段类型说明备注CAidChar(8)选课编号主键CidChar(8)课程编号参照Course表CidTidChar(8)教师编号参照 Teacher 表 TidCTidChar(3)上课时间编号参照 ClassTime 表 CTidRidChar(4)上课教室编号参照 ClassRoom 表 RidtoplimitInt最大选课容量num的上限值numInt当前选课人数系统自动更新StudentCourse 表结构字段名字段类型说明备注SidChar(8)学号参照 Student 表 SidCAidChar(8)选课编号参照 CourseArrange 表 CAidTermChar(9)学期系统自动录入User 表结构字段名字段类型说明备注UidChar(8)账号主键Passwordnchar(15)密码IdentifyInt身份认证用0,1,2分别表示三种登录身份5.系统IPO图作者: **日期:2011-11-7调用:课程查 询、学生查询、 课表查询系统:选课系统模块:学生用户模块编号: 被调用:主系统作者:**日期:2011—11—7调用:选课、查 看选课信息、退 选、查看课表系统:选课系统模块:教师用户模块编号: 被调用:主系统输入:学生学号、 学期输出:学生选课 记录、学生课表 输入:教师编号、 学期输出:授课信 息、学生名单、 授课课表处理:学生选修合适课程;根据输入的 信息查询已选课程信息和课表信息;退 选已选课程。
处理:根据教师信息输出对应的授课 课程信息,选修该教师课程的学生名 单,教师个人课表局部数据元素: 学号、姓名、学 期、课程号、课 程名、学期注释:无局部元素:教师 编号、教师姓名、 课程号、课程名、 学号、学生姓名、 学期系统:选课系统 作者:**模块:管理员用户模块 日期:2011-11-7 编号:被调用:主系统调用:修改学生 选课记录输入:学生学号、 学期输出:学生选课 信息处理:根据学生学号查询相应选课记 录,修改删除记录系统:选课系统 模块:课程管理模块 编号: 被调用:管理员用户模块输入:课程号作者: **日期:2011-11-7调用:课程信 息分配、删除输出:课程信 息处理:根据课程号分配完善课程信 息;删除选课人数太少的课程注释:无局部元素:学号、注释:无 姓名、学期、课程号、课程名局部元素:课程 号、课程名、教 师号、教室号、 上课时间编号、 选课号、最大容 量系统:选课系统 作者: **模块:数据库维护模块日期:2011—11—7 编号: —被调用:管理员 用户模块调用:备份、还 原数据库输入:备份地址输出:备份文件、 数据库处理:备份数据库到指定磁盘空间;还 原已备份的数据库信息局部元素:无注释:无6.接口设计1. 与其他系统间的接口设计:与教务系统存在Student、Teacher表数据共享;与考试系统存在StudentCourse表数据 交流。
2. 系统内各模块间接口参见IP0图1、系统提示信息功能提示说明删除提示用户是否删除当前记录:选项:是、否是:删除当前记录,commit,同时提示“删除完成” 否:不做任何处理退出修改提示用户是否保存当前修改是:保存当前记录,commit,同时提示“修改成功”记录:选项:是、否否:不做任何处理退出打印提示用户是否打印:选项: 是、否是:打印否:不做任何处理退出备份/还原提示用户是否确认备份/还原 数据库是:执行备份/还原数据库操作否:不做任何处理退出可能的出错处理:当某选课记录已满(即CourseArrange表中该记录num=toplimit),若还有学生提交选修该课程,选课失败,并弹出提示课程容量已满学生选修多门课程时,若选择的课程与前面已选课程上课时间冲突,选课失败,并会弹出显 示框提醒学生同样,为教师安排课程时也不会有此冲突8.系统其他说明1.学生和教师用户信息都是从教务系统传输过来,故不存在用户注册、注销、信息修改等设 计表中num值是当学生提交选课成功或退选成功同时,系统自动更新相应记录同样,StudentCourse 表中 Term 值是在选课时,系统根据选课时间自动录入。