项目的生命周期
#项目
项目就是需求
#开发项目的步骤
1.需求分析、需求审核
需要和甲方沟通,确定客户到底需要什么样的功能,还需要进行需求审核,确定通过技术的厚度那能都满足需求,最后得到需求文档
2.技术选型
这个阶段主要是确定开发该项目使用什么语言,什么框架,什么数据库等
3.项目设计
例如数据库的设计,项目架构MVC、MTV等三层结构的设计
4.开发阶段
项目经理把任务分配给每个人,确定后台开发需要提供的接口文档,使双方按照相同的协议来进行开发,协作开发需要使用一些工具,例如git、SVN
5.项目测试
大公司会有专门的测试工程师
黑盒测试,白盒测试,沙盒测试
6.上线部署
需要部署代码到服务器,安装相应的环境,配置公网ip和域名
成功聚餐/先进奖励
7.更新维护
选课系统
需求分析
1.创建北京上海2所学校
2.创建linux、python、go3个课程,linux/python在北京开,go在上海开
3.课程包含周期、价格,通过学校创建课程
学校 课程(周期、价格)
4.通过学校创建班级,班级关联课程、讲师
学校 班级、课程、讲师
5.创建学员时选择学校,关联班级
学校 学员、班级
6.创建讲师角色时要关联学校
学校 讲师
7.提供两个角色接口
7.1学员视图,可以注册,交学费,选择班级
7.2讲师视图,讲师可以管理自己的班级、学生,上课时选择班级,查看班级学员列表,修改管理的学员的成绩
7.3管理视图,创建学校,创建讲师,创建班级,创建课程
8.上面的操作通过pickle序列化保存到文件里
项目架构
1.用户界面层
负责与用户交互,例如接收输入数据给业务逻辑层、从业务逻辑层输出数据给用户
可能和业务逻辑层、数据访问层不在同一台电脑,例如网页或手机APP
2.业务逻辑层
接收用户界面层传入的数据,进行判断、验证,期间可以进行数据的访问与获取
3.数据访问
负责存储与访问数据
#用户界面层可以称为前端
#业务逻辑层、数据访问可以统称为后台、后端
#前端和后亿可能需要网络通讯
#bin
/start.py
#conf
setting.py
#db
dbhandler.py
#interface
admin_interface.py
student_interface.py
teacher_interface.py
#libs
common.py
#log
#views
admin_view.py
student_view.py
teacher_view.py
#readme