3.1 - 选课系统


角色:学校、学员、课程、讲师
要求:
1. 创建北京、上海 2 所学校
2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开
3. 课程包含,周期,价格,通过学校创建课程
4. 通过学校创建班级, 班级关联课程、讲师
5. 创建学员时,选择学校,关联班级
6. 创建讲师角色时要关联学校,
7. 提供两个角色接口
7.1 学员视图, 可以注册, 交学费, 选择班级,
7.2 讲师视图, 讲师可管理自己的班级, 上课时选择班级,查看班级学员列表 , 修改所管理的学员的成绩
7.3 管理视图,创建讲师, 创建班级,创建课程
8. 上面的操作产生的数据都通过pickle序列化保存到文件里

-------------------------------------------------------
思路: (领域建模的三字经方法:找名词、加属性、连关系)
需求分析的方法:5W who when where what why
一:选课系统用例
#用例名称
选课
#场景
who:学生,老师,管理员
where:老男孩
when:任意时间
#用例描述(用户怎么做,或者说用户想怎么用):
1. 管理员创建学校:北京和上海两个校区
2. 管理员创建课程:python,go,linux
3. 管理员创建班级:python周末18期,python脱产7期,linux架构35期
4. 管理员创建学员:小晴,花野真衣,川岛芳子
5. 管理员创建讲师:alex,egon,wupeiqi,yuanhao
6. 讲师创建上课记录:python周末班18期day7
7. 讲师为day7这节课所有学生批改作业,为每个学生打分
8. 学员杨磊查看自己的详细信息:所在学校,报名课程,所在班级
9. 学员杨磊在python18期day7提交了作业
10.学员杨磊查看了自己在day7作业的成绩列表,然后自杀了
11.学员小晴跟egon表白了,当天下午就去领了结婚证
#用例价值
帮老男孩解决课程管理问题
#约束
暂无

二:找名词:
管理员,学校,课程,班级,学员讲师,上课记录,作业,分数,学员详细信息,成绩列表,结婚证
筛选:去掉与行业或者说领域无关的名词
管理员,学校,课程,班级,学员,讲师,上课记录,作业,分数,学员详细信息,成绩列表

三: 加属性:
名字 属性 备注
管理员 None 具备所有权限,对于选课系统来说,并不需要管理员的属性,因此在领域模型中,管理员是没有属性的
学校 学校名,地址,课程列表,班级列表
课程 课程名,周期,价钱,大纲
班级 班级名,所属学校,课程
学员 学员名,
讲师 讲师名
上课记录 班级,课程节次,日期

四:连关系
见图

参考:http://www.cnblogs.com/linhaifeng/articles/7341318.html#_label9

 

结构说明:
course
bin
start.py 启动文件
conf
settings.py 配置文件
core
main.py 主模块
manager.py 管理员类
school.py 学校类 课程类 班级类
student.py 学员类
teacher.py 讲师类
db
classes 班级对象 一个对象 一个文件 唯一
CmE_py_1.pkl
FLA_linux_1.pkl
Wau_py_2.pkl
ybd_go_1.pkl
manager.py 用来生成 初始的管理员
school.pkl 学校对象的集合
student.pkl 学员对象的集合
teacher.pkl 讲师对象的集合
userinfo.pkl 用来生成 管理员 讲师 学员 的登录文件
libs
login.py 公用的登录模块
my_pickle.py 公用的pickle处理模块
salt.py 公用的用来生成密码盐
course.png 选课系统的 UML 图
README.md

------------------------------------------------------
学校课程班级的关系:
1. luffy_beijing
1.1. python - 4000 - 3mons
1.1.1 班级:CmE_py_1
1.1.2 班级:Wau_py_2
1.2. linux - 7000 - 6mons
1.2.1 班级:FLA_linux_1
2. luffy_shanghai
2.1. go - 9000 - 10mons
2.1.1 班级:ybd_go_1

------------------------------------------------------
用户:
管理员: admin 123
讲师: alex 123 egon 123
学员: alice 123 lily 123 alice_a 123

github: https://github.com/alice-bj/course


posted @ 2018-03-17 14:32  Alice的小屋  阅读(991)  评论(0编辑  收藏  举报