团队作业3--需求改进&系统设计
软件工程 | 班级链接 |
---|---|
作业要求 | 作业要求 |
作业目标 | 改进项目需求分析和原型设计,进行系统设计,完成项目执行与测试的计划制定 |
github仓库 | 团队项目 |
队名:P人大联盟
团队成员
姓名 | 学号 |
---|---|
王睿娴 | 3222003968 |
张颢严 | 3222004426 |
梁恬(组长) | 3222004467 |
潘思言 | 3222004423 |
本篇博客目录
1、需求&原型改进
- 微博情感分析系统
1.1、选题及需求的修改
问题1 | 用户需求的分析微博文本数据范围需特殊化 |
---|---|
修改1 | 添加功能:用户在输入微博搜索时间地区范围外可另输入重点关注的词句,以缩小搜索范围,使分析结果更能服务于用户真实需求 |
问题2 | 用户需求更多更直观的文本情感分析结果 |
修改2 | 添加功能:系统在生成整体文本的词云图基础上,增加生成情感正负向文本数据的词云图与情感正负向分布扇形图 |
问题3 | 用户需求更具体的基于情感分析结果的结论与建议 |
*修改3 | 添加功能:系统将根据已标注情感正负向的文本数据,用户输入的指定范围与重点词句,生成总体分析文本总结,并向现有AI助手提问以获取相关结论与建议 |
问题4 | 项目开发实现上可搜索并参考网络现有的情感分析模型训练数据集等相关资料 |
修改4 | 添加规划:查找对应的开源资源并学习实践如何将其应用于团队项目 |
1.2、需求规格说明书的改进
1.2.1、初稿的不足
类型 | 具体不足 |
---|---|
功能考虑不全 | 用户想要更特殊化的数据收集范围 |
功能考虑不全 | 用户想要更多更直观的分析结果,结论与建议 |
文档缺少描述 | 文档目录,对一些概念的定义说明 |
文档缺少描述 | 用户场景,一般约束,假设与依据 |
文档缺少描述 | 外部接口需求,性能需求,属性,验收标准 |
以下将为需求说明规格书改进,增加的具体内容
1.2.2、需求说明规格书目录
- 1、引言
- 1.1、目的
- 1.2、文档结构
- 1.3、预期读者
- 1.4、定义说明
- 2、项目概述
- 2.1、背景
- 2.2、项目目标
- 2.3、一般约束
- 2.4、假设与依据
- 3、需求分析说明
- 3.1、面向用户需求分析
- 3.2、典型用户使用场景
- 3.3、功能性需求
- 3.4、技术需求
- 3.5、外部接口需求
- 3.6、性能需求
- 4.、验收标准
1.2.3、文档结构
- 文档包括项目背景,项目目标,面向用户需求分析,功能需求,技术需求,性能需求,验收标准等内容,以便读者了解情感分析系统项目的全面信息
1.2.4、定义说明
使用的词汇 | 定义说明 |
---|---|
情感分析 | 使用自然语言处理、文本分析、计算语言学和数据挖掘技术来识别、提取、量化和研究情感表达 |
情感极性 | 情感表达所带有的情感倾向性,分为正面和负面 |
词云图 | 将文本数据中出现频率较高的词汇以不同大小、颜色和字体显示的视觉化工具 |
1.2.5、项目目标
- 自动化数据收集和情感分析
- 对用户输入的时间地区范围内的且跟输入词句重点相关的微博发布的中文文字数据进行情感极性判断分析。
- 输出并可视化分析结果
- 输出总体分析结果文本,显示指定范围内,与重点词句相关的微博文本数据的总体,情感正向和负向的词云图,情感正负向分布情况扇形图。
- 收获对分析结果进一步的结论与建议
- 生成向AI助手提问来收获对分析结果的结论与建议的文本,提供跟AI助手交流的页面/接口。
1.2.6、一般约束
进行本软件开发工作的约束条件 | 具体阐释 |
---|---|
开发周期短 | 4周的开发时间需要开发者合理规划时间,因此项目功能开发时有所侧重,甚至是取舍,项目最终呈现会与预期有所差距 |
所采用的方法与技术有限 | 项目团队成员的知识技术水平不够成熟,因此在开发中需要一边并发学习多种技术和能力一边开发实际项目,项目最终呈现会与预期有所差距 |
1.2.7、假设与依据
本项目是否能够成功实施,主要取决于以下的条件:
- (1)团队成员的积极合作配合,为了项目的开发和实施,对个人时间进行合理规划同时为团队做出合理牺牲,配合队友完成任务。
- (2)团队开发前期全面搜查并形成完整详细的功能和性能需求资料,以便于团队对其进行分析,从而形成完善的软件需求。
- (3)团队熟练掌握能够适用于该项目的技术,这是系统的性能是否能够保障和项目能否成功的保证。
1.2.8、典型用户使用场景
(1)用户特征描述
化名 | 小A |
---|---|
用户身份 | 某企业的产品营销经理, 负责市场研究,产品定位,产品推广,营销策略制定等方面 |
使用环境 | 主要环境是公司。家中,地铁以及其他地方也可以成为使用该软件的次要环境 |
生活工作情况 | 经常需要收集分析大量市场或用户信息来佐证,辅助,调整营销推广策略的制定 |
知识层次与能力 | 深度了解市场营销学等营销专业知识,但对数据分析的专业知识并不熟悉 |
用户的动机 | 希望能够高效利用微博中的用户对相应产品发表的内容,分析出目前市场用户对产品的情感态度与信息,得到的与产品相关的结论与建议 |
用户的困难 | 现有网络的内容庞杂而繁复,不熟悉使用程序进行数据分析,很难在有针对性地找到文本数据,得出情感分析结果,且常在甄别与筛选微博用户信息过程中浪费掉大量时间 |
用户的偏好 | 能有更多自主性去选定数据获取范围,无需花费太多时间学习如何使用软件 |
(2)用户场景描述
- 小A近期请了小B明星为自己企业的产品C录制了一份广告在市场上发布
- 小A看着微博中关于这次发布的广告与产品C各式各样的评论内容,把握不准该广告的发布效果与用户对产品的情感态度
- 小A希望能够使用易操作的软件来分析在当前用户对广告的情感信息,并获取直观易懂的分析结果,结论与建议
(3)解决方法
步骤 | 详细描述 |
---|---|
进入系统分析界面 | 小A在他人的推荐下,选择了我们的微博情感分析系统,点开了我们微博情感分析系统应用启动的网址链接,即刻进入到系统首页界面 |
输入指定微博发布内容时间地区范围与重点关注词句 | 小A根据界面指示,选择“话题分析”,跳转“话题分析”输入界面,将广告发布的后续时间,重点地区以及与广告产品C相关的词输入到相应的输入框 |
点击“开始分析”按钮 | 小A点击界面中的“开始分析”的按钮 |
查看情感极性分析结果 | 在一段时间收集处理分析数据后,界面会显示对应的分析结果——————指定范围的微博文本的情感分析文本结果,总体文本数据词云图,情感正向文本词云图,情感负向文本词云图,文本数据情感正负向分布扇形图 |
跳转ai助手获取结论建议 | 点击分析结果下方的“点击查看AI助手分析”按钮,跳转至链接AI助手的界面,发送输入框中已生成的分析结果提问文本,AI助手处理回复相关结论与建议 |
1.2.9、功能性需求
功能需求 | 描述 |
---|---|
数据收集 | 根据用户指定时间地区范围从微博中收集相关的用户发布的文本数据 |
数据预处理 | 对提取的文本进行处理,以提高数据质量,得出较为准确结果 |
情感分析 | 对预处理后的每条文本数据进行情感是正向还是负向的分析标注 |
数据可视化 | 对收集的微博文本数据,标注情感正负向的文本数据使用词云图的可视化方式进行总结呈现,对整体情感正负向分布占比信息使用扇形图呈现 |
用户交互 | 向用户给出可输入微博内容发布时间地区范围的输入处,并能向用户显示指定范围的文本数据的情感正负向结果与整体文本数据的词云图,以及跟AI助手交流,收获建议与结论的输入输出界面 |
生成提问,链接AI助手 | 基于分析结果与输入的重点关注词句生成提问,链接chatgpt或者其他ai助手,发送对应提问,以提供更直接的结论与建议 |
1.2.10、外部接口需求
(1)用户接口要求
接口类型 | 详细要求 |
---|---|
输入接口 | 支持用户通过Web表单输入微博内容发布时间地区范围和重点关注词或者是向AI助手提问内容,输入字段应包含文本框和提交按钮 |
输出接口 | 展示情感分析文本结果、词云图,扇形图和AI助手结论建议的Web页面,结果应以图表或文本形式清晰展示 |
错误处理 | 对于无效输入或链接,应提供明确的错误提示信息 |
(2)通信接口要求
通信要求 | 通信规范 |
---|---|
可靠性 | 系统应保证前端页面与后端数据传输的可靠性,确保数据传输的完整性和准确性 |
异常处理 | 系统应能够处理服务不可用等情况,并提供相应的错误消息 |
1.2.11、性能需求
性能类型 | 具体描述 |
---|---|
大数据处理 | 能够处理至少10,000条文本数据的情感分析,确保结果一定准确率 |
可用性 | 系统应在80%的时间内可用,确保用户能随时使用启动 |
1.2.12、验收标准
类型 | 验收标准 |
---|---|
功能性 | 能够成功爬取用户指定时间地区范围微博和与输入关键词句相关的微博文本数据 |
能够对爬取的数据进行情感分析标注,并正确分类为正向或负向 | |
生成整体文本数据的词云图和情感正负向的文本数据词云图 | |
用户界面简洁易用,用户可以轻松便捷与软件交互 | |
分析结果和词云图直观易读 | |
根据分析结果与用户重点关注词句,生成向AI助手提问文本 | |
性能 | 系统在90%的时间内可用,无重大故障 |
1.3、功能分析的四个象限
杀手功能 | 外围功能 | |
---|---|---|
必要需求 | 数据收集处理和情感分析标注 | 易用的用户界面 |
辅助需求 | 基于情感结果生成的词云图 | 基于关键词与情感分析结果向ai助手提问,显示AI助手回复的结论和建议 |
1.4、任务分解WBS图
1.5、项目进度计划调整
第11周 | 任务 | 预估时间(小时) |
---|---|---|
1. 原型设计改进(给目标用户展现原型,并进一步理解需求) | 5 | |
2. 架构设计,Work Breakdown Structure | 6 | |
3. 团队项目Alpha任务分配计划 | 4 | |
4. 编写测试计划 | 3 | |
第12、13周 | 任务 | 预估时间(小时) |
1. 每日Scrum Meeting博客+代码提交 | 0.5,共7 | |
2. 连续7天的Alpha敏捷冲刺 | 每人每天各3,每人共42 | |
2.1. 数据收集与数据可视化模块开发 | 21.5 | |
2.2. 情感分析模块开发 | 19 | |
2.3. 文本预处理模块开发 | 2 | |
2.4. 用户交互模块开发 | 9 | |
2.5. 提问生成,链接AI助手模块开发 | 9 | |
2.6. 系统集成 | 10 | |
2.7. 系统测试 | 10 | |
2.8. 优化系统 | 10 | |
第14周 | 任务 | 预估时间(小时) |
1. 收集用户反馈+测试计划改进 | 8 | |
2. 团队Alpha阶段个人总结 | 6 | |
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理 | 6 | |
第15周 | 任务 | 预估时间(小时) |
1. 团队项目Alpha博客:事后分析 | 4 |
2、系统设计
2.1、系统的架构设计
3、Alpha任务分配计划
3.1、功能模块
- 数据收集模块
- 情感分析模块
- 文本预处理模块
- 数据可视化模块
- 用户交互模块
- 提问生成,链接AI助手模块
3.2、功能模块的优先级与依赖关系
- 优先级从1到6逐级降低
功能模块 | 优先级 | 依赖关系 |
---|---|---|
数据收集模块 | 1 | 无 |
文本预处理模块 | 2 | 依赖于数据收集模块 |
情感分析模块 | 3 | 依赖于数据收集与文本预处理模块 |
数据可视化模块 | 4 | 依赖于情感分析模块 |
用户交互模块 | 5 | 依赖于数据可视化模块和情感分析模块 |
提问生成,链接AI助手模块 | 6 | 依赖于数据可视化和用户交互模块 |
3.3、选取的功能项
- 数据收集模块:URL生成,数据抓取
- 文本预处理模块:文本清洗,文本分词
- 情感分析模块:情感模型训练,情感分析预测
- 数据可视化模块:词云生成,扇形图生成
- 用户交互模块:用户界面,输入输出设置
- 提问生成,链接AI助手模块:生成提问文本,链接AI助手
3.4、产品订单
3.5、功能项的分配
功能项 | 分配时间(单位:小时 | 编码队员 |
---|---|---|
URL生成 | 6 | 王睿娴 |
数据抓取 | 6 | 王睿娴 |
文本清洗 | 4 | 梁恬 |
文本分词 | 3 | 梁恬 |
情感模型训练 | 12 | 张颢严 |
情感分析预测 | 7 | 张颢严 |
词云生成 | 4 | 梁恬 |
扇形图生成 | 4 | 梁恬 |
用户界面 | 8 | 潘思言 |
输入输出设置 | 5 | 潘思言 |
生成提问文本 | 3 | 梁恬 |
链接AI助手 | 5 | 潘思言 |
3.6、冲刺订单
3.7、冲刺计划的甘特图
4、测试规划
4.1、产品
- 微博情感分析系统
4.2、测试目标
- 确保微博情感分析系统的所有功能模块能在一定硬软件配置条件下正常运行,并满足一定的用户需求和性能需求
4.3、测试方法
- 单元测试:对每个模块的独立功能进行验证
- 集成测试:验证几个模块形成的子系统的功能
- 系统测试:验证整个系统的功能和性能
4.4、测试停止条件
- 所有关键功能通过测试
- 所有已知的关键缺陷被修复
4.5、测试环境和工具
- 测试环境:Windows 11操作系统,Pycharm, edge浏览器
- 测试工具:Python自带的测试框架
4.6、测试数据
- 正常数据和异常数据
4.7、测试计划表
测试内容 | 时间安排 | 负责队员 | 测试方法 | 测试停止条件 |
---|---|---|---|---|
数据收集功能测试 | 2024.11.25 ~ 2024.11.27 | 王睿娴 | 单元测试 | 数据收集正确执行,无关键缺陷 |
文本预处理功能测试 | 2024.11.25 ~ 2024.11.27 | 梁恬 | 单元测试 | 文本预处理正确执行,无关键缺陷 |
情感分析功能 | 2024.11.25 ~ 2024.11.27 | 张颢严 | 单元测试 | 情感分析正常执行,无关键缺陷 |
用户交互功能 | 2024.11.25 ~ 2024.11.27 | 潘思言 | 集成测试 | 界面交互正确执行,无关键缺陷 |
数据可视化功能 | 2024.11.25 ~ 2024.11.27 | 梁恬 | 单元测试 | 词云图扇形图正确生成,无关键缺陷 |
提问生成,链接AI助手功能 | 2024.11.25 ~ 2024.11.27 | 潘思言 | 集成测试 | 建议有效生成,用户满意度达标 |
大数据处理性能 | 2024.11.27 | 梁恬 | 系统测试 | 能正常收集处理分析10000条数据 |