这个作业属于哪个课程 | 2019秋福大软件工程实践Z班 (福州大学) |
---|---|
这个作业要求在哪里 | 个人作业——软件评测 |
这个作业的目标 | 分析腾讯音视频 |
作业正文 | 软件评测——腾讯音视频 |
其他参考文献 | 《构建之法》(邹欣) |
第一部分 调研,评测
评测:
软件的bug,功能评测,黑箱测试
- 下载并使用demo,对使用的不同demo,每种demo至少提供两张使用过程中的截图。
web端
Android端
Windows端
- 按照找出几个功能性的比较严重的bug。至少两个。
- 用专业的语言描述(每个bug 不少于 40字),并配图。
- 你觉得为什么这个产品组的人没有发现这些bug??
BUG1:
-
当两个用户创建时设置房间号相同且用户名相同,会进入同一个房间,但无法看到对方。
-
多个用户进入时若设置一样的用户名,会进入房间,但无法看到房间内与自己用户名相同的人。
-
使用不同用户名的用户进入该房间时,会见到首先创建房间的人,看不到其余的人;
-
同时,其余的人看得到该用户,但无法进行聊天。
你觉得为什么这个产品组的人没有发现这些bug??
-
这款软件目前并没有设置注册登录,因此只是靠设备来区分,后续如果有设置用户注册登录的话,可能会解决这个问题
-
测试时没考虑到这种情况(?)
BUG2:
-
(该点不算BUG,只是用户体验极差)
-
直播拉流,全屏必须横屏才能正常体验且两种模式(充满、适应)都会截掉一部分画面
-
对于全面屏,全屏下无法隐藏顶部和底部栏
-
解决办法:只有切换到全面屏手势才能解决;但这不是用户要解决的问题,而是全屏应该做到的。
采访
假如你需要用这个腾讯实时音视频SDK开发属于你的自己产品,那么开发之前你除了需要了解该SDK的基本使用之外,更重要的就是为你将开发的产品进行市场调研。
- 构思你根据该SDK想要开发的产品,包括产品主要功能、产品面向的用户、NABCD分析等
-
产品:在线抓娃娃机
-
主要功能:玩家拿起手机,远程操控按钮就能直接在线上抓娃娃,抓到后公司将娃娃快递过来。
-
产品面向的用户:不愿意出门的宅男宅女们
-
NABCD分析:
N(Need,需求): 人人都喜欢玩抓娃娃机,而现在这一个掌上互联的时代,我们需要一款软件,它可以让人们随时随地享受到抓娃娃的乐趣。 A(Appproach,做法): 线上抓娃娃机涉及到APP/H5,以及一系列的娃娃机硬件,即构将技术、软件、硬件全链条串起来,形成了一站式抓娃娃软硬件解决方案。 B(Benefit,好处): 在线功能可以让玩家足不出户进行游玩。 C(Competitors,竞争): 与传统抓娃娃机相比,可以在线游玩,更加快速; 除了设置毛绒娃娃以外,可以选择别的用品放在其中,比如各种生活用品,满足各种需求; D(Delivery,推广;Data,数据): 与现实商场进行合作,开展线上通道; 在贴吧、视频网站等进行推广;
- 从你的身边寻找你要开发的产品的潜在用户,记载你对这位用户的采访。使用下面的采访提要:
-
介绍采访对象的背景和需求
我的舍友朱姓男子;平时经常与女朋友视频聊天,要求延迟低、高分辨度清晰度的视频通话体验。
-
让采访对象使用10-30分钟的腾讯实时音视频的功能(请上传照片证明用户的确正在使用,远程采访的同学请让别人帮忙照相)
-
描述用户使用这个DEMO的过程, 用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
问题解决了,可以与别人进行视频通话;延迟太高;功能不全,用户体验一般。
-
介绍说你想用这个SDK开发怎样的产品
-
用户对腾讯实时音视频的功能有什么改进意见?
降低延迟
-
用户对你想开发的产品有哪些意见?
不太现实,按照这个软件的延迟,用户抓娃娃的体验会很差; 还有如何保证抓娃娃的概率问题,现在已经爆出有暗调概率的软件。
-
结论:经过这么多工作,你一定有充分的理由给腾讯实时音视频下一个评价,请选择一个结论:
非常不推荐
第二部分 分析
-
使用腾讯实时音视频的所有功能(包括视频通话、在线直播等),联系第二部分的分析,估计这个SDK做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI 支持)。
这个线上抓娃娃,应该不仅仅是一个APP能搞定的,以我的了解至少应该包含三个部: 硬件(娃娃机、摄像头等)、后台程序、app及硬件控制程序。 如果是想长期的投入这个项目,预算比较充裕,考虑开发一整套的系统,包含硬件的集成和开发、后台及app程序的开发,开发耗时会比较长,投入也会比较大。 估计需要半年的时间,而且需要有一定的硬件等支持。
-
分析这个软件目前的优劣(和类似软件相比,如声网,即构)
优势:现在掌上互联时代,人们越来越少实地抓娃娃,结合互联网的在线抓娃娃机有一定的市场。 劣势:开发成本以及维护成本有点大。
-
并推理出团队在软件工程方面可以提高的一个重要部分(具体建议)。
提高与厂家的沟通合作能力,不只是娃娃厂商,还可以投入生活用品等部件。
第三部分 建议和规划
假如你需要用这个腾讯实时音视频SDK开发属于你的自己产品:
-
如果你是项目经理,如何提高从而在竞争中胜出?
减少延迟,提高用户的体验; 加强产品质检,提高与厂商的沟通,保证产品的安全快捷;
-
目前市场上有什么样的产品了?
天天抓娃娃、YY等在线APP。
-
你要设计什么样的功能?
实时音视频抓娃娃,直播观看以及排队系统,房间内互动以及礼物系统。
-
为何要做这个功能,而不是其他功能?
实时抓娃娃是核心功能; 排队系统可以防止一个人不断占用娃娃机,使其他人无法游玩; 上述功能都是必要的功能。 直播观看可以以及增加互动礼物系统,可以提高娱乐性,互动性,而不是一个个默默地抓;
-
为什么用户会用你的产品/功能?
现在这个直播兴盛的时代,有着各种直播形式,抓娃娃具有一定的趣味性,且能确实得到点东西,可以作为一种直播的形式; 有的人想要抓娃娃,但是不想特意出门找娃娃机,就会使用这个产品;
-
你的创新在哪里?可以用 NABCD 分析。
抓娃娃机+互联网+直播的结合;
-
如果你来领导这个团队,会有什么不一样?
更加明确地分工以及开发周期的分配; 提高与合作厂商的沟通交流;
-
如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
UI/美工:一人 安卓:一人 后端:一人 测试:一人 公关:一人
-
描述你的团队在16 周期间每周都要做什么,才能在第16周如期发布软件。
1~2周 完成市场调研分析和需要分析,确定所要开发的产品具体内容,并完成原型设计 3~6周 与厂家沟通,获得娃娃机的使用权来进行开发研究; 完成产品的基础版本,安排人员进行测试计划,并进行再次的调研,准备进行产品的测试修改。 7~9周 交付给内测用户进行测试使用,根据反馈结构进行讨论分析,确定下一步的修改计划。 10-14周 根据初始版本的反馈进行产品的优化。 15~16周 进行二次测试,进行宣传准备,准备最后的发布环节。
-
项目发布后,有没有考虑过项目该怎么部署才能满足需求。依据下图(某校教务处系统的部署)作为参考,分析16周后你所完成的项目上线需要哪些配套设备(服务器、带宽、数据库需求数量与配置) 。
综合了一下,目前线上抓娃娃机的视频需求无非就是稳定的低延时,而这个低延时需要在:推流端、服务器端、客户端 3端都保持很好的控制; 建立一套线上抓娃娃机的网络,拉专线,视频源采用的是传统的IPC作为输出源,然后再经过流媒体服务器进行多路分发,再通过端口映射的方式对外进行直播; 使用EasyDarwin拉模式分发+EasyPlayer低延时播放;