个人作业——软件评测
这个作业属于哪个课程 | 班级 |
---|---|
这个作业要求在哪里 | 作业要求 |
这个作业的目标 | 阅读构建之法,分析腾讯即时通信IM |
作业正文 | .... |
其他参考文献 | ... |
一、测试DEMO与调研
1、快速体验
WEB端
微信小程序端
Android端
2、比较严重的BUG
(一)web端VMS(语音消息)多次点击,能够多次播放。导致该VMS短时间内多次播放,无法听清楚语音内容。由于博客园法上传音频文件,暂时无法更好的展示bug。
未发现bug原因:因为在其他端的语音功能是正常的,可能是程序员在编写程序的时候,相关属性未设置。至于为啥没有发现,可能是因为调试人员觉得语音消息能够播放就可,没有注意能够多次播放。
(二)头像显示不能同步,形如下图,同样对于用户geityepa
在 消息群“炸裂”中能够正常的显示该用户的头像。但是在与用户geiyepa
的会话中不能正常显示头像,更有甚者多端的头像图片不一样。
未发现bug原因:未发现bug原因,多端的头像显示不一样可能,可能是测试人员是单独对各端测试,未考虑换头像的问题。
(三)在‘腾讯即时通信IM’很好的提出了自定消息的概念,自定义消息能够较好的解决用户自定义消息满足一定范围用户的需求,但是自定义消息并不能支持显示
未发现bug原因:这个或许是某些依赖未安装,导致在调试人员的电脑中能够正常显示自定义消息界面,以至于没有发现这个bug。
(四)置顶会话只能够在一端产生效果,不能同步多端的置顶效果。置顶效果是为了更好的找到会话,若是置顶不能多端同步,则当用户在另一端登录时,不能起到快速找到会话的效果。
未发现bug原因:没有同步进行多端的测试,测试人员可能主要测试不同端的消息是否能够同步,未能测试置顶是否能够同步
(五)好友列表在多端并不能够同步,形如下图,在Android端通讯中包含了好友,但是在web端通讯录空空如也。
未发现bug原因:没有同步进行多端的测试,测试人员可能主要测试不同端的消息是否能够同步,未能测试通讯录是否能够同步
3、采访
构思你根据该SDK想要开发的产品
主要功能:希望用SDK开发一款软件,用户能够方便的与其他用户进行通信。最关键是是,用户能够选择自己所需要的版块,通过拖拽组件,方便地进行个性化的排版设计,设计出属于自己的界面,也可选择默认的界面设计。
面向用户:主要面向年轻人团体,因为年轻人的思想比较开放,有较多的奇思妙想,比较有个性。
用户采访
采访者介绍:小许同学,是一位大一的学生,他平时比较有自己的想法,也比较有个性
采访者需求:希望能够一个软件能够实现通信的同时能够设计个性化的界面,不喜欢前篇一律,但是自身对于编程并不了解,希望能够个性化设计的同时能够便捷一点。
采访者体验:“这个demo能够较好的实现个人通信功能,界面设计也是比较常规,不能够实现个性化的设计。这个demo还是有比较多的bug的,有些设计也不够友好,例如:修改头像这是输入url,并不是选择图片,还有查看用户信息比较不方便等等。总体而言,大致满足了通讯的需求,就是一些细节还是有点不够好。”
产品介绍:设计一款软件能够能够实现基本的通讯,并进行用户界面的个性化设计。
对腾讯即时通信的功能改进意见:注意一些细节的实现,希望一些交互的设计能够友好一些,就像是手机上的MI有些用户的信息是无法修改的,及时点击了也没有任何响应。
想开发产品的意见:最好除了已经有的空间模板,有能力的用户还能自定义控件样式。
腾讯即时通信下一个评价:一般,功能都是实现了,就是一些细节的处理还是不够,还有改进的空间。
二、分析
使用腾讯即时通信的所有功能,联系第二部分的分析,估计这个SDK做到这个程度大约需要多少时间?
三个月,原因是团队为六人的计算机大学毕业生,开发的经验可能不是那么充足,并且该项目包含了微信小程序 iOS Android Mac Windows Web,多种客户端,这会导致开发的工程量比较大,还需要会各种平台开发的人员,可能难度会比较大一些。
分析这个软件目前的优劣(和类似软件相比,如网易云信)
优势:多个客户端能够同步进行,界面简洁,操作简单。demo的注册相比较网易云信比较简单快捷。
劣势:功能结构单一,不够丰富,还有许多的bug没有调试好,一些人机交互比较不人性化。相比之下网易云信的demo就好,UI比较好一点,也比较注重人机之间的交互。
团队在软件工程方面可以提高的一个重要部分
界面的美观是对产品的第一印象,要注重UI设计。在人机交互方面,要注重人性化设计,若如用户点击一点反应都没有非常影响用户的使用体验。在软件测试环节,要从细节出发,尽量将所有的功能测试完毕,否则当软件发行后,bug会使得用户对软件的印象大打折扣。
三、建议和规划
目前市场上有什么样的类似的产品?
目前通讯软件使用频率较多的是微信、qq软件,他们已经积累的大量的用户,也集成了大部分的通讯手段
NABCD分析
- Need (需求):对于先在的聊天软件,大致的分布界面都是一样的,都是有底部栏的设计等等,但是界面分布就这样是最好的吗?这样的设计是适合所有人的吗?每个人的习惯不一样,都有自己的嗜好,所以需要有一个能够有个性化设计的界面,人人都是设计师,都能设计属于自己的界面,这样还能激发用户的创造能力。
- Approach(做法):我会现实基本的功能模块,例如聊天,添加好友,群聊等功能模块。可以提供1-2种默认的界面设计模式供用户选择。然后把UI设计的权限下放给客户,让客户能自主的设计个性化的界面。
- Benefit(好处):该软件能够激发用户的创造性,能够为用户定制属于自己的,适合自己的个性化设计。
- Competitors(竞争):现有的聊天软件,也有一些个性化的设置,比如说设置背景图片,或者消费购买聊天软件推出的皮肤,但是构建的布局是无法改变的,用户能够修改皮肤是有限制的。但是我们的产品,用户如果对当前的界面设计不满意,用户可以自定义设计。所以还是有自己的亮点的,还是有竞争力的。
- Delivery(推广):这个软件的推广,主要是针对个性化设计进行推广,并且设计出不同与当前聊天界面的优美设计。并以此进行推广,推荐用户打破常规,与众不同,突出个性。
如果你来领导这个团队,会有什么不一样?
如果我来领导腾讯及时通讯demo的团队,我会更加注重与用户的交互体验,用户体验良好,才能增加用户黏性。还有测试阶段也不能忽视,这直接关系到了软件的质量,若是软件的bug太多,用户体验自然不好,很难挽留用户。
如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)
首先在项目的初期,全员进行系统分析和系统设计,并撰写完成需求规格说明数和系统设计说明书。在一切的文档准备完毕后,三人利用SDK进行基本功能的是实现如聊天,视频通话等功能,两人进行页面的设计并负责UI部分。在后期,两人继续完成基本功能的实现,一人转而去测试已完成的功能,两人进行UI设计。
描述你的团队在周期为16周,每周都要做什么,才能保证在第16周如期发布软件。
周数 | 任务 |
---|---|
第一周 | 需求分析与系统原型设计 |
第二周 | 系统设计与数据库设计 |
第三周 | 环境搭建,系统测试,开始初步的开发 |
第4-7周 | 实现基础功能的开发 |
第8-11周 | 实现对自定义界面的实现 |
第12-13周 | 对软件进行测试优化 |
第14-15周 | 部署软件,进行用户体验测试,并完善相关建议 |
第16周 | 确认无误后交付软件 |
项目发布后,有没有考虑过项目该怎么部署才能满足需求?分析16周后你所完成的项目上线需要哪些配套设备(服务器、带宽、数据库需求数量与配置) 。
应用服务器配置:4核8G x 2
后端服务器配置:8核16G x 2
关系型数据库:MySql数量:3(读写分离、备份 x 1)
缓存数据库:Redis数量 :2(主备)
网站安全性:WAF,DDOS