团队作业3--需求改进&系统设计

这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/CSGrade22-12
这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/CSGrade22-12/homework/13224
这个作业的目标 需求&原型改进、系统设计、Alpha任务分配计划、测试计划

一、需求&原型改进

1. 针对课堂讨论环节老师和其他组的问题及建议,对修改选题及需求进行修改

1.1 问题与修改

问题:检测到人跌倒后,最好能够及时地反馈给家人,而不是等家人登陆系统查看是否摔倒。
修改:我们会增加实时报警机制,系统在检测到跌倒事件后,应立即通过多种方式发出报警通知。这包括声音警报、短信通知、APP推送等,确保相关人员能够在第一时间知晓并采取措施。目标任务群体更新为老人和小孩的家属。

1.2 给目标用户展现原型,与目标用户进一步沟通理解需求。他们的痛是什么?场景是什么?(用产品之前/之后,有照片或视频显示用户调查的过程,使用了各种调查手段的)

(1)目标用户的痛点
安全监控需求:目标用户可能包括老年人、残障人士或其家属,他们关心的是跌倒事件的实时监控和快速响应,以减少跌倒带来的伤害。
隐私保护:用户对于监控系统可能存在隐私泄露的担忧,尤其是在室内环境中使用视频监控设备时。
误报问题:用户希望减少误报,提高检测的准确性,避免不必要的恐慌和资源浪费。
实时性和响应速度:用户需要系统能够快速准确地识别跌倒事件,并及时通知相关人员。
(2)使用场景
家庭环境:用户可能在家中使用该系统,尤其是在老年人居住的环境中,用于实时监测和预警。
公共区域:在公共场所,如养老院、医院等,系统可以用于监控和预防跌倒事件。
(3)用户调查过程
问卷调查:通过设计问卷,收集用户对于跌倒检测系统的需求和期望,了解他们在使用过程中遇到的问题。
面对面访谈:与用户进行深入的访谈,了解他们对于系统的具体需求,以及在实际使用中的感受和建议。
视频或照片记录:在用户同意的情况下,记录用户使用系统的过程,包括跌倒检测的实时视频和照片,用于分析和改进系统。
用户反馈收集:通过用户反馈,收集对于系统性能的评价,以及对于报警机制、用户界面等方面的改进建议。
(4)调查手段
用户测试:邀请用户参与系统的测试,观察他们在实际使用中的行为和反应,收集反馈。
数据分析:分析用户在使用系统过程中产生的数据,如跌倒事件的频率、时间、地点等,以优化系统性能。
原型迭代:根据用户反馈和测试结果,不断迭代和改进系统原型,直至满足用户需求。

2. 修改完善上周提交的需求规格说明书

2.1 上周的《需求规格说明书》初稿有哪些不足?特别是:功能考虑不全或需求文档描述缺少的地方

(1)不足之处
功能考虑不全,例如缺少对用户反馈机制的描述,例如用户如何报告误报或漏报。缺少对系统维护和升级的描述,包括数据备份和恢复流程。缺少对用户隐私保护和数据安全的详细说明。需求文档缺少对系统性能的具体指标,如响应时间、并发用户数等。还有缺少对异常处理和错误恢复机制的描述。
(2)具体改进内容(功能性需求)

  • 实时报警机制:
    系统在检测到跌倒事件后,应立即通过多种方式发出报警通知。这包括声音警报、短信通知、APP推送等,确保相关人员能够在第一时间知晓并采取措施。
  • 通信管理模块:
    引入一个CommunicationManager类,负责通过预定的通讯渠道(如短信、邮件或应用推送)发送警报给相关人员。当FallDetector检测到跌倒事件时,将检测结果传递给AlertGenerator类生成警报信息,然后由CommunicationManager类负责发送。
  • 多级联动响应:
    系统支持与其他智能设备的联动,如自动呼叫紧急联系人,触发医疗设备等,形成完整的应急响应体系,进一步提升安全保障水平。
  • 家庭感知反馈系统:
    参考「ThingX」家庭感知反馈系统,采用边缘大模型+小模型联合路线,全场景分析理解,基于大模型打造边缘运营系统,连接多个端侧子设备,例如Wi-Fi、手表、血糖仪等。通过维持对人体各项生理指标的实时监测和数据采集,进而将数据反馈给大模型进行分析和解读,以实现在慢性病症的早期阶段及突发情况时,该系统能及时发出警示。
  • 用户界面优化:
    设计一个用户友好的界面,允许家人远程查看实时监控视频,随时掌握现场情况。这一功能特别适用于养老院、医院等需要远程管理的场所。
  • 数据统计与历史回放:
    系统自动记录每次跌倒事件的详细信息,包括时间、地点、发生过程等。通过数据分析,管理者可以掌握跌倒事件的规律和特点,为制定防护措施提供科学依据。同时,系统支持视频历史记录的回放功能,管理者可以回看过去的监控视频,了解事件的具体情况,进行事故复盘,找出潜在隐患。

2.2 用一个场景,像讲故事那样,描述用户怎么使用几个相联系的功能,解决了用户的问题

  • 用户故事:紧急跌倒检测与通知
  • 角色:李奶奶,70岁,独居老人
  • 场景:李奶奶在家中不慎跌倒,无法自行起身
  • 故事:李奶奶在家中走动时不慎跌倒,跌倒检测系统通过摄像头捕捉到这一情况,并立即触发跌倒检测算法。算法确认这是一次真实的跌倒事件,而非误报。系统随即激活报警与通知模块,通过APP推送和短信通知李奶奶的家人。李奶奶的儿子收到通知后,立即通过系统内置的紧急联系人呼叫接口,拨打了李奶奶的电话,确认情况并指导她如何安全起身。同时,系统自动记录了跌倒事件的详细信息,包括时间、地点和跌倒过程的视频记录。这些数据被安全存储,并在李奶奶的家人登录系统时提供给他们,以便他们了解事件的具体情况,并采取相应的预防措施。

3. 参考《构建之法》5节功能的定位和优先级,给出功能分析的四个象限

第一象限:重要且紧急
时报警和跌倒检测算法的准确性。
第二象限:重要但不紧急
用户健康数据分析、历史跌倒事件统计等功能。
第三象限:不重要但紧急
一些非核心的界面美化或临时的报告功能。
第四象限:不重要且不紧急
一些非核心的娱乐功能或者与主要目标不相关的附加功能。

4. 根据修改后的需求,调整任务分解WBS及相应的项目进度计划

周次 任务组 详细内容 进度
9 项目启动 项目规划、需求分析、资源分配 100%
10 系统设计与开发 系统架构设计、功能模块开发 100%
10 数据库设计与实现 数据库设计、实现 100%
11 通信接口开发 短信、APP推送、紧急联系人呼叫接口开发 100%
12 系统维护和升级模块开发 开发系统维护和升级模块
13 用户隐私保护和数据安全模块开发 开发用户隐私保护和数据安全模块
14 系统集成与测试 模块集成、系统测试(单元测试、集成测试、性能测试、用户验收测试)及测试反馈整合
15 部署与培训 系统部署、用户培训、文档编写
15 项目收尾 项目评估、经验总结、资源释放

二、系统设计

1. 系统架构设计

接口层 功能
用户界面层 (1) 负责与用户的交互,包括信息输入和结果展示。(2) 提供实时监控界面,展示视频流和检测结果。
应用层 (1) 处理用户请求,调用相应的服务。 (2) 包含业务逻辑,如事件通知、数据存储等。
服务层 (1) 处理用户请求,调用相应的服务。 (2) 包含业务逻辑,如事件通知、数据存储等。
深度学习层 (1) 包含预训练的深度学习模型,用于行人检测和跌倒判断。 (2) 负责处理输入数据(如视频帧),输出检测结果。
数据层 (1) 负责存储和管理数据,包括用户信息、检测记录、视频流等。 (2) 提供接口供其他层访问数据。
外部接口层 (1) 提供与其他系统(如监控系统、报警系统)的接口。 (2) 负责数据的接入和输出。

2. 数据库

2.1 数据库设计

功能
Users表 存储用户信息,包括用户ID、用户名、密码和电子邮件。
Videos表 存储上传的视频信息,包括视频ID、用户ID、视频路径和上传时间。
Detection表 存储检测结果,包括检测ID、用户ID、视频ID、检测结果和时间戳。

2.2 实体关系图(ER图)

  • 每个实体(Users、Videos、Detection)都由一个矩形表示。
  • 主键(PK)字段用下划线表示,外键(FK)字段没有特别的标记,但在实际的数据库设计中,外键通常是指那些引用另一个表主键的字段。
  • 实线箭头表示实体之间的关系。例如,一个用户(Users)可以有多个检测记录(Detection),这由一个从Users指向Detection的箭头表示,并且在Detection旁边有一个“has”标记,表示“一个用户可以有多个检测记录”。
  • 一个视频(Videos)可以对应多个检测记录(Detection),这由一个从Videos指向Detection的箭头表示,并且在Detection旁边有一个“contains”标记,表示“一个视频可以包含多个检测结果”。

三、Alpha任务分配计划

1. 根据项目组能提供的总时间,评估可完成的工作量。根据功能模块的优先级以及模块之间的依赖关系,从Product Backlog中选取待实现的功能项。选择与Alpha阶段目标紧密相关的功能项,确保所选功能项可以支持项目目标,并满足用户需求

1.1 项目组能提供的总时间

项目周期为7周,第九周-第十五周。

1.2 功能模块的优先级

功能编号 功能描述 优先级
1 深度学习框架 ★★★★★
2 模型实现(YOLOv8) ★★★★★
3 实时视频流检测 ★★★★★
4 图片和视频文件检测 ★★★★★
5 用户界面交互 ★★★★★
9 测试(包括单元测试、集成测试等) ★★★★★
6 结果展示与导出 ★★★★
7 参数调整 ★★★★
8 数据记录与分析 ★★★★

1.3 模块之间的依赖关系

  • 实时视频流检测依赖于深度学习框架和模型实现
  • 图片和视频文件检测同样依赖于 深度学习框架和模型实现
  • 用户界面交互依赖于Web应用开发
  • 结果展示与导出依赖于用户界面交互
  • 参数调整依赖于模型实现和用户界面交互
  • 数据记录与分析依赖于所有检测功能的结果数据

1.4 选定功能项

  • 实时视频流检测
  • 图片和视频文件检测
  • 用户界面交互
  • 深度学习框架
  • 模型实现

2 对已选择的功能项进行进一步分解,分解为1-10小时左右的具体任务,确保每个任务都是具体的、可度量的、可实现的、相关的、时限的(SMART原则)。将分解后的任务构成Sprint Backlog。成员进行任务认领,确保任务分配平衡,避免个别成员工作量过大

Sprint Backlog:

  • 深度学习框架和模型实现
    预计时间:8小时
    包括YOLOv8模型的加载、训练和预测功能的实现。PyTorch框架的安装与配置,YOLOv8模型研究与选择,模型加载与初步测试。
    负责成员:许莹柔

  • 实时视频流检测
    预计时间:8小时
    包括视频流接口设计与实现,跌倒检测算法集成,图片和视频处理算法集成和文件上传检测功能的开发,检测结果反馈机制。
    负责成员:梁晓君

  • 用户界面交互
    预计时间:7小时
    包括Streamlit框架的Web界面开发,界面开发与前端逻辑实现,界面样式调整与优化。
    负责成员:肖晓霞

  • 测试
    预计时间:7小时
    包括实时视频流检测,图片和视频文件检测的功能测试,环境测试与优化。
    负责成员:阿丽娅

3.拟定迭代冲刺计划

使用甘特图的方式拟定迭代冲刺计划,明确每个任务的开始和结束时间,以及依赖关系。(本次迭代计划只关注Alpha阶段)使用leangoo作为敏捷项目协作工具,跟踪任务进度和团队协作。
Sprint计划示例(甘特图)

任务ID 任务描述 开始日期 结束日期 负责人
1 深度学习框架和模型实现 第11周 第13周 许莹柔
2 界面开发 第12周 第14周 梁晓君
3 界面美化 第13周 第15周 肖晓霞
4 测试 第13周 第16周 阿丽娅-阿力木

四、测试计划

1.主要产品

本系统是一个基于深度学习的行人跌倒检测系统,旨在实时监控并检测跌倒事件,及时通知相关人员。系统包括用户界面层、应用层、服务层、深度学习层、数据层和外部接口层。本系统是一个基于深度学习的行人跌倒检测系统,旨在实时监控并检测跌倒事件,及时通知相关人员。系统包括用户界面层、应用层、服务层、深度学习层、数据层和外部接口层。

2.测试范围

(1) 功能测试

  • 用户注册和登录功能
  • 视频流的实时显示和处理
  • 跌倒检测算法的准确性和响应时间
  • 通知系统(短信、邮件)的及时性和准确性
  • 用户界面的易用性和响应性

(2) 性能测试

  • 系统在不同负载下的性能表现
  • 检测算法的处理速度和准确性
  • 系统的稳定性和可靠性

(3) 安全性测试

  • 数据传输和存储的安全性
  • 用户认证和授权机制的有效性

(4) 兼容性测试

  • 系统在不同浏览器和设备上的兼容性
  • 与第三方服务(如监控系统、通知服务)的兼容性

3.测试时间表

3.1 测试准备阶段

完成日期:[第13周]

  • 测试环境搭建
  • 测试数据准备
  • 测试工具配置

3.2 测试执行阶段

(1) 功能测试:[第13周]

  • 用户界面测试
  • 功能模块测试

(2) 性能测试:[第13周]

  • 压力测试
  • 稳定性测试

(3) 安全性测试:[第14周]

  • 认证和授权测试
  • 数据安全测试

(4) 兼容性测试:[第15周]

  • 跨浏览器测试
  • 第三方服务兼容性测试

3.3 测试总结阶段

完成日期:[第16周]

  • 测试报告编写
  • 问题修复跟踪
  • 测试总结会议

4. 资源分配

(1)人力资源

  • 模型训练:许莹柔
  • 测试:阿丽娅
  • 界面开发:梁晓君
  • 界面美化:肖晓霞

(2) 技术资源

  • 开发工具:如免费的集成开发环境(IDE)和版本控制系统,例如Visual Studio Code、Git。
  • 技术平台:利用学校提供的软件或开源软件,如Linux操作系统、Apache服务器。
  • 硬件资源:使用学校实验室的计算机或个人电脑进行开发和测试。
  • 软件资源:使用开源数据库如MySQL,以及免费的中间件和开发框架,如Node.js或Django。

(3) 物质资源

  • 办公设施:利用学校提供的教室或图书馆作为工作和会议场所。
  • 用品:使用学校提供的打印服务或共享文具。
posted @ 2024-11-06 19:27  9650  阅读(81)  评论(0编辑  收藏  举报