课程实践二题目(根据实践一选择的项目来完成实践二的任务)
题目一:请采用用况图描述需求,并对其中一个用况给出其执行规约。
题目二:给出面向对象分析得到的类图。
题目三:给出面向对象设计得到的类图,并简要陈述在问题域、人机交互、数据管理三个方面对面向对象分析得到的类图进行了哪些调整和完善。
题目1:请采用用况图描述需求,并对其中一个用况给出其执行规约。
1. 识别执行者
- 学生
- 管理员
2. 识别用况
- 学生
- 注册
- 登录
- 更新个人信息
- 课程信息查询
- 选课
- 课程评价
- 管理员
- 注册
- 登录
- 修改课程信息
- 增删课程
- 课程信息查询
需求描述:
针对登录用况给出执行规约如下:
用况名 | 登录 |
---|---|
用况描述 | 学生(管理员)输入用户名(邮箱)和密码进行登录 系统返回登录的结果 |
执行者 | 学生或者管理员 |
基本路径 (用户行为左 对齐,系统动作 向右缩进) | 提交登录请求 展示登录界面 填写登录的信息(邮箱,密码等); if 信息不符合填写的基本要求 then 要求用户重新输入; else 等待用户确认登录; end if; 确认登录; 获取用户名、密码; 根据用户名查询数据库; if 无法查到用户名 then 返回用户不存在; else 比较查到的密码与输入是否相符; if 密码相符 then 返回登录成功; else 返回密码错误; end if end if; 接收反馈信息,查看是否登录成功 |
题目二:给出面向对象分析得到的类图。
各个类的识别
整体的类图
题目三:给出面向对象设计得到的类图,并简要陈述在问题域、人机交互、数据管理三个方面对面向对象分析得到的类图进行了哪些调整和完善。
OOD设计说明
1. 问题域部分的设计
系统的目标形式设计为网站,后端的编程语言使用Java,前端使用html编写的,数据库采用mysql。考虑到编程语言的特性,存在Object基类可以复用,并且可以使用接口类实现多态,据此对OOA得到的类图进行了调整。
2. 人机交互部分的设计
人机交互部分主要是对网页界面的设计,主要包括注册界面,登录界面,选课界面,课程信息界面,修改课程信息,增删课程等界面。每个界面包含一个表单,表单主要包含的组件有label(提示相应input功能),input(填写相应信息),drop down box(下拉框,方便用户选择),button(点击以进行表单提交或取消等)。据此进行了OOD人机交互部分的设计。
3. 数据管理部分的设计
系统的数据库管理部分主要进行用户相关的数据和课程信息管理,包含创建新用户,删除用户,查询、修改用户信息,设定用户的权限,修改用户的权限,添加新的课程,删除旧的课程,维护课程信息。据此进行了数据管理部分的设计。
题目四:对复杂的交互逻辑和复杂的对象状态,给出必要的顺序图和状态图。
顺序图
下面针对登录用况给出了OOA部分的顺序图:
在OOD部分对上面的顺序图进行了调整和补充:
状态图
针对用户类给出了状态图: