团队作业2需求规格说明书
软件工程 | 班级链接 |
---|---|
作业要求 | 作业要求链接 |
作业要求目标 | 需求规格说明书 |
队伍名称 | 坐姿要队 |
目录
需求规格说明书:
功能结构图:
团队项目描述及预期用户量:
制作一个AI动捕系统
-
面向用户分析 :目前在虚拟主播领域,市面上确实是有很多相关的或免费或收费的实时动捕工具,比较基础的就是只有面部捕捉的工具,比如VUP,一般来说都是免费提供使用的;还有一种就是全身动捕,比较典型的就是前段时间大火的A-Soul,但对于这种商业级的动捕成本往往很高,对精度的要求也很高;对于很多刚入门或者像入门还没入门的新人虚拟主播,能够用到的工具也只有面部捕捉,商业级别的全身动捕的成本他们往往承担不起,同时他们也不需要如此高的精准度。所以,目前市场上缺少一款提供给小虚拟主播的使用的低成本全身动捕的解决方案。
对于UE这个软件,它的MetaHuman在虚拟人领域的面部动捕和动画表现得十分优秀,但是它缺少一套直接相连的实时全身动捕方案。 -
功能性需求:与UE引擎连接实现实时动捕,与Maya连接实现高精度离线动捕
-
技术需求:对人体姿势特征点的实时标记,与UE引擎实现实时数据传输,与通过脚本实现数据向Maya传输,将特征点数据应用于模型骨骼(UE/Maya)
-
预期的用户数量:本地单用户
系统的真实性、可用性和价值所在
-
真实性:谷歌的Mediapipe模型给我们提供了免费的特征点识别的解决方案,通过Socket可以完成Python和UE之间的数据传输;
-
可用性:不需要联网,只需要一个单目摄像头和UE软件,只要两边都启用了Socket,就可以实现数据互传,用户不需要用户关心底层实现逻辑,只要打开就能用;
-
价值所在:可以让广大的小虚拟主播可以实现低成本的全身动捕,也给UE提供了一种实时全身动捕的解决方案;
技术需求:
前端:
- 编程语言:JavaScript、css、html
- 开发框架:vue
后端:
- 编程语言:Python
- 通信:Socket
- 工具:UE、Maya
团队项目码云
码云链接
团队项目issues截图
队员分工及感想:
队员1:谢晗
- 软工角色:PM、前端以及部分后端开发
- 团队分工:将团队的任务计划添加到码云的团队项目issues里、博客汇总
- 完成情况:已完成
- 感想:仅有你爬到山顶了,这座山才会支撑着你!!!(一人尬一句)
队员2:龙丞智
- 软工角色:后端开发、测试
- 团队分工:需求规格说明书、功能结构图
- 完成情况:已完成
- 感想:拼出我们的豪情,也拼出我们斗志昂扬的气概!!!
队员3:王文杰
- 软工角色:PM
- 团队分工:给出团队项目的时间安排表
- 完成情况:已完成
- 感想:心态有多开放,视野就有多开阔
队员4:蓝琪辉
- 软工角色:后端开发
- 团队分工:对系统做详细描述
- 完成情况:已完成
- 感想:如果别人朝你扔石头,就不要扔回去了,留着作你建高楼的基石!!!
队员5:肖卫国
- 软工角色:测试、博文撰写
- 团队分工:排版
- 完成情况:已完成
- 感想:路再长也会有终点,夜再长也会有尽头!!!
队员6:黄嘉熙
- 软工角色:测试、博文撰写
- 团队分工:排版
- 完成情况:已完成
- 感想:不管雨下得有多大,总会有停止的时候。乌云永远遮不住微笑的太阳!!!
团队计划
时间 | 原任务安排 | 矫正后的任务安排 |
---|---|---|
第5周 | 1.团队组队、团队博客 | 已完成 |
2.团队介绍、成员展示、角色分配、选题确定 | 已完成 | |
3.制定团队计划安排,团队贡献分的规定 | 已完成 | |
第6周 | 1.需求规格说明书 | 1.相关系统分析员向用户初步了解需求,然后用相关的工具软件列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,初步定义好少量的界面。 |
2.原型设计,队员估计任务难度并学习必要的技术 | 2.深入了解和分析需求,做出一份文档系统的功能需求文档,清楚列出系统大致的大功能模块,大功能模块有哪些小功能模块,并且还列出相关的界面和界面功能。 | |
3.编码规范完成、平台环境搭建完成、初步架构搭建 | 3.系统分析员向用户再次确认需求。 | |
第7周 | 1.原型改进(给目标用户展现原型,并进一步理解需求) | 对软件系统进行概要设计,即系统设计。概要设计需要对软件系统的设计进行考虑,包括系统的基本处理流程、系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为软件的详细设计提供基础。 |
2.架构设计,WBS, 团队成员估计各自任务所需时间 | 进行软件系统的详细设计。在详细设计中,描述实现具体模块所涉及到的主要算法、数据结构、类的层次结构及调用关系,需要说明软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,以便进行编码和测试。应当保证软件的需求完全分配给整个软件。详细设计应当足够详细,能够根据详细设计报告进行编码。 | |
3.测试计划 | ||
第8,9周 | 1. 团队项目Alpha任务分配计划 | 在软件编码阶段,根据《软件系统详细设计报告》中对数据结构、算法分析和模块实现等方面的设计要求,开始具体的编写程序工作,分别实现各模块的功能,从而实现对目标系统的功能、性能、接口、界面等方面的要求。 |
2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 | ||
第10周 | 1.用户反馈+测试计划改进 | 测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能。完成测试后,完成验收并完成最后的一些帮助文档。 |
2. 团队Alpha阶段个人总结 | 用户验收。 | |
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | ||
第11周 | 1. 团队项目Alpha博客:事后分析 | 根据用户需求的变化或环境的变化,对应用程序进行全部或部分的修改。 |