个人作业——软件评测
这个作业属于哪个课程 | 班级链接 |
---|---|
这个作业要求在哪里 | 作业要求 |
这个作业的目标 | 发表一篇随笔,通过分析 腾讯即时通信IM ,结合阅读《构建之法》,写一篇随笔。 |
作业正文 | 作业正文 |
其他参考文献 | ... |
第一部分 调研,评测
评测:
方式一:
我测试了windows、web、android三个版本的demo。
windows端:
我先登录了用户1,然后创建了只有用户1的群,在群里发了一些信息,之后登出,之后再登入用户2时,发现刚才用户1的聊天记录竟然还在。
所有用户在群里发表情,只有发送信息的时间记录,没有任何内容,而且这时群的信息列表会自动移动到顶部。
用户1创建了群聊3,然后删除群聊3中的用户2后,左侧3群中还有用户2,
用户2明明不在3群中,却还可以在所有群组里看到3群,在3群里发信息,虽然用户1看不到。
web端:
登录user1,然后用其他用户在群里发送信息,user1一直提示有信息11条,就算点击查看后清零了一旦切换到别的页面或者别的软件又显示有信息11条,但是其实根本没有新信息。
用户user0创建了public的群,是群主,却没有邀请权限。
android端:
登录之后在底下“我”那一栏点击修改头像就会失去头像,变成全白。
一登录就加了一个群,而且这个群里有别人撤回的提示,但是这个群里从一开始就没有显示那个人发的信息。
在刚才那个群里的详情里,发现最下方退出群聊的按钮消失了,点击后也没有任何的反应,如果是我自己创建一个群则是有正常的按钮。
你觉得为什么这个产品组的人没有发现这些bug??
我觉得windows端的demobug实在是太多了,感觉像是一个半成品,无法使用。web端就比较完整,可以实际使用了,但是可能产品组没有进行大量的测试所以没有发现bug。
android端前端看起来是比较完整的,但是实际上有很多bug,还有很多功能做了前端后端没有做完,比如修改头像只是切换一些内定的图片不能自己上传等,感觉也是和windows端一样是一个没有开发完的项目所以才有那么多bug。
采访:
1.构思你根据该SDK想要开发的产品,包括产品主要功能、产品面向的用户、NABCD分析等
我想要开发一个供DOTA2游戏爱好者寻找一起游玩的伙伴的产品。
主要功能:
通过web端寻找群聊找到等待队友的玩家组成的群,然后可以设置自己的要求以筛选大家在群里发的信息。
自己发的信息是web里面的自定义信息,其中包含自己的主要信息如想玩的模式,想玩的位置,自己的段位等,以便需要你的人找到你。
面向的用户:
找不到朋友一起开黑的想一起开黑的DOTA2玩家、想结识新的伙伴的DOTA2玩家。
2.从你的身边寻找你要开发的产品的潜在用户,记载你对这位用户的采访。使用下面的采访提要:
介绍采访对象的背景和需求:
喜欢DOTA2的普通游戏玩家,但是因为朋友们都因各种原因逐渐弃坑而只能寂寞单排但渴求有人一起玩的人。
让采访对象使用10-30分钟体验腾讯即时通信的demo(请上传照片证明用户的确正在使用,远程采访的同学请让别人帮忙照相)
描述用户使用这个demo的过程, 用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
采访对象使用了web的demo,在他的轻度使用中没有发现bug,软件界面深受他的喜爱,非常简洁没有任何多余的内容,让他非常满意。
优点 | 缺点 | |
---|---|---|
数据量 | 稳定,没有出现问题 | |
界面 | 简洁,字大,没有一堆乱七八糟的东西看起来很舒服 | |
功能 | 基本功能完备 | 没有自定义信息的处理 |
准确度 | 准确 | 个人信息刷新不及时,如头像等 |
介绍你想用这个SDK开发怎样的产品?
一个寻找可以一起玩的DOTA2玩家的小聊天室。
用户对腾讯即时通信的功能有什么改进意见?
希望增加web端添加好友的功能。
用户对你想开发的产品有哪些意见?
希望能有有效的推广手段,如果没有大量dota2玩家使用的话也没法找到队友了。
结论
推荐。
第二部分 分析
Y = X ± X ÷ N //注:Y是实际时间花费。中间的±表明
如果这六人每个人分别都有不同平台的开发经验,如A有安卓开发经验,B有WEB开发经验,那么就会比较快。
6个人同时开始不同平台的开发,大概需要2-3个月。
如果六人都没有使用过相关技术,那可能Y = X ± X ÷ 0导致需要无穷大的时间,以至于在项目时间内压根就做不了。无法估计。
分析这个软件目前的优劣
类似产品,网易云信即时通讯IM
优点
支持消息撤回
付费版本比较便宜。
web端群组功能强大,类别多,人数上限也高于网易云信免费版
缺点
web端不能注册,只有29个user
不支持消息白板(网易云信支持)
不支持群组实时音频
团队软工方面提高
可以提高软件公尺质量中的软件开发过程的可见性。
在开发过程中可以看到已完成的功能的演示,不需要到项目的最后一天才能看。
因为开发过程中每个功能比较独立,比如完成了1对1的聊天后就可以演示这部分功能。
第三部分 建议和规划
假如你需要用这个腾讯即时通信SDK开发属于你的自己产品:
如果你是项目经理,如何提高从而在竞争中胜出?
我要能理解用户,能站在用户的角度上考虑问题,观察发现用户不善于表达的需求。
协调团队中的认识差异与不同意见,形成共识。以提高团队积极性,使团队气氛乐观向上。
分析出重点,找到 优先级,做判断、做决定。
驱动流程,组织会议,实践Scrum,保证进度;创建并维护软件的规格说明书,让它成为团队成员开发测试过程中及时准确的指导。
目前市场上有什么样的产品了?
百度贴吧,MAX+等,QQ群等。
你要设计什么样的功能?
杀手功能:
收发开黑的信息。
外围功能:
良好的界面设计。
加好友功能。
必要需求:
快速地收发,匹配开黑信息。
辅助需求:
个人的游戏战绩展示。
更换皮肤主题。
为何要做这个功能,而不是其他功能?
自己本身也曾是DOTA2玩家,深刻理解目标用户的孤独和需求。
当前具备类似功能的APP比较欠缺。
为什么用户会用你的产品/功能?
为了填补一人单排的空虚的心,寻找玩的来的伙伴。
你的创新在哪里?可以用 NABCD 分析。
N:
想要寻找一起游玩的朋友。
但是在贴吧发贴立马沉了,在大型QQ群里大家都是会聊到其他的,或者很快就刷掉了你的询问。
A:
通过高度提炼的自定义信息过滤一些喜欢发不相干的话题的人,解决了QQ群里发邀请被大家刷屏,或者完全被带话题,带节奏而根本不能有效组队的问题。
B:
功能非常专一,使得结伴非常高效。
寻找到一起开黑的朋友,缓解内心的空虚。
可扩展性较高,如可以扩展到其他类似的比较小众,难以组队的游戏。
C:
缺点:如果用户数量不够多,那就无从解决用户的问题。
优点:
非常专注,不会有其他的扣费,广告,等,对于寻找队友没有任何帮助的多余项。
非常方便,只需要打开浏览器,打开一个网页就可以了。
D:
在玩家聚集地发推广,如相应的贴吧,MAX+等。
在相应的游戏主播的鱼吧等发推广。
如果你来领导这个团队,会有什么不一样?
深刻理解用户需求。
代表客户和用户的利益,主动收集用户反馈,预期用户新的需求。协调并决定 各种需求的优先级; 优化用户体验。
努力宣传,增加用户群体。
如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
美工:1人,界面有demo供参考。
开发:4人
测试:5人
描述你的团队在周期为16周,每周都要做什么,才能保证在第16周如期发布软件。
时间 | 工作 |
---|---|
第1周 | 需求分析原型设计 |
第2周 | 系统设计+数据库设计 |
第3周 | 搭建前后端框架与数据库,完成基本界面 |
第4-7周 | 具体编码阶段,完成alpha版本 |
第8-9周 | 发布alpha版本,进行测试与收集用户反馈 |
第10-15周 | 具体编码阶段,修改alpha版本中的bug,完善功能,优化性能,完成beta版本 |
第16周 | 测试优化,发布beta版本 |
项目发布后,有没有考虑过项目该怎么部署才能满足需求?分析16周后你所完成的项目上线需要哪些配套设备(服务器、带宽、数据库需求数量与配置) 。
应用服务器:4核8G3
后端服务器:8核16G3
缓存数据库:Redis 数量:2
关系型数据库:SQL Server/Oracle/MySql 数量:3(读写分离*2,备份 *1)
网站安全性:WAF、DDOS
带宽:根据用户数量逐步增加,最大值以全国DOTA2玩家平均同时在线人数按20万左右计算,大约需要2000M.