这个作业属于哪个课程 | 2020春-s班 |
---|---|
这个作业要求在哪里 | 作业要求链接 |
这个作业的目标 | 评测腾讯即时通信SDK |
作业正文 | 作业正文 |
其他参考文献 | 《构建之法》、百度、**** |
一、调研&测评
本次作业我选用的三种Demo分别是:web、微信小程序、Android。
1.使用过程截图
web端-图1-主界面&聊天测试
web端-图2-编辑个人资料
Android端-图1-增删好友测试
Android端-图2-聊天测试
Android端-图3-群功能测试
微信小程序-图1-增删好友测试
微信小程序-图2-群功能测试
2.软件Bug
2.1 功能性严重bug
bug 01:在web端和小程序端测评时发送的小调查,在Android端显示成“不支持自定义消息”,具体情况如图:
下图为web端,发送的最后一条消息为小调查
下图为Android端,显示“不支持自定义消息”
没发现的原因:
可能一开始设计功能的时候设计了小调查功能,但是还未确定以哪种方式呈现,于是就先实现成可以发送这条消息,但是提示“不支持自定义消息”;之后确定呈现方式后web端、小程序端技术人员没有和Android端技术人员及时沟通,导致Android端没有呈现。
bug 02:在设置加群方式时,默认为禁止加群,除此之外还有管理员审批和自动审批两种模式,但是无法修改,会报错。例如:我现在默认方式为禁止加群,我想将加群方式设置为管理员审批,这时候就会在页面下方报错,报错后仍将方式改为管理员审批,但是过一会又变成了禁止加群。具体情况如图:
下图为还没设置的时候,可以看到默认加群方式为“禁止加群”
下图为设置加群方式之后,可以看到在页面下方有报错信息,但加群方式仍变为“管理员审核”,但刷新之后又会变成“禁止加群”。
没发现的原因:可以看到报错信息大致意思为“这种群类型不允许申请加群”,可能开发人员原本设计的就是不允许申请加群,但是忘记设置不改变加群方式了,并且提示信息的方式没有进行美化,看上去像是报错。
2.2 其他小bug
bug 03:不小心删除系统通知后,自己找不到,需要等待下一次系统发送通知才能找到系统通知。
没发现bug的原因:可能测试人员没有考虑到一些用户(比如我)有强迫症,平时会固定清理聊天框,之后如果需要回看之前收到的系统通知的时候,就找不到了。
3.采访
3.1 构思你根据该SDK想要开发的产品,包括产品主要功能、产品面向的用户
根据对身边人的调研,我发现大家经常有拼车、看演唱会、看电影、桌游等需求。但是身边认识的朋友可能有事,或者不喜欢这项活动时,就只能自己一个人去或者干脆取消这个活动。我询问了原因发现有以下几种情况:
1.不喜欢自己一个人去,喜欢很多人一起玩比较热闹
2.一个人不能做这件事,比如多人的桌游(狼人杀)
3.和网上认识的志同道合的网友一起去担心安全问题,或者网友不在本地,无法线下见面
于是我有了一个想法,开发一个面向福大全体学生(可拓展至大学城)的软件,让我们能够在更安全的前提下找到志同道合的好友,让生活更加精彩。
产品主要功能如下:
1.实名认证,学生身份认证,保障安全
2.发布帖子,内容包括主题、时间、地点、人数以及其他要求(比如性别)
3.创建临时聊天,提供屏蔽功能,避免被恶性骚扰
4.确认信息,报名
5.互相评价,只有互相都对对方评价好的才能添加好友
6.为每个好友提供标签和自定义分组,方便下次再约
3.2 采访
背景和需求
福大大三学生,想去看演唱会,有拼房、拼车的需求,身边的人不熟悉,自己一个人无法负担演唱会门票、来回车票、食宿的费用,网上认识的一起看演唱会的网友无法确保安全。
体验Demo的照片——聊天功能
Q:用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?
问题未解决,但是这个Demo可以满足基本的聊天需求。软件的优点是软件界面简洁美观,功能基本实现;缺点是响应速度不够快。
Q:用户体验方面有问题么?
1.响应速度比起微信、QQ不够快;
2.发送视频消息大小有限制;
3.无法自定义头像;
Q:对腾讯即时通信的功能有什么改进意见?
1.添加自定义头像等功能,实现个性化
2.群聊里添加显示群昵称功能
Q:用户对你想开发的产品有哪些意见?
1.惩罚爽约的用户,比如扣除信用分
2.增加游戏、经验分享贴的功能
3.3 结论
腾讯IM的Demo实现了基本的聊友、聊天功能,虽然在文件传输方面有大小限制这一点有些不足,但是腾讯IM可以免费使用,所以综合各方面,我给它的评价是推荐。
二、分析
1.估计这个SDK做到这个程度大约需要多少时间?(团队人数大约6人左右,计算机大学毕业生)。
通过测试三种不同的Demo,我认为这个SDK虽然看上去简单,但是通信最基本的功能都已经实现了,并且能够适应多种平台。考虑到我们的团队成员均为计算机大学毕业生,对于实际开发仍然经验不足,我估计可能需要六到八个月的时间。
2.分析这个软件目前的优劣(和类似软件相比,如网易云信),并推理出团队在软件工程方面可以提高的一个重要部分(具体建议)。
与腾讯IM功能相似的有:网易云信、环信、融云,leancloud等等,参考《常见即时通讯:网易IM 、腾讯IM、环信IM、融云IM、leancloud IM介绍》这篇博客以及 腾讯IM功能介绍文档 ,给出功能、价格和维护几方面的对比。
2.1 基础功能对比
功能 | 网易云信 | 环信 | 融云 | leancloud | 腾讯IM |
---|---|---|---|---|---|
基础聊天 | 支持 | 支持 | 支持 | 支持 | 支持 |
群组聊天 | 最多2000人 | 最多2000人 | 最多3000人 | 最多50人 | 最多10000人 |
聊天室 | 支持 | 最多5000人 | 支持 | 最多5000人 | 支持 |
图片消息 | 支持 | 支持 | 支持 | 支持 | 支持 |
视频消息 | 支持 | 支持 | 不支持 | 支持 | 支持短视频(28M以下) |
音频信息 | 支持 | 支持 | 支持 | 支持 | 支持 |
位置消息 | 经纬度和描述 | 经纬度和描述 | 经纬度和描述 | 经纬度和描述 | 经纬度和描述 |
实时音频 | 可多人 | 一对一 | 可多人 | 不支持 | 不支持 |
实时视频 | 可多人 | 一对一 | 可多人 | 不支持 | 不支持 |
离线消息 | 支持 | 支持 | 支持 | 需手动启动 | 支持 |
文件传输 | 支持 | 支持 | 支持 | 支持 | 支持28M以下 |
自定义消息 | 支持 | 支持 | 支持 | 支持 | 支持 |
2.2 价格&维护对比
名称 | 价格 | 维护&论坛 |
---|---|---|
网易云信 | 3800/月,其中聊天室2000/月,实时音视频另外付费 | 有专业运维团队24小时技术服务,有论坛 |
环信 | 100以内的注册用户免费使用 | 有社区论坛,无在线技术客服 |
融云 | 2000/月,实时音频需另外付费 | 有工单服务支持,无技术论坛社区 |
leancloud | 447.24/月,无实时音视频服务 | 有技术社区,工单服务需付费开通 |
腾讯IM | 免费 | 有工单服务支持,但没有论坛 |
总结:在基础功能方面,五种IM功能都比较完整。相对来说,网易云信和环信的功能会更多一些。融云不支持视频消息;leancloud群组聊天最多只支持50人,我认为这些不能满足需求。腾讯IM在群组可容纳人数方面做的最好,可以支持10000人,远远多于其他几种IM。但他文件传输以及视频消息的大小只能在28M以下,不支持实时音视频,但是提供实时音视频的SDK——实时音视频 TRTC。在价格方面网易云信是最贵的,实时音视频也要另外收费,但环信和腾讯IM都提供了免费的服务。
2.3 优势&劣势
主要与知名度较广的网易云信进行比较
优势:
1.基础功能较为完善
2.腾讯IM在群组可容纳人数方面做的很好,可以支持10000人,远远多于其他几种IM;
3.在价格方面,同样较为出名的网易云信每月3800,而腾讯IM可以免费使用
劣势:
1.网易SDK的更新迭代基本维持在一个月左右,腾讯sdk更新较慢
2.网易的Demo实用度很高,可以进行自定义的修改,UI和网络还有消息监听等封装的比较好。腾讯IM的Demo不支持自定义。
3.网易提供一对一7*24小时技术支持的运维,对比腾讯IM以工单形式,响应速度会快一些
4.网易的计费比较透明,且可选多种计费模式,腾讯存在很多隐形计费,前期无法估计用户量的时候很难预估成本。
2.4 团队在软件工程方面可以提高的一个重要部分(具体建议)
1.在基础功能完善的前提下,想要在其他同类产品中脱颖而出,可以尝试在某个功能上比其他同类产品优秀很多(也就是《构建之法》中的杀手功能),如腾讯IM的群组人数方面做的比其他软件要好很多。
2.一个产品想要发展的好,后期维护也很重要,网易云在后期维护方面做的很好,可以多加学习。
3.产品的更新迭代要在保质保量的前提下尽量快才能满足用户日益增长的需求。
三、建议和规划
1.目前市场上有什么样的类似的产品?
目前市面上的交友软件主要有:QQ、微信、探探、陌陌等。
2.NABCD分析
N-Need
对于交友圈较小的用户,如果身边的好友没有和自己一样的兴趣爱好,在进行某一项活动时,很难找到和自已一起的人,如果这时候用户想找个人和自己一起玩,就可以通过使用这个软件快速找到志同道合的朋友,并且两个人都在福大,在更方便的同时也更加安全。
A-Approach
基础的聊天功能的实现可以直接使用腾讯IM的SDK
B-Benefit
1.目前主要面向福大学生,在安全方面更有保障
2.帮助用户快速找到有相同兴趣爱好的好友
3.没有乱七八糟的推广,更加简单便捷
C-Competitors
目前市面上的交友软件主要有:QQ、微信、探探、陌陌等。QQ、微信在同个圈子的人之间交友聊天这一块几乎是垄断式的,探探、陌陌主打的是陌生人的交友,而我想开发的这个软件更加侧重于与志同道合的人之间的交友,如果找到好友可以直接线下见面,由于面向的对象是福大学生,见面更加容易,更加安全。
D-Delivery
1.利用福大学生的身份进行推广,先从同班、同专业同学开始推广
2.利用QQ群、QQ空间等进行推广
3.等大家使用过软件觉得好用之后,自发推广
3.如果你来领导这个团队,会有什么不一样?
1.*发言:因为我对于软件设计这一方面能力并没有很强,所以团队成员的意见我都会认真考虑,大家可以*发言,说出自己的想法,一起讨论可行性。
2.分工合理:大家可以先*选择想做的部分,我在尽量满足大家的需求的情况下进行合理分配
4.分配任务
角色 | 人数 |
---|---|
前端编码 | 1人 |
后端编码 | 2人 |
测试 | 1人 |
美工+文档编写 | 1人 |
5.16周开发计划表
时间 | 计划 |
---|---|
第一周 | 市场调研 |
第二周 | 需求分析 |
第三周 | 概要设计,确定主要功能 |
第四周 | 数据库设计、编写接口文档,搭建基本框架 |
第五周-第八周 | 前后端分离,编写代码 |
第九周 | 前后端对接,反馈问题 |
第十周-第十一周 | 解决上周反馈的问题 |
第十二周 | 界面美化、功能优化 |
第十三周-第十四周 | 测试、修改bug |
第十五周 | 进行项目部署,撰写用户手册 |
第十六周 | 正式发布产品、进行推广 |
6.项目部署
-
应用服务器配置:4核8G x 2
-
后端服务器配置:8核16G x 3
-
关系型数据库:MySql数量:3(读写分离、备份 x 1)
-
缓存数据库:Redis数量 :2(主备)
-
网站安全性:WAF,DDOS