团队作业2-《需求规格说明书》
软件工程 | 班级链接 |
---|---|
作业要求 | 作业要求 |
作业目标 | 设计团队项目、规划项目计划 |
github仓库 | 团队项目 |
队名:P人大联盟
团队成员
姓名 | 学号 |
---|---|
王睿娴 | 3222003968 |
张颢严 | 3222004426 |
梁恬(组长) | 3222004467 |
潘思言 | 3222004423 |
一、需求规格说明书
情感分析系统
1、引言
1.1、目的
- 本需求规格说明书旨在描述情感分析系统的功能需求,性能需求和系统设计目标,以便开发团队理解项目目标,并为后续的设计和实现提供依据。
1.2、文档结构
- 文档包括项目背景,项目目标,面向用户需求分析,功能需求,和技术需求的内容,以便读者了解情感分析系统的全面信息。
1.3、预期读者
- 本需求文档的预期读者为开发人员、产品经理、测试人员及相关项目干系人。
2、项目概述
2.1、背景
- 随着社交媒体和在线评论平台的迅猛发展,用户在社交网络、电子商务网站、论坛等平台上发布大量的文本评论和反馈。
- 这些文本数据不仅反映了用户的情感和态度,也为企业提供了宝贵的市场洞察。
- 然而,面对海量的文本数据,企业常常面临信息过载的问题,难以快速、准确地提取有价值的情感信息。
2.2、项目目标
- 系统实现目标为对用户输入的想要分析的微博词条网址链接里的文字数据进行情感分析,然后得出关于该微博词条的情感是正向,负向还是中立结果,并给出关于该词条的文字数据的词云图。
3、需求分析
3.1、面向用户需求分析
典型用户 | 用户特征 | 用户需求 |
---|---|---|
市场营销经理 | 负责企业产品的市场推广和品牌管理 | 收集客户反馈,识别品牌情感倾向 |
了解市场动态与消费者行为 | 了解广告效果,优化营销策略 | |
客户服务经理 | 负责客户关系管理 | 察觉客户反馈的正负向,给予及时响应 |
关注客户满意度与服务质量 | 分析客户情感满意度,优化客户服务流程 | |
社交平台运营者 | 负责内容管理和用户互动 | 了解用户态度和需求,优化平台内容或机制 |
监测社区动态与用户反馈 | 及时发现社区舆情倾向,进行调整与处理 |
3.2、功能性需求
功能需求 | 描述 |
---|---|
数据收集 | 从特定微博词条网址中收集发布的文本数据 |
数据预处理 | 对提取的文本进行处理,以提高数据质量,得出较为准确结果 |
情感分析 | 对预处理后的文本进行情感是正向,负向还是中立的分析 |
用户界面 | 给出可输入特定微博词条网址的输入处,显示情感分析结果与文本数据的词云图 |
3.3、技术需求
技术需求 | 描述 |
---|---|
从互联网上抓取和提取信息 | 使用爬虫工具和框架实现从指定微博词条网址抓取文本数据 |
NLP 文本预处理 | 使用自然语言处理(NLP)技术实现文本去噪、分词、去停用词、词形还原等预处理流程,以提高分析效果 |
情感分类模型训练 | 使用PyTorch实现双向 Transformer(BERT)情感分类模型的训练和推理 |
可视化交互界面 | 使用Streamlit或flask构建可交互的用户界面,连接情感分析模型,提供输入处并展示词云图和分析结果 |
二、预期用户数量
- 由于目标用户群体是各个公司相关的分析决策员工,系统上线后预期用户量在 200~300 人之间。
三、系统的真实性、可用性 以及价值所在
真实性 | 本项目基于企业运营实际需求,广泛显现于社交媒体、客户服务和市场调研。通过真实数据分析和深度学习技术,定期更新数据源,系统能够准确反映企业情感趋势 |
---|---|
可用性 | 系统提供情感识别和用户友好的界面,支持市场调研和客户反馈分析,方便嵌入企业人员使用分析 |
有价值 | 企业可通过情感分析了解市场情绪和用户反馈,及时应对负面情绪,提升客户满意度和品牌形象 |
有情怀 | 项目旨在促进企业与客户之间的良好互动,推动健康的商业生态,倡导以人为本的服务理念,鼓励企业关注客户需求 |
四、团队项目的Github链接
- 用Github代替码云对项目后续的代码、文档进行增量式管理
▸点我查看项目
五、团队项目 issues 截图
- 用Github里的issues功能代替码云里的issues功能
六、团队项目时间安排表
1、原始安排表
第10周 | 任务 | 预估时间(小时) |
---|---|---|
1. 讨论并编写需求规格说明书 | 8 | |
2. 原型设计,队员估计任务难度并开始学习必要的技术 | 8 | |
3. 编码规范完成、团队平台环境搭建完成、初步架构搭建 | 8 | |
第11周 | 任务 | 预估时间(小时) |
1.原型改进(给目标用户展现原型,并进一步理解需求) | 8 | |
2.架构设计,WBS, 团队成员估计各自任务所需时间 | 团队成员时间总计为10个小时 | |
3.测试计划 | 6 | |
第12、13周 | 任务 | 预估时间(小时) |
1. 团队项目Alpha任务分配计划 | 6 | |
2. 连续7天的Alpha敏捷冲刺,7 篇 每日Scrum Meeting博客+代码提交 | 每天4个小时冲刺,0.5个小时博客,总计63个小时 | |
第14周 | 任务 | 预估时间(小时) |
1.用户反馈+测试计划改进 | 8 | |
2. 团队Alpha阶段个人总结 | 6 | |
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | 6 | |
第15周 | 任务 | 预估时间(小时) |
1. 团队项目Alpha博客:事后分析 | 4 |
2、校正后安排表
第10周 | 任务 | 预估时间(小时) |
---|---|---|
1. 讨论并编写需求规格说明书 | 8 | |
2. 原型设计,队员估计任务难度并开始学习必要的技术 | 8 | |
3. 编码规范完成、团队平台环境搭建完成、初步架构搭建 | 8 | |
第11周 | 任务 | 预估时间(小时) |
1. 原型设计改进(给目标用户展现原型,并进一步理解需求) | 5 | |
2. 架构设计,Work Breakdown Structure | 6 | |
3. 数据收集模块开发(学习爬虫技术) | 10 | |
4. 文本预处理模块开发(学习NLP技术) | 10 | |
第12、13周 | 任务 | 预估时间(小时) |
1. 团队项目Alpha任务分配计划 | 4 | |
2. 每日Scrum Meeting博客+代码提交 | 0.5,共7 | |
3. 连续7天的Alpha敏捷冲刺 | 每人每天各3,每人共42 | |
3.1. 情感分类模型的研究与实现(学习Transformer) | 15 | |
3.2. 用户界面模块开发(学习Streamlit或flask) | 10 | |
3.3. 完成所有模块的集成 | 6 | |
3.4. 编写测试计划与并进行功能测试 | 6 | |
3.7. 收集反馈,优化系统 | 10 | |
第14周 | 任务 | 预估时间(小时) |
1. 用户反馈+测试计划改进 | 8 | |
2. 团队Alpha阶段个人总结 | 6 | |
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | 6 | |
第15周 | 任务 | 预估时间(小时) |
1. 团队项目Alpha博客:事后分析 | 4 |
3、矫正计算方法
功能模块分解具体化 | 将任务分解为具体功能模块,根据复杂性合理分配时间,例如,基础模块(数据提取和文本预处理)分配较少时间,而复杂模块(情感分类模型)分配更多时间 |
---|---|
合理化工作量与时间 | 考虑团队成员的时间管理和能力,确保每周工作量适中,避免疲劳,推动项目有效进展 |
增加技术学习时间 | 在每个模块开发中加入必要的技术学习时间,帮助团队掌握新技术(如NLP、深度学习和前端可视化) |
七、团队分工及完成情况
团队项目工作 | 负责队员 | 完成情况 |
---|---|---|
项目任务的组织,推进,跟踪与调整 | 梁恬 | 根据实际情况推进并调整任务规划中 |
管理项目版本控制与协作 | 全员 | 已创建团队博客 |
项目博客编写 | 全员 | 按时按要求撰写中 |
爬虫技术和NLP技术学习,系统数据收集和数据预处理模块的开发 | 王睿娴 | 学习技术中 |
深度学习框架技术学习,系统情感分析模型模块的开发 | 张颢严 | 学习技术中 |
Streamlit或flask技术学习,系统用户界面模块的开发 | 潘思言 | 学习技术中 |
编写测试计划,对系统进行全面的测试 | 梁恬 | 编写测试计划中 |
根据用户反馈与性能分析,优化系统 | 全员 | 还未开始 |
八、团队成员感想
队员 | 感想反馈 |
---|---|
王睿娴 | 尽管这些工具对我来说都是全新的,但我很期待能够掌握这些技术,完成这项任务。接下来,我计划通过查阅官方文档、观看相关教程,甚至通过一些在线社区寻求帮助,逐步掌握这些工具。我相信,只要保持专注和耐心,最终能够克服初期的困难,逐步熟练掌握这些技术,为项目和团队带来实质性的帮助 |
张颢严 | 我相信,这次学习将不仅为情感分析的模型训练打下坚实的基础,也会为我未来在自然语言处理领域的进一步探索铺平道路 |
梁恬 | 陌生的技术与领域有较多,希望自己能够克服畏难情绪,积极学习实践,多向队内优秀同学学习,在项目实践中增长自己的能力与见识 |
潘思言 | 需要学习的东西还很多 |