《面向对象技术》第17章案例:教学管理系统
来源:田浩然上传的资料 / 0B101面向对象技术 / 教学管理系统.pdf(课件讲义,pdftotext 提取约17K字符) 这是”面向对象技术”课程(课程编号 0B101)的收官案例章——用一个完整的教学管理系统贯穿需求分析到对象建模。
系统需求概览
1. 选课管理(五个子流程)
- 生成学期选课表:课程管理员依据教学计划(课程设置部门)+ 教室分配(教室分配部门)按专业生成选课表并发布上网。
- 选课:学期前两周试听+选课,随时网上查询/更改;只能选自己专业的课;每门课人数下限约20、上限约80,选同一课的学生组成一个”教学班”。
- 课表调整:两周后人数不足下限的课程取消;第三周学生可补选其他课。
- 公布名单:第四周生成开课汇总表上网公布,并把信息发送给财务部(教师课酬)、教材部(发教材)、教师(任课信息)、成绩管理部(录成绩)。
- 查询:第四周后学生可查自己选课信息。
2. 成绩管理(三个子流程)
- 成绩录入 → 形成成绩表;
- 成绩统计 → 按课程号/学号分别统计生成报表,报送教学评估部门与学籍管理部门;
- 成绩查询 → 学生按学号查成绩。
3. 功能-输入-输出编号表(用例清单雏形)
讲义给出了编号化的功能表(1-11+):学生选课查询(1)分发到课程介绍(2)/任课教师(3)/本学期课表(4)/培养计划及历史(5)/已选课单(6);课程管理员管理课表(7)分发到生成选课表(8)/维护选课表(9)/再次生成(10)/发布(11)。每个功能都有明确的输入字段和输出字段定义(如课程介绍输出:课程号、课程名、课程类别、学生级别、学分、总学时、教学内容)。
教学价值归纳
- 典型 OO 分析入门案例:需求 → 功能编号表(≈用例)→ 参与者(学生/课程管理员/成绩管理员/教师/财务部等外部系统)→ 概念类(课程、教学班、选课单、成绩表、教学计划)→ 顺序/协作图。这份讲义的功能输入输出表非常适合直接转成用例规格说明。
- 业务规则显式化:人数上下限(20/80)、选课时间窗(前两周试听、第三周补选、第四周锁定)、“学生只能选自己专业的课”——这些是教学生把自然语言需求提炼为约束的经典素材。
- 跨部门数据流:开课汇总表要向财务/教材/教师/成绩管理四方分发,体现了”一个数据源、多视图输出”的信息系统设计原则。
关联
- 与 VisiBroker-for-Java-第15章-使用IDL 同属田浩然上传的软件工程/面向对象学习簇
- 课程编号 0B101(面向对象技术)目录下还有配套课件可后续聚合