这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/2020SPRINGS/ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/2020SPRINGS/homework/10621 |
这个作业的目标 | 软件功能评测、用户调研与用户体验、对工作的估计、软件功能定位与确定优先级 |
作业正文 | https://www.cnblogs.com/gnulxj/p/12728797.html |
其他参考文献 | 即时通信 IM 文档中心、构建之法(第三版) |
一、SDK 评测
1.1 demo test
Web 端
Android 端
- 聊天会话界面
- 消息(会话)界面
- 通讯录界面
- 我的界面
小程序端
- 消息界面
- 会话界面
1.2 issues
#1 多行文本无效
应用平台 | |
---|---|
问题描述 | 无法发送多行文本信息 |
问题复现 | 在信息输入框中输入多行文本,用 换行,输入完成后按下 键 |
实际行为 | 多行文本通过空格连接成了一行,换行符 ('\n') 变成了空格(' ') |
预期行为 | 在已发送信息中呈现多行文本 |
#2 多端撤回信息不同步
Web 端和小程序端 | |
---|---|
Web 端和小程序端的信息撤回无法实现一致性 | |
用一个账号同时登陆 Web 端和小程序端,在 Web 端发送一条信息再撤回 | |
Web 端的信息确实撤回了,但小程序端依然是已发送状态,需要重新登陆才能同步 | |
Web 端的信息和小程序端的信息同时撤回了(允许有一定的时间延迟) |
#3 无法看到自定义信息的内容
无论是信息接收者还是信息发送者,都无法查看自定义信息的内容 | |
发送一条自定义信息 | |
发送后,信息窗口只显示【自定义信息】字样,点击自定义信息,无法查看其内容 | |
可以看见自定义信息的内容或者点击自定义信息查看详细内容 |
1.3 为什么没有发现 bug
我认为产品组之所以没有发现 bug 是因为:
- 缺乏专门的人员对产品进行测试
- 没有对多端的信息同步做测试
二、利用 SDK 我想要开发的产品
开发产品 | 直播聊天室 |
---|---|
主要功能 | 新建聊天室、查询聊天室信息、聊天室黑名单、聊天室禁言、聊天室全员禁言、同时进入多个聊天室、多端同时进入一个聊天室、聊天室机器人 |
面向用户 | 聊天室相当于一个广场,只要有人看到了进入广场的门,任何人随时都可以进来,也可以随时离开,因此产品面向的是广大人群,无特定面向用户。 |
三、采访
采访产品的潜在用户
-
介绍采访对象的背景和需求
受访对象是一名初中生,平时不喜欢和别人多说话,喜欢通过网络进行聊天。
- 让采访对象使用 10-30 分钟体验腾讯即时通信的 demo
-
描述用户使用这个 demo 的过程,用户的问题解决了么?软件在数据量 / 界面 / 功能 / 准确度上各有什么优缺点?用户体验方面有问题么?
用户在使用过程中,可以实现与他人的基本聊天功能,但是有一些较差的体验:
- 无法使用 @ 功能,达到提醒他人查看信息的效果
- 自定义消息发送后无法查看
- 某些页面的 UI 布局做得较差,比如【添加联系人】页面,整个页面只有上方的 20% ~30% 是有信息的,下方一片空白,用户使用的是平板电脑,此问题表现得更加突出,视觉体验较差
- 添加联系人后,弹窗的消息通知不够显眼,用户使用后在干巴巴地等着,以为操作还没有结束,实际上已经在下方有一个小消息提示,但是用户没有注意到
- 群聊的更多功能无法使用,用户点击后均无反映,表示软件很糟糕,明明有按钮摆在那里,却无法使用,是技术能力不足还是开发人员忘了做了?这不得不让用户对开发者产生了疑惑。
-
介绍你想用这个 SDK 开发怎样的产品?
鉴于这个 SDK ,我想开发一个直播聊天室,用户可以加入直播间,观看某主播的直播;可以发表评论
-
用户对腾讯即时通信的功能有什么改进意见?
用户希望:
- 能够添加 @ 他人的功能,方便提醒他人查看自己的信息
- 改进下 UI,视觉体验还是比较重要的
- 一些填表操作的操作提醒做得醒目些,提高一些反馈性
- 完善群聊的诸多功能
- 用户对你想开发的产品有哪些意见?
- 可以使用弹幕功能
- 可以进行语言聊天
-
结论:经过这么多工作,我给腾讯即时通信评价结论是:
★★★☆☆ 一般
四、SDK 分析
- 时间规划
开发周期(d) 任务 4 搭建环境 聊天:私聊、聊天室、点亮、推送、黑名单等 礼物:普通礼物、豪华礼物、红包、排行榜、第三方充值、内购、礼物动态更新、提现等 直播列表:关注、热门、最新、分类直播用户列表等 自己直播:录制、推流、解码、播放、美颜、心跳、后台切换、主播对管理员操作、管理员对用户等 房间逻辑:创建房间、进入房间、退出房间、关闭房间、切换房间、房间管理员设置、房间用户列表等 5 用户逻辑:普通登陆、第三方登陆、注册、搜索、修改个人信息、关注列表、粉丝列表、忘记密码、查看个人信息、收入榜、关注和取关、检索等 观看直播:聊天信息、滚屏弹幕、礼物显示、加载界面等 统计:APP 业务统计、第三方统计等 超级管理员:禁播、隐藏、审核等 - 同类产品对比优劣 从总体上看,腾讯云直播更偏向于娱乐性的直播,网易云信使用自己的 IM,声网更擅长多对多音视频聊天,即构科技连麦技术最强大
功能点 腾讯云 网易云信 声网 即构科技 文档更新时间 2019-05-15 2018-11-20 2019-04-01 案例 龙珠直播、now 直播、小程序,斗鱼 网易云课堂 陌陌,花椒直播,狼人杀,斗鱼直播,B 站 花椒直播,映客直播 直播推流 RTMP,录屏推流 RTMP 直播播放 RTMP、FLV 及 HLS 直播连麦 1 对 1、1 对多、多对多 支持 4 人同时语音、视频连麦互动并直播出去 业内首创 AI 美颜特效 支持 H5 页面及小程序播放 支持 android 最低版本 Android 4.1 Android 4.3 Android 4.0.3 支持 IOS 最低版本 iOS 9.0 iOS 7.0 iOS 8.0 多主播互动 10 人 4 人(需接入网易云信 IM 账号体系) 17 人 32 人 最多观众人数 100 万 - 团队软工方面提高
- 有专人对产品进行统一的测试
五、产品规划
同类产品分析
- 全平台 SDK 支持: IOS/Android/PC/Web 全平台覆盖,无缝兼容客户应用
- 超低延时:业内领先的 1-3 秒超低直播延时,支持千万级并发
- 码流自适应:网络 Qos 策略,保障复杂网络下的流畅直播体验
- 美颜混音:支持人脸美化、纯音频、伴音等丰富的直播功能,可在直播中随意切换
- 安全保障: 多重安全措施,推流、播放认证、防盗链及鉴黄等保障直播安全
- 直播回看:服务端直播录制,提供直播视频存储及回看功能使用时需开通点播服务
NABCD
需求(Need)
- 核心需求
- 互动直播,群成员人数无上限
- 支持弹幕、 送礼和点赞等多消息类型
- 支持向全体在线用户推送消息(群系统通知)
- Web 和微信小程序端支持以游客身份(即不登录)接收消息
- 申请加群后,无需管理员审批,直接加入
- 扩展需求
- 提供弹幕内容审核能力,保证直播免受不雅信息干扰
- 与商业直播相结合,通过提供点赞、询价、购物券等特定消息类型
- 支持针对涉黄、涉政以及不雅词的安全打击,满足安全监管需求
做法(Approach)
接入即时通信 IM 的音视频聊天室(AVChatRoom)
- 创建应用
- 创建 AVChatRoom
- 集成 SDK
- 创建 SDK 实例
- 加入群组
- 登录 SDK
- 创建消息实例并发送
好处(Benefit)
- Web 页面访问方便,用户不需要安装额外的软件,只需打开浏览器,就可以方便地使用
- 良好的直播聊天互动体验
竞争(Competition)
竞争的特点:
- 竞争是机遇与挑战并存的,竞争可能有着更好地创意,值得我们去学习;如果自身实力不足,无法在市场立足
我们和竞争者都实现的功能:
- 较为完整的基本功能
我们的优势:
- 前端 UI 精美
我们的劣势:
- 本应用扩展功能较少,竞争力不突出
- 市场已出现同类产品,如网易云信,由于本应用知名度不高,无法在市场分得一块大蛋糕
推广(Delivered)
考虑到我们的应用程序主要是社会大众人群,因此在宣传是应明确宣传范围,尽可能实现精确推销给目标用户群。
- 前期在班级、年段使用,根据同学们的反映逐步完善应用的不足,增加实用性功能,修复 bug
- 待应用质量稳定后,可以通过网络向全校推广,如微信公众号、福大官网等公共平台
- 根据更多老师和同学的反馈意见,继续完善应用,待应用功能足够丰富是,可以考虑校外宣传,通过网络向社会推广我们的应用。
你会如何领导团队
- 制定项目排期表(甘特图)
- 每周开周会,每个人总结本周的进度、遇到的困难、下周计划
- 编码阶段,进行每日立会,每个人说明自己昨日做了什么、遇到了什么问题、今日要做什么
你的人员安排
总共 6 名开发者,每个人再每周按照个人能力与专长认领任务,每周具体任务见下面的开发计划
注:若有任务无人认领,则直接安排至具体人员
16 周开发计划
week | task |
---|---|
1 | 需求分析 |
2 | 系统设计与数据库设计 |
3 | 环境搭建 |
礼物:普通礼物、豪华礼物、红包、排行榜、第三方充值、内购、礼物动态更新、提现等6 | |
6 | |
7 | 自己直播:录制、推流、解码、播放、美颜、心跳、后台切换等 |
8 | 房间逻辑:创建房间、进入房间、退出房间、关闭房间、切换房间、房间用户列表等 |
9 | |
10 | |
11 | |
12 | 管理员:禁播、隐藏、审核等;主播对管理员操作、管理员对用户;房间管理员设置 |
13 | 测试 |
14 | 修复 bug |
15 | 部署 |
16 | 交付 |
阿里云服务器配置信息:
CPU | 1 核 |
---|---|
内存 | 2 GiB |
操作系统 | CentOS 7.3 64 位 |
当前使用带宽 | 1Mbps |
数据库配置:MySQL x3(读写分离 x2,备份 x1)
分布式缓存:Redis x2(主备)