北航软件工程 [I.2] 个人作业:软件案例分析
北航软件工程 [I.2] 个人作业:软件案例分析
| 项目 | 内容 |
|---|---|
| 这个作业属于哪个课程 | 2026年春季软件工程 (北京航空航天大学 - 计算机学院) |
| 这个作业的要求在哪里 | [I.2] 个人作业:软件案例分析 |
| 我在这个课程的目标是 | 学习融会软件工程理论,参与真实项目的开发全流程,积累软件开发的经验 |
| 这个作业在哪个具体方面帮助我实现目标 | 通过多方面了解市面上成熟软件,理解软件、商业软件的设计逻辑和平衡 |
第一部分 调研评测
1. 软件介绍
我选择了QQ音乐(PC版)作为本次评测的主要对象,QQ音乐是一款集音乐播放、歌单管理、个性化推荐与社交互动于一体的综合性音乐流媒体软件。
2. 软件使用

QQ音乐(PC版)的主界面如上图,大致可分为四板块:
-
个人中心
-
搜索与识别
-
分类推荐/详细展示处
-
歌曲播放管理
-
推荐栏目可以切换不同的推荐类别,如综合推荐、乐馆、听书热播榜、飙升榜、常听艺人等。

- 顶部的搜索栏能够通过关键词、歌手、相似联想搜索到相关内容并展示,范围包括我的音乐(喜欢、最近播放、用户歌单)、在线歌曲、歌手、官方歌单等。同时会记录搜索历史。

- 左侧的个人中心管理了喜欢歌曲、最近播放、本地和下载、歌单等。

- 底部的播放栏可以对正在播放的歌曲进行查看和操作,包括查看、调整歌词,调整播放时间点,切换音质,上一首/下一首/暂停,添加喜欢,进行评论等操作。


3. 软件分析
3.1 产品使用的基本流程
- 注册与登录:打开应用,可选择QQ/微信/QQ音乐(移动端)登录,快速同步账户信息。
- 搜索音乐:通过搜索框查找歌曲、歌手或专辑,支持关键词搜索和关联搜索。
- 播放音乐:点击底部歌曲封面进入播放界面,支持歌词显示、音效调节、循环模式等。
- 歌单管理:可以管理喜欢的歌曲,创建、收藏歌单。
- 社交互动:评论歌曲。
3.2 是否解决用户需求
基本满足。用户可以方便地找到想听的音乐,享受高品质音频,并与其他用户互动。但在个性化推荐方面,有时推荐内容不够精准。
3.3 优缺点
-
优点:
- 音乐版权丰富,曲库规模大,覆盖华语、欧美、日韩等,主流歌曲基本都有。
- 音质选项多,支持无损音质。
- 界面美观,操作简单,播放界面动效流畅。
- 用户数据积累深厚,基于数亿用户的听歌行为训练推荐模型。
- 与腾讯生态整合,方便分享。
-
缺点:
- 付费功能占比较大,非会员频繁被限制打断,体验不流畅。
- 评论区质量参差不齐,无效评论、恶意评论很多。
- 社交功能入口隐蔽,提示不足,需要多次尝试才能找到。
- 曲库丰富但对应的歌词库不足。
- 功能堆砌,音乐软件却并入了小程序游戏。
4. 改进意见
- 精简非核心功能,优化主场景体验,将小程序游戏、直播、K歌等与听歌无关的功能从首页移除,放入二级页面,或允许用户在设置中隐藏、卸载这些模块,保证核心播放界面的简洁纯净。
- 提升评论区质量,营造良好社区氛围,引入AI自动过滤低质评论(如广告、刷屏、恶意言论),对多次违规用户禁言或限制评论。设立“精彩评论”推荐位,鼓励高质量内容创作,对优质评论给予积分或会员奖励。
- 优化社交功能引导,降低使用门槛,新用户首次使用时,通过弹窗引导介绍社交功能。考虑将社交功能与微信/QQ好友关系更紧密地结合,如直接显示微信好友的听歌状态,减少用户寻找入口的成本。
- 扩充歌词库,开放用户歌词上传/纠错功能,对贡献者给予积分奖励,并审核后采纳。在播放页面增加“歌词贡献者”标识,提升用户参与感
5. 用户调研
我采访的是王德庆老师班级的胡文琪同学。
胡文琪同学平时喜欢听音乐,对市面各类主流音乐软件都有尝试。她从2017年开始使用QQ音乐,至今已有九年,对QQ音乐非常熟悉。
采访过程:

采访对象实际使用的产品栏目:
集中在推荐和播放功能,常使用推荐页的每日30首。
遇到的问题和亮点:
- 亮点:胡文琪同学觉得QQ音乐的曲库很全,音质也不错。长期使用界面也很舒服。
- 问题:她觉得QQ音乐收费功能占比太大了,非会员体验非常不好。并且QQ音乐发展过程中,很多免费歌曲都变成了会员歌曲。
从用户体验角度需要改进的地方:
- 优化非会员体验,减少播放中突然中断的挫败感,提供免费试听时长或次数,推广“看广告解锁免费时长”的替代方案,让用户有选择权。
- 开屏广告、播放页广告等过于频繁,影响沉浸式听歌体验。建议适当减少广告数量,或推送与音乐相关的广告(如演唱会、新歌推广),提升广告的精准度和接受度。
6. 评测结论
综合使用体验和用户调研,我认为QQ音乐在曲库规模、音质上表现出色,但在用户体验尤其是非会员用户体验上有提升空间。因此,我的评测结论是:d 好,不错。
7. Bug 分析
测试环境:
- 操作系统:Windows 11 25H2
- QQ音乐(PC版)版本:21.81
- iOS版本:16.5
- QQ音乐(移动端)版本:20.1.5
- 网络环境:Wi-Fi
Bug 1:即时同步最近播放有误
-
复现步骤:
- 在QQ音乐(PC版)和QQ音乐(移动端)登录同一账号。
- 打开QQ音乐(PC版),播放任意一首歌曲(如《词不达意》)。
- 打开QQ音乐(移动端),播放任意一首歌曲(如《盛世遗红》)。
- 打开QQ音乐(PC版),查看最近播放。
- 尝试刷新、在QQ音乐(PC版)内再次播放任意歌曲(如《成都》),观察最近播放的变化。
-
Bug具体情况描述:
虽然PC版最近播放下方注明已同步其他设备播放过的歌曲,但是可以观察到PC版只更新了PC版下一首播放的歌曲(《成都》),没有即时更新上移动端播放的歌曲(《盛世遗红》),且至少5分钟之内无法同步。![f7cf2b2c-b20c-4796-95cd-99fd871f39f0]()
![585c67f00bc89c7f426baa5b30b377bf]()
![0b1bd9a5-1ee0-461a-a59f-d7ebd7598298]()
-
可复现性:
必然发生。 -
Bug分析:
- 正常行为:用户在移动端播放新歌后,PC端应在合理时间(如30秒内)更新最近播放列表。
- 可能成因:跨设备同步机制可能采用定时拉取策略(如每10分钟同步一次),而非实时推送;或移动端播放后未立即上报数据,而是等待本地积累一定量后才上报;也可能是服务端对最近播放数据做了缓存或延迟写入,以减少数据库压力。
- 严重性:
- 系统功能:★★☆☆☆(同步功能存在但不及时,核心播放功能未受影响)
- 安全性:☆☆☆☆☆(无安全风险)
- 用户体验:★★★☆☆(用户信任感下降,尤其是依赖多端切换的用户)
- 综合星级:★★☆☆☆(中等缺陷)
- 为何未在发布前修复:可能是开发团队将同步延迟视为可接受的性能优化,未充分意识到用户对“即时”的期待;或者测试场景未覆盖跨设备操作的时效性验证,属于测试把关不严。
- 改进建议:将同步机制从定时轮询改为实时推送(如采用WebSocket),当移动端播放歌曲时立即上报服务端并推送至PC端自动刷新列表;同时增加手动刷新按钮和“最后同步时间”提示,确保用户可控且知晓状态。
Bug 2:歌单筛选后无法按筛选结果播放
-
复现步骤:
- 打开QQ音乐(PC版),进入最近播放,并将循环模式调至列表播放。
- 在最近播放中选择任意标签进行筛选。
- 选择筛选结果的第一首歌曲进行播放。
- 观察当前播放列表,或查看下一首播放的歌曲。
-
Bug具体情况描述:
筛选后点击播放,当前播放列表仅包含被点击的那一首歌,筛选结果中的其余歌曲未被加入播放队列,无法自动续播筛选结果中的其他歌曲。
配图:![2a2cfc27-5eb8-4431-9c51-98d86446f1e3]()
![image-4]()
-
可复现性:
必然发生。 -
Bug分析:
- 正常行为:在筛选结果中点击任意歌曲,应将当前筛选列表作为新的播放队列,自动依次播放。
- 可能成因:筛选功能仅改变了界面显示,未同步更新播放器内核的播放队列。点击播放时,程序只将当前选中歌曲加入队列,而未将整个筛选结果作为新队列加载。这可能是开发时未将筛选与播放逻辑正确关联,属于功能设计缺陷。
- 严重性:
- 系统功能:★★★☆☆(筛选后播放不符合用户预期,核心播放逻辑不完整)
- 安全性:☆☆☆☆☆(无安全风险)
- 用户体验:★★★☆☆(用户期望连续播放筛选列表,但只能单曲,体验割裂)
- 综合星级:★★★☆☆(中等缺陷)
- 为何未在发布前修复:可能是开发团队低估了用户对筛选后连续播放的需求,或测试时只验证了筛选显示而未覆盖播放场景,属于测试把关不严。
- 改进建议:在点击播放时,获取当前筛选结果的全部歌曲ID,替换播放器当前队列并定位到所选歌曲开始播放。同时,在播放列表界面提供“一键播放全部”的按钮,并保持筛选状态与播放队列联动。
第二部分 分析
工作量分析
假设团队人数6人(计算机大学毕业生,有专业UI支持),开发一个类似QQ音乐的基础版本(核心功能+基本UI),需包含以下核心功能模块:
| 模块 | 子功能 | 估计工作量(人周) |
|---|---|---|
| 用户系统 | 注册/登录(手机号+密码)、第三方登录(微信/QQ)、个人信息编辑、多设备登录态同步、退出登录 | 5 |
| 音乐播放 | 在线流媒体播放(支持标准/高清音质)、本地音乐扫描与播放、播放控制(暂停/播放/上一首/下一首/进度拖拽)、播放模式(顺序/随机/单曲循环)、歌词显示(时间轴同步、翻译)、后台播放、锁屏控制 | 10 |
| 歌单管理 | 创建歌单、编辑歌单(名称/封面/描述)、删除歌单、歌单内歌曲增删、歌单详情页、收藏歌单、我创建的歌单/收藏的歌单列表 | 9 |
| 搜索功能 | 搜索歌曲/歌手/专辑、搜索结果分类展示、搜索历史记录(本地存储)、热门搜索推荐 | 6 |
| 推荐模块 | 首页推荐(基于热歌榜、新歌速递)、个性化推荐(简单协同过滤,基于用户听歌历史)、每日推荐歌单 | 7 |
| 多端适配 | PC端(Windows)、移动端(iOS/Android)、Web端(H5),三端共用一套后端API,UI风格统一但适配各端交互规范(此部分已包含在前端各模块中,此处单列跨端公共逻辑) | 1 |
| 后台服务 | 用户数据存储、歌曲元数据管理、播放记录统计、API网关、CDN对接等基础设施(已分摊到各模块,此处仅计部署运维) | 1 |
| 合计 | 39 |
- 假设团队分工:后端2人,前端3人(分别负责PC/Web、iOS、Android),UI1人(不参与编码,但全程支持设计)。实际开发人力为5人。
- 以上工作量是编码实现所需的人周,未包含需求分析、测试、部署等阶段。加上需求分析与设计(2-3周)、测试与修复(3-4周)、部署发布(1-2周),总工期约为19-20周。考虑经验不足及可能的返工,正常估计总工期为24-26周左右。
该估计基于基础功能版本,若包含QQ音乐现有的直播、K歌、社交等附加功能,开发时间将以年计。
软件质量分析
与同类软件的优劣对比(QQ音乐 vs 网易云音乐)
| 维度 | QQ音乐 | 网易云音乐 |
|---|---|---|
| 曲库规模 | ★★★★★ 版权优势明显,头部歌手版权充足 | ★★★☆☆ 版权短板明显,常出现“灰色歌单”,部分热门歌曲下架 |
| 推荐算法 | ★★★★☆ 基于海量用户数据,热门推荐准确 | ★★★★★ 社区氛围反哺推荐,容易发现小众歌曲 |
| 用户体验 | ★★★★☆ 商业化重,开屏广告多,会员体验流畅,非会员频繁被打断 | ★★★★☆ 界面简洁,社区氛围好,App体积逐渐臃肿 |
| 音质技术 | ★★★★★ 音质选项丰富,播放稳定 | ★★★★☆ 支持无损,但部分歌曲音质标注不清晰 |
| 社交生态 | ★★★★☆ 依托微信/QQ关系链,分享方便,但评论区氛围一般 | ★★★★★ “云村”文化浓厚,评论区常有优质内容 |
| 功能丰富度 | ★★★★☆ 集成直播、K歌、听书、游戏等 | ★★★☆☆ 早期简洁,近年也加入直播、短视频等功能 |
| 商业化程度 | ★★★☆☆ 付费墙明显,会员与非会员体验差距大 | ★★★★☆ 会员价格适中,但版权缺失导致用户仍需跨平台 |
综合
- QQ音乐:版权和音质是核心竞争力,但商业化过重影响体验
- 网易云音乐:社区和推荐是王牌,但版权短板导致用户流失
质量排名
- 如果用户看重版权全、音质好:QQ音乐是第一选择
- 如果用户看重社区氛围、发现小众音乐:网易云音乐更合适
从用户调研可以看出,QQ音乐最需要改进的是在商业变现与用户体验之间找到更好的平衡点。
具体建议:优化非会员体验,减少付费挫败感,建议保持一定量的免费曲库,在保持版权优势的同时,提升用户口碑,避免因商业化过重导致用户流失。
第三部分 建议和规划
市场现状
- 市场概况:
中国数字音乐市场用户规模巨大,据QuestMobile,中国在线音乐月活跃用户规模约6.5-7亿,潜在用户超过10亿(CNNIC报告)。市场仍在增长,尤其是年轻用户对音乐社交、个性化推荐的需求日益增长。 - 产品定位:
QQ音乐定位为综合性音乐平台,主打版权全、音质好,同时拓展社交、直播、K歌等增值服务。优势是版权和腾讯生态,劣势是广告频繁。 - 竞争产品:
主要竞争产品包括网易云音乐、酷狗音乐等。其中网易云音乐以社区和推荐见长,酷狗音乐以老牌用户和直播功能立足。
市场与产品生态
-
核心用户群:
QQ音乐的核心用户是年轻人群(15-35岁),尤其是学生和上班族,他们追求主流流行音乐,有的喜欢分享和社交,有的喜欢独自享受沉浸式音乐。
典型用户画像:大学生,18-26岁,爱好音乐、游戏,收入有限,表面需求是听歌,潜在需求是发现新歌、表达情感、追求时尚和自我、社交互动。 -
产品生态:
QQ音乐可与其他腾讯产品(微信、QQ、腾讯视频、游戏等)联动,形成内容生态。例如在微信分享歌曲可直接播放,微信可选择听歌状态。子产品可相互引流。
产品规划
新功能设计
功能名称:“音乐盲盒”,基于情绪和场景的随机推荐。
- NABCD分析:
- Need(需求):用户经常不知道听什么,需要新鲜感和惊喜;希望音乐能匹配当前情绪或场景。
- Approach(做法):通过用户选择的情绪(如开心、悲伤、运动、学习)或场景(如通勤、睡前、健身),随机推送一个符合的歌单,并附上简短的推荐理由。用户可点赞、收藏、跳过,不断优化模型。
- Benefit(好处):增加发现的乐趣,减少选择困难,提高用户粘性。
- Competition(竞争):网易云有“心动模式”和私人FM,但“音乐盲盒”更强调随机性和场景匹配,差异化在于趣味性和轻量化。
- Delivery(推广):在首页增加入口,通过推送通知引导用户尝试。
团队配置与16周规划
团队角色配置(6人):
- PM(1人):负责需求、规划、协调。
- 后端(2人):负责推荐算法、用户数据、接口。
- 前端(2人):负责PC版、iOS和Android客户端开发。
- 测试与部署(1人):负责功能测试、性能测试以及部署。
16周详细规划:
| 周次 | 任务 |
|---|---|
| 第1周 | 需求调研,竞品分析,确定新功能“音乐盲盒”的具体方案 |
| 第2周 | 完成产品原型设计,撰写需求文档,技术选型 |
| 第3-4周 | 后端开发:搭建推荐算法基础架构,准备数据接口 |
| 第5-6周 | 前端开发:实现“音乐盲盒”界面和交互 |
| 第7周 | 前后端联调,完成基础功能 |
| 第8周 | 内部测试,修复Bug |
| 第9周 | 邀请部分用户体验,收集反馈 |
| 第10周 | 根据反馈优化,完善算法 |
| 第11周 | 全面测试,包括兼容性、性能 |
| 第12周 | 准备上线材料,更新App Store/应用商店描述 |
| 第13周 | 小范围发布并监控数据 |
| 第14周 | 根据数据调整,修复问题 |
| 第15周 | 全量发布,配合市场推广 |
| 第16周 | 收集用户反馈,规划下一阶段迭代 |





浙公网安备 33010602011771号