个人作业——软件评测

这个作业属于哪个课程 班级链接
这个作业要求在哪里 作业要求
这个作业的目标 分析 腾讯即时通信IM
作业正文 正文在这里
其他参考文献 百度, 博客园, csdn, 《构建之法》

软件测评——腾讯即时通讯sdk官方demo

调研、评测

应用截图

  • web端页面截图
    web端截图1
    web端截图2
  • 安卓端截图
    Android端截图1
    Android端截图2
  • 小程序端截图
    小程序端截图1
    小程序端截图2

bug反馈

  • 网页端在输入框输入时,未发送就跳转到其它联系人,输入框的内容不会清空。
    操作流程如下:

    • 点开任意联系人,在输入框输入任意字符。
    • 不发送,直接点开另一位联系人。
    • 发现输入框的内容没有清空。

    bug1.1
    bug1.2

  • 网页端输入框提示ctrl+enter换行,但是发送后换行符变成了空格。
    操作流程如下:

    • 在输入框中输入任意字符
    • 按照提示,使用ctrl+enter换行,可以看到在输入框中实现了换行

    bug2.1
    bug2.2
    bug2.3

我认为这个bug可能是网页端的开发人员在切换时忘记清空输入框。可能故意留下来给人反馈用的

采访

首先说明一点,市面上的社交软件,应该不会有什么活路了。熟人社交这一块被腾讯锁死了,而陌生人社交这一方面有陌陌等一众软件瓜分蛋糕。现在入场应该是不会有什么搞头。那么这一个SDK的受众应该是其他应用内嵌的即时通讯系统。比如购物软件的客服沟通平台,网站的在线客服(这样可以不依赖QQ,就能做到客户和客服的及时联系)。

在我短暂的浏览IM的开发文档的过程中,发现这个sdk上手及其容易,而且价格比较公道。那么SDK的使用就必然是内嵌聊天工具而不是独立开发一个聊天软件。

但如果铁了心要下场,那我会选择腾讯做的不是很好的陌生人社交这一方面。于是被我整出这么一个想法:

anonymous

Anoymous 是一款主打陌生人社交的软件,通过为自己贴上标签,来在众人之中找到那个和你意气相投的人。同时支持同城交友等功能

带着这个demo的零碎想法,我咨询了与我同龄的几位伙伴。不出意外,他们认为这个应用于陌陌非常的相似。

他们对我的建议分两个方面:

  • 其一是建议不做这个应用。因为确实市面上社交这一块腾讯占据了大半江山,推广难度异常的大。再有,陌生人社交这一方面,用他们的话来说就是:"我连班上的同学都说不利索,还会找陌生人交心?"。
  • 其二是建议我找陌陌,探探这类app没有触及的地方。但我们几个苦思冥想了10分钟也想不通,还有哪些方面没有被挖掘。

不出意外,这个app被他们打上了死路一条这种标记。

IM 官方demo

在近10分钟的使用过程中,小伙伴认为,这个demo的完成度是非常高的。在轻度使用上,方便程度不亚于QQ、微信一流(毕竟是腾讯自己开发的官方demo)。但在一些细节方面还不够完善。比如个人资料不够详尽,自定义方面不够优秀等。
靓仔使用图

虽然他们都不是计算机专业的学生,但从他们的评价可以看出,这个SDK还是非常值得推荐的,功能齐全。结合我自己的观察,我给这个SDK一个非常推荐的评价。

分析

观察不能得出此SDK的具体实现方法,但我们可以使用套接字来模拟
假设我的团队又6人,两人负责服务器套接字实现,一人负责需求分析,三人负责具体的各种功能的实现。我认为此sdk能在一年内完成初版(此一年中,仅有法定工作日时工作,没有加班)。具体时间如下:

  • 需求提取分析:15个工作日左右
  • 系统设计:15个工作日左右
  • 分布式服务设计:20个工作日左右
  • SDK接口开发实现:60个工作日左右
  • 服务器代理配置及负载测试:10个工作日左右
  • 测试修改bug及攥写使用文档:60个工作日左右
  • demo编写及测试:40个工作日左右

共计220天

建议和规划

对比分析

查阅搜索引擎,可以得到这么一篇博客:第三方即时通信IM服务对比分析
图1
图2
图3

畅想未来

1.时间规划

假如我是团队的领导,这个项目要在16周内发布。那么合理安排工作进程就是计划的重中之重。按照上述分析的过程,将其等比压缩至16周中。可以得到这么一个时间表:

  • 需求提取分析:10个工作日左右
  • 系统设计:5个工作日左右
  • 分布式服务设计:5个工作日左右
  • SDK接口开发实现:20个工作日左右
  • 服务器代理配置及负载测试:5个工作日左右
  • 测试修改bug及攥写使用文档:30个工作日左右
  • demo编写及测试:5个工作日左右

将时间尽量分配给测试环节,保证项目基本运行的情况下,在需求分析上多花时间,找出同类产品没有触及到的地方。

2.项目部署

考虑用户的体量及公司的能力和规模,使用阿里云服务器作为公司的运行环境。具体配置升降需要更详细的市场调研。具体服务器分类如下:

  • 负载均衡服务器转发
  • 后端服务器集群
  • 关系型数据库(读写分理、及时备份)
  • 缓存:redis
  • 安全性:DDoS、ARP等
posted @ 2020-04-18 19:50  lunacia  阅读(237)  评论(0编辑  收藏  举报