1组 需求分析报告

一、 团队基本情况

1.1 团队整体计划安排

  • 10.20-10.31

    • 确定选题及协商分工

    • 基础学习及前期准备

    • 完成接口设计及数据库搭建

    • 完成UI设计并实现至少5个页面布局

  • 11.1-11.8

    • 完成75%目标检测等算法的代码编写

    • 前端完成所有页面布局设计

    • 后端实现50%基础接口

    • 选择指定场景拍摄视频对功能进行黑盒测试

  • 11.9-11.20

    • 后端基本实现所有基础接口

    • 基本实现所有算法的功能

    • 前后端完成对接

    • 完成Alpha版本并发布,编写产品相关文案

  • 11.21-11.27

    • 根据特殊场景对算法进行优化处理

    • 对产品进行性能维护及BUG修复

    • 根据用户体验完成Beta版本并发布

    • 完成相关文案总结

1.2 团队分工

Ø 产品经理:

  • 王业震:

    产品统筹

    需求分析

    任务分发

    进度管理

Ø 项目开发人员:

  • 黄志翔:

    安卓端开发

  • 郑浩彬:

    后端搭建

    Yolov5算法实现

  • 毛长江:

    DeepSort算法实现

    Yolov5算法实现

  • 张静:

    OpenPose算法实现

  • 王业震:

    Insightface算法实现

Ø 美工:

  • 施可婳

Ø 视频制作与宣传:

  • 陈志良

1.3 团队贡献评估

成员 本次作业工作 贡献度
王业震 团队基本情况的撰写,需求报告的撰写,UML图的制作 15%
郑浩彬 界面原型的设计,UML图的制作,验收标准的撰写 18%
毛长江 汇报ppt的制作,汇报讲稿的撰写,UML图的制作 18%
黄志翔 项目展示视频的制作,界面原型的制作,燃尽图思维导图的制作,UML图的制作 18%
张静 汇报ppt的制作,UML图的制作 15%
陈志良 需求报告的撰写 8%
施可婳 学习进度条的制作 8%

1.4 项目思维导图与燃尽图


图1 项目思维导图



图2 燃尽图

二、 UML部分

2.1 用户登录部分

  • 负责人:张静

  • 描述:该部分用于本产品的登录、身份验证。

  • 该部分面临的问题:不同用户具有不同的权限,需要分别进行管理。

  • 解决的问题:使用gateway对用户的访问的进行拦截,通过传入的参数以及对应的token对相应用户的权限进行判断,实现不同权限间的管理。

  • 附:(该部分的所有UML图)


    图3 登录界面活动图



    图4 登录界面类图



    图5 登录界面用例图



    图6 登录界面状态图



    图7 登录界面ER图

2.2 视频实时监测部分

  • 负责人:郑浩彬、黄志翔

  • 描述:该部分用于将用户所要监管的视频源传入,并使用yolov5等算法进行分析处理。

  • 该部分面临的问题:将视频分割成帧进行检测的速度受网络带宽限制以及GPU算力限制,有时难以保证时效性。

  • 解决的问题:对算法中的参数矩阵进行微调,可适当减少神经网络神经元的数量,牺牲部分准确性换取更高时效性;尽可能使用更先进的流媒体服务器。

  • 附:(该部分的所有UML图)


    图8 视频实时检测活动图


    图9 视频实时监测类图


    图10 视频实时监测用例图


    图11 视频实时监测状态图


    图12 视频实时监测ER图

2.3 日志记录部分

  • 负责人:毛长江

  • 描述:该部分用于将监管区域中的行人及垃圾桶状态的日志信息进行保存。

  • 该部分面临的问题:相邻时段之间信息重复性大,冗余度高,易造成后端数据库无效数据过多,负荷过重。

  • 解决的问题:对于无异常的状态下,加大数据记录之间的间隔(前端可展示,但后端选择性记录)。

  • 附:(该部分的所有UML图)


    图13 日志记录部分活动图


    图14 日志记录部分类


    图15 日志记录部分用例图


    图16 日志记录部分状态图


    图17 日志记录部分ER图

2.4 意见反馈部分

  • 负责人:王业震

  • 描述:该部分可以让用户在使用产品的过程中,提供反馈意见,以便我们后续对产品更新迭代,为用户提供更好的体验。

  • 该部分面临的问题:先前的设计仅设计了一个单一的反馈通道,难以对意见分类型处理。

  • 解决的问题:将意见模块划分为四个通道:夸赞、吐槽、建议、求助,对于不同的意见类型,处理的优先级不同。

  • 附:(该部分的所有UML图)


    图18 意见反馈活动图


    图19 意见反馈类图


    图20 意见反馈用例图


    图21 意见反馈状态图


    图22 意见反馈ER图

三、 作业记录相关

3.1 UML设计工具的选择、选择理由和使用后对工具的评价

  • 本次作业使用的UML工具是Visual Paradigm

  • 选择的理由:

  • 评价:官方都说比visio更好用,那就不多说了。界面简洁明了,花费更少的时间,做更多的图!

3.2 遇到的困难及解决方法

  • 困难描述1:大家都没怎么画过UML图,并且绘图工具繁多,不知选择哪个。

  • 解决方案1:在组内成员黄志翔的建议下,我们都选择了Visual Paradigm来画图。至于怎么画,那只能说:学才能会,不学就不会。

  • 困难描述2:对于一款基于监控管理的软件来说,实时性无疑是放在首位的,其他模块的困难其实都无伤大雅,如何做到又快又好,是我们组一直在深究的点。

  • 解决方案2:为了更高的处理速度,尝试过微改神经网络神经元的个数,适度降低百万级别的参数量

3.3 学习进度条

第N周 新增代码(行) 累计代码(行) 本周学习耗时(小时) 累计学习耗时(小时) 重要成长
1 400 400 5 5 完成了团队选题,进行了需求分析、行业市场分析、前景分析、痛点分析,初步规划了市场营销方案,学习了基于深度学习的Yolov5目标检测算法、基于Insightface算法的人脸识别技术及基于MTCNN算法的人脸检测技术、基于深度学习的动作识别技术、基于Yolov5及DeepSort算法的目标跟踪技术
2 1000 1400 12 17 进一步完成了需求分析,制定了整体计划安排,完成了团队分工,绘制了思维导图、UML图,实现了原型的初步设计以及验收验证标准的制定,并学习了Openpose算法

四、 项目展示视频

https://www.bilibili.com/video/BV1B44y1i7mt?spm_id_from=444.41.0.0

相关文章

UML有助于在软件开发生命周期的所有阶段理解和可视化系统。以...
UML各种图总结-精华 https://www.cnblogs.com/jiangds/p/65...
MicrosoftOfficeVisio“UML模型图”模板为创建复杂软件系统的...
用例图1.用例图是UML用于描述软件功能的图形。用例图包括用例...
一、用例图:用例图(usecasediagram)是UML用于描述软件功能...
1.A类B类C类这三个类是什么关系?B类依赖A类和C类因为最主要...