这个作业属于哪个课程 | 班级链接 |
---|---|
这个作业要求在哪里 | 作业要求的链接 |
这个作业的目标 | 对腾讯即时通信IMdemo进行调研,评测,分析,建议和规划 |
作业正文 | 作业正文 |
其他参考文献 | 《构建之法》、腾讯即时通信IM |
1、调研,评测
对腾讯即时通信的demo(web、Android、iOS、微信小程序)进行测评
(1)web:
(2)Android:
(3)iOS:
(4)微信小程序:
比较严重的功能性bug:
(1)在Android端添加了一个好友(ejianzhongqing),并且可以给好友发送消息,但是到web端的好友列表查看却显示暂无好友,按理说能够发送消息应该是添加成功,此处应该是web端的bug,Android端和web端的好友显示不同步。
你觉得为什么这个产品组的人没有发现这些bug?
在制作web端的时候,web端获取服务器上的好友数据出现错误,或者web端的好友界面显示错误,没有加载出好友信息。
(2)微信小程序没有删除好友的选项,只有把好友加入黑名单的选项,并且将好友加入黑名单后,通讯录(好友列表)依旧会出现已加入黑名单的好友,然而在安卓端的通讯录中不会出现加入黑名单的好友,显然微信小程序出现bug,不管一个好友是否加入黑名单,都会显示在通讯录中。
你觉得为什么这个产品组的人没有发现这些bug?
在制作微信小程序的时候,在通讯录中,没有设置加入黑名单的用户不显示。
(3)在web端填写正确的url更换头像,在web端可以看到头像显示正常,在Android端头像也显示正常,但是在微信小程序无法显示头像。在微信小程序中,不仅无法显示自己的头像,其他的好友头像、通讯录中的头像、群聊头像都无法显示。
你觉得为什么这个产品组的人没有发现这些bug?
在制作微信小程序的时候,头像的UI组件没有设置好一些参数,或者显示头像组件获取网络资源的时候出现错误。
(4)在web端和微信小程序没有添加好友的功能,但是在Android端和iOS端有添加好友的功能,这是一个非常严重的bug,试想用户在无法操作Android端和iOS端的前提下,只能操作web端,需要发送消息,但是却因为无法添加好友而无法将消息发送出去。
你觉得为什么这个产品组的人没有发现这些bug?
在设计web端的时候,没有在好友界面添加搜索框以及添加好友的按钮,而在微信小程序中,因为微信小程序的固定板式,右上角固定是分享按钮和退出按钮,没办法更换成添加好友按钮。
根据该SDK想要开发的产品
-
主要功能
把产品打造成一个同城平台,可以在同城平台上发布信息,比如求职、出售二手物品、收购货物、企业招聘、出租公寓、家教等。将这些信息分类,例如买卖二手物品、货物市场、招聘信息、家教等。让用户可以在平台上即时发布自己的需求,让其他人即时看到自己的需求,即时与相关人员联系。
-
面向用户
所有用户均可使用,产品更加倾向于生产加工厂老板、求职者、学生。
采访:
-
介绍采访对象的背景和需求
某中学高一学生,在学习上有困难,老师上课不是听得很懂,希望能即时找到一位家教能够一对一辅导(线上线下都可以)。
-
让采访对象使用10-30分钟体验腾讯即时通信的demo
-
描述用户使用这个demo的过程, 用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
用户在使用这个demo的过程中,问题并未解决,在即时通讯方面还能满足需求,但是产品还需要增加信息搜索与分类功能,否则用户无法与相关人员即时联系。软件在功能上比较快捷方便,界面比较简单,但是还需要修一些bug,还不能满足用户的全部需求。用户体验良好。
-
介绍你想用这个SDK开发怎样的产品?
除了正常的聊天功能以外,还要加上信息浏览、信息搜索、信息分类等基本功能,让用户能够即时发布自己的需求,也能让用户即时看到别人的需求,成为一个同城的需求互助平台。
-
用户对腾讯即时通信的功能有什么改进意见?
优化一下界面设计,提高视频连接时的流畅度,修复各种不同步的bug。
-
用户对你想开发的产品有哪些意见?
要做好市场调查,将用户需求进行分类,需要管理员对发布的需求进行管理。
-
经过这么多工作,你一定有充分的理由给腾讯即时通信下一个评价,请选择一个结论
推荐
2、分析
-
估计这个SDK做到这个程度大约需要多少时间?(团队人数大约6人左右,计算机大学毕业生)
根据实际情况,需要掌握web端、Android、iOS、微信小程序开发,这个SDK做到这个程度大约需要三个月的时间。
-
分析这个软件目前的优劣(和网易云信相比)
优:操作简单快捷,界面简洁,可以发送自定义消息
劣:存在一些bug,视频连接不够流畅,还不能支持Windows PC、unity、linux等平台
-
推理出团队在软件工程方面可以提高的一个重要部分
提高程序的质量,提高搜索功能的准确度和覆盖率,提升个用户端的数据同步的准确性。提高视频连接的流畅性。界面设计的简洁、美观。用户更换头像可以上传图片,而不是靠url来更换头像。同一个模块要所有端口同时测试,加强团队之间的沟通交流,避免所有端口出现模块功能使用不一致的情况。提高软件的安全性,防止用户的信息泄露。
3、建议和规划
-
目前市场上有什么样的类似的产品?
同城劳务、阅同城等
-
对你的产品进行NABCD分析。考虑为何要做这个功能,而不是其他功能?你的创新在哪里?为什么用户会用你的产品/功能?对于C:Competitors,结合同类产品分析,描述如何从竞争中获胜
N(Need,需求)
一些用户需要一些资源可以在平台上发布需求,等待其他用户提供资源。大部分人都会有需求的时候,如寻找出租房、寻求货物、出售二手物品等。提供这样一个平台将会大大方便人们的生活。
A(Approach,做法)
在腾讯即时通讯SDK的基础上进行开发,主要是添加发布需求的功能。
B(Benefit,好处)
支持多个端口使用,方便快捷,操作简单,老少皆宜,方便人们的生活。
C(Competitors,竞争)
用户可以在平台上发布任何合法需求,可以跨城市查看需求,但最主要是在同城进行需求交易。目前这一块市场还能进一步开发,如果能开发出一个功能齐全,用户体验良好的产品,将有机会在这块市场的竞争中胜出。
Delivery(推广)
先从一个城市进行推广,观察使用情况,看是否能达到预期效果,方便人们的生活,再以此推广到全国各地。
-
如果你来领导这个团队,会有什么不一样?
我注重团队之间的沟通,尽量在线下进行开会与交流,合理安排人员开发,规划好时间安排,定期开展会议,注重对产品的需求分析与设计。让团队能在一个良好的环境中进行项目开发。
-
如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
全体成员共同参与项目的需求分析与设计,在开发阶段,1人负责美工,1人负责前端,2人负责后端,1人负责测试。
-
描述你的团队在周期为16周,每周都要做什么,才能保证在第16周如期发布软件。
时间 安排 第1-2周 需求分析,需求说明书 第3周 原型设计 第4-6周 系统设计和数据库设计 第7-10周 编程开发 第11周 项目alpha冲刺 第12-14周 项目测试及优化 第15周 项目Beta冲刺,修改最终版本 第16周 撰写文档,产品发布 -
关系型数据库:SQL Server/Oracle/MySql数量: 6 台(4台读写分离、2台数据备份)
缓存数据库:3台
后端服务器:8核16GB 3台
应用服务器:8核8GB 2台