• 3.1



    角色:学校、学员、课程、讲师
    要求:
    1. 创建北京、上海 2 所学校
    2. 创建linux , python , go 3个课程 , linuxpy 在北京开, 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


  • 相关阅读:
    3.Appium运行时出现:Original error: Android devices must be of API level 17 or higher. Please change your device to Selendroid or upgrade Android on your device
    3.Python连接数据库PyMySQL
    2.Python输入pip命令出现Unknown or unsupported command 'install'问题解决
    2.Linux下安装Jenkins
    5.JMeter测试mysql数据库
    Android 4学习(7):用户界面
    Android 4学习(6):概述
    Android 4学习(5):概述
    Android 4学习(4):概述
    Android 4学习(3):概述
  • 原文地址:https://www.cnblogs.com/alice-bj/p/8589628.html
Copyright © 2020-2023  润新知