当前课程知识点:软件工程 > 第11章 软件系统设计 > 作业题 > html
一、问题背景与系统需求
某学校团委经常组织一些活动,让组织人员非常头疼的一个问题是活动票的发放。尤其是一些受学生欢迎的热门活动,因为原来采取排队领票或购票形式,经常出现的场景就是在活动票发放前两三个小时门外就排起长长的队伍。为了改善学生排长队领票的不便,校团委希望开发一款微信抢票应用,为学生们提供热门活动推送、校园活动抢票等服务。
整个抢票过程包括创建和发布活动、抢票和检票三个阶段,具体过程如下图所示。校团委相关部门负责创建和发布活动,校内学生可以查看活动的详细信息。在抢票开始时,学生可以参与指定活动的抢票。如果学生成功抢到活动票,系统将自动生成一个带有二维码的电子票,学生可以查看自己的电子票;如果没有抢到票,系统将未抢到票的消息反馈给学生。
在活动开始时,校团委工作人员在活动入场处进行检票,学生可以持电子票检票参加活动。对于学生持有的电子票,工作人员使用二维码扫描枪进行扫描,验票成功即可入场,验票成功的条件是电子票有效且未被使用;学生也可以持自己的学生证,由工作人员通过学号查询电子票,再手动确认检票。
开发团队根据上述业务流程和要求,确定了微信抢票应用的系统需求。
1. 功能需求
2. 非功能需求
考虑到热门活动的门票可能比较紧俏,个别大学生可能抱有好奇心用非法手段钻系统的漏洞,开发团队认真讨论了可能出现的安全性问题,并提出了可能的应对方案。
解决方法:如果直接从活动详情页面点击进行抢票,就需要在应用程序中自己处理刷票的问题,这样势必会增加实现的难度。如果从微信中直接发送消息,那么抢票命令只能由操作人从微信公众号手动发出,刷票程序很难替代,因此最终采取抢票和退票均由微信命令进行操作的方式。
解决方法:由于抢票活动是限制在校内学生参加的,所以可以把学号与电子票进行关联,一个学号只能对应一张电子票。另外,如果入场时由于手机忘带或者没电等造成无法出示电子票,也可以直接使用学生证通过学号进行检票。
-1.1 软件无处不在
--讲课视频
-1.2 软件的本质特性
--讲授视频
-1.3 软件工程的产生与发展
--讲授视频
-1.4 软件工程的基本概念
--讲授视频
-1.5 软件质量实现
--讲授视频
-1.6 业界人士谈软件工程
-测验题--作业
-讨论题
--讨论题
-作业题
--第一张 作业题
-2.1 编程过程与规范
--讲课视频
-2.2 良好的编程实践
--讲课视频
-2.3 Python集成开发环境
--讲课视频
-2.4 代码静态检查
--讲课视频
-2.5 代码性能分析
--讲课视频
-2.6 结对编程实践
--讲课视频
-2.7 刘贺谈软件工程
--讲课视频
--讨论
-测验题--作业
-作业题
--第二章 作业题
-3.1 单元测试概述
--讲课视频
-3.2 黑盒测试方法
--黑盒测试方法
-3.3 白盒测试方法
--基本概念
--代码覆盖标准
--基本路径测试
-3.4 单元测试工具
--单元测试工具
--html
-测验题--作业
-作业题
--第三章 作业题
--作业题附件
-4.1 软件过程
--讲课视频
-4.2 软件过程模型
--讲课视频
-4.3 敏捷开发过程
--讲课视频
-4.4 微软公司开发过程
--邹欣经理自我介绍
--微软开发过程之一
--微软开发过程之二
-测验题--作业
-5.1 团队组织与管理
--讲课视频
-5.2 项目沟通管理
--讲课视频
-5.3 软件项目计划
--讲课视频
-5.4 软件项目估算
--讲课视频
-测验题--作业
-讨论题
--讨论
-6.1 敏捷开发之Scrum
-- 敏捷开发之Scrum
--html
-6.2 用户故事与估算
--讲课视频
-6.3 团队协作工具Tower
-6.4 配置管理
--讲课视频
-6.5 配置管理工具Git
--讲课视频
-测验题--作业
-作业题--作业
-7.1 需求工程师
--讲课视频
-7.2 需求定义
--讲课视频
-7.3 需求的类型
--讲课视频
--讲课视频(2)
-7.4 需求工程过程
--讲课视频
-7.5 需求的主要来源
--讲课视频
-7.6 需求获取技术
--讲课视频
--讲课视频二
--讲课视频三
-7.7 撰写需求文档
--讲课视频
-测验题--作业
-讨论题
--讨论
-8.1 用例建模概念
--讲课视频
-8.2 用例建模过程
--讲课视频
-8.3 用例建模精讲
--讲课视频
-8.4 建模工具介绍
--讲课视频
-8.5 微信抢票应用案例
--讲课视频
-测验题--作业
-讨论题
--讨论
-9.1 面向对象分析
--讲课视频
-9.2 CRC卡片分拣法
--讲课视频-1
--讲课视频-2
-9.3 面向对象设计
--讲课视频-1
--讲课视频-2
-9.4 类图建模
--讲课视频-1
--讲课视频-2
-第9章 面向对象分析与设计--测验题
-讨论题
--讨论
-10.1 顺序图概念
--讲课视频
-10.2 顺序图建模
--讲课视频
-10.3 顺序图风格
--讲义视频
-10.4 状态建模
--讲课视频
-10.5 状态图
--讲课视频
-10.6 状态图精讲
--讲义视频
-测验题--作业
-讨论题
--讨论
-11.1 软件体系结构概念
--讲授视频
-11.2 软件设计原则
--讲授视频
-11.3 软件体系结构风格(一)
--讲授视频
-11.4 软件体系结构风格(二)
--讲授视频
-11.5 软件体系结构风格(三)
--讲授视频
-11.6 软件设计过程
--讲授视频
-11.7 Web系统架构设计
--讲授视频
-11.8 数据库选择策略
--讲授视频
-测验题--作业
-作业题
--html
--html
--html
-作业题--作业
-12.1 交互设计概述
--讲授视频
-12.2 交互设计目标
--讲授视频
-12.3 GUI设计原则
--讲课视频
-12.4 KLM效率模型
--Video
-12.5 Fitts定律
--讲授视频
-12.6 交互设计过程
--讲授视频
-测验题--作业
-13.1 软件测试概念
--讲课视频
-13.2 软件测试类型
--讲课视频
-13.3 软件功能测试
--讲课视频
-13.4 软件性能测试
--讲课视频
-测验题--作业
-14.1 软件部署与交付
--讲课视频
-14.2 软件演化与维护
--讲课视频
-测验题--作业
-第一部分:基础知识
-第二部分:编程与测试(选做)