2020 软工实践 个人作业——软件测评

这个作业属于哪个课程 2020春 W班
这个作业要求在哪里 2020软工实践个人作业————软件评测
这个作业的目标 评测腾讯即时通信IM,写出对于即时通信SDK的建议和规划
作业正文 2020软工实践寒假作业一(Fuze Helium-3)
其他参考文献 ...

一、评测

网页端Demo


Android端Demo

IOS端Demo

小程序Demo

Bug汇总

Web端Bug

1、Web端无法进行添加联系人的操作。

未在Web端找到添加陌生人为联系人的操作,而其他平台能添加目标用户至联系人列表。这是功能上的缺失。
出现频率:永远

你觉得为什么这个产品组的人没有发现这些bug??

对于为何未实现添加联系人功能,个人更倾向于产品组遗漏了此功能的开发这一原因。个人认为这个功能还是一个颇为重要的功能,既然其他平台的Demo中都已经实现了此功能,Web端无此功能并不合理。

2、Web端无法查看联系人列表。

Web端的联系人列表永远为空。在其他平台添加的联系人,可以在其他平台的联系人列表中查看,但是在Web端的联系人列表无法显示任何联系人。
出现频率:永远

而其他平台的联系人列表可正常显示。

你觉得为什么这个产品组的人没有发现这些bug??

正因为Web端无法进行添加联系人的操作,故联系人列表是否正常工作的测试极大可能也被忽视了。并且测试人员未充分考虑到跨平台同步的问题。

Android端Bug

1、Android端个人信息的修改个性签名Bug

当在Android端个人主页修改个性签名的时候,点击确定后,个性签名显示的仍未修改前的签名。而当再次点击修改个性签名时,此时的签名又变为修改后的签名。当再次点击确定后,签名又会变为之前的签名。总而言之,个性签名会记忆修改前与修改后的两个签名,点击确定会在二者之间进行跳转,即使你并未进行任何编辑。
经测试发现昵称也存在一样的情况。
详情如下图:
出现频率:永远

你觉得为什么这个产品组的人没有发现这些bug??

这个Bug并不容易被发现,因为正常的逻辑都是修改个性签名的内容后再点击确定,少数会直接点击确定按钮来修改个性签名。故测试人员测试的时候应该也是修改内容后再点击,故忽略了此Bug的存在。

2、拍摄界面点击右方“从相册选择”无效

当在聊天界面中选择“摄像”功能时,软件会正常进入摄像,但是此时若点击屏幕下方右侧的“相册”按钮,则无任何反应,只会弹出“right”标识。拍照功能同理。具体情况如下图:
出现频率:永远

你觉得为什么这个产品组的人没有发现这些bug??

毕竟这只是一个Demo程序,点击右方“相册”按钮能弹出“right”标识说明开发人员当时有考虑到这个按钮,但由于各种原因遗忘了对此功能的进一步实现。

3、已读消息无法标记已读

自己发送的消息能够显示对方是否已经阅读此条消息,但是即使对方已经阅读了此消息,消息也并未从“未读”状态转变成“已读”状态。具体图如下,发完这些消息后登陆接收方的账号查看消息,但这些已读标记未曾变化过。
出现频率:永远

你觉得为什么这个产品组的人没有发现这些bug??

此为较明显的一个Bug,也许产品组的人发现了此Bug但由于时间不够或其他因素未对此进行一个及时的更改。也有可能此功能会占用较大的同步流量,故只存在于付费版中。

IOS端Bug

1、IOS端在黑暗模式下几乎不可用

IOS13之后加入了黑暗模式,但IOS端Demo并未对暗色模式进行任何适配,甚至还会因暗色模式的开启导致显示上的bug。如下图的登陆界面、发送消息框以及个人资料界面,这些文字因暗色模式的开启导致几乎可见度为零。

出现频率:永远

你觉得为什么这个产品组的人没有发现这些bug??

IOS深色模式的适配是IOS13以来才有的问题,目前还有很大部分AppStore中的APP未对深色模式进行适配,更何况这只是一个Demo程序,故我认为未考虑到IOS深色模式适配问题情有可原。毕竟连国民巨头微信对深色模式的适配都是“千呼万唤始出来”。

小程序端Bug

1、小程序无法进行修改个人头像

在小程序端Demo的个人资料界面,点击修改头像无任何反应,无法实现修改头像功能。
出现频率:永远

你觉得为什么这个产品组的人没有发现这些bug??

试了下Android端的换头像是点击换头像按钮后随机更换系统内置头像。小程序端也许是忽略了对此功能的实现,但产品组的人未发现此bug个人认为是测试的不全面导致。

2、在群聊中修改群昵称,无法正确显示

在群聊中修改群昵称后,修改昵称方无法看见自己修改后的群名称,在群聊中名称的显示变为显示ID。而其他人能看见他昵称的修改,但是对于他修改昵称之前所发送的信息的昵称无法更改,依然为修改之前的昵称。如下图所示:

出现频率:永远

你觉得为什么这个产品组的人没有发现这些bug??

群聊中修改群昵称后,此Demo实现应该是只对之后再次发送的信息更改发送人的昵称,代码未对此人此前发送的信息进行修改昵称。有可能因为这只是Demo程序,未实现较为完善的功能。

二、利用SDK想要开发的产品

产品功能:

1、匿名聊天功能。本软件中所有聊天均为匿名聊天,任何人都无法知道真实身份。提供给用户一个完全匿名的环境。

2、随机匹配功能。每隔固定时间能随机匹配一个陌生人进行聊天。

3、可对随机匹配的人进行添加好友、拉黑等操作。

用户分析:

1、适合一些在现实生活中较为内向、不擅长交际却又渴望能结识一些朋友的人。

2、适合一些因现实因素困扰,渴望能有个匿名平台与其他人交流的人。

三、调研&采访

采访对象背景:

本人高中同学,某位请求匿名的吴姓男子。

采访对象需求:

吴同学自己本身较为内向,且有社交恐惧症,平时在学校一般都在宿舍宅着,没加什么社团也没有很多朋友,不擅长交际。吴同学表示很希望能结交更多的朋友,但碍于现实等多种因素,难以结识新朋友。并且吴同学希望能尽早脱单,摆脱单身狗的日子。

让采访对象使用三十分钟的腾讯即时通信Android端Demo

死肥宅吴同学:

采访对象对腾讯即时通讯Android端Demo进行了长达三十分钟的体验,较为完整地体验了几乎全部功能,期间我也配合他体验了聊天的相关功能,包括语音、视频、文件发送等。

以下是采访对象的具体感受:

优点 缺点
数据量 “这我不好测试吧,但我相信腾讯的实力” 暂无
界面 “简介大方,比较像微信” “交互做得不够好”
功能 “一些基础的功能都能实现” “功能过于简陋、有较多的Bug,还有待改进”
准确度 “消息的传达较为准确” “其他部分的同步存在问题,如改名字、签名等”

采访对象总结评价:

“通过对腾讯即时通讯Android端Demo的使用,我觉得大体上完成的还行。具有简洁大方的界面,基础功能也都实现了。但如果就到此为止是远远不够的,希望能在交互上更下点功夫,增添一些交互动画,使软件整体使用感受更好点。也希望能增添更多的功能,如自定义头像、表情包、聊天背景等等。另外,此Demo还存在着很多BUG,较影响用户使用感受,希望之后能够进行修正。”

用户对我想开发的产品意见:

“听起来很吸引人,特别是我这样较为内向、有社交恐惧的人,在生活中和新朋友真的是不懂如何交谈。匿名的随机匹配能较好的解决这个问题。但我觉得这样的软件可能存在一些不合规甚至非法的骚扰信息,对此方面的隐患需要重点考虑。”

对腾讯及时通信的评价:

整体来说还行,但未达到个人的预期,特别是对于腾讯这种手握微信和QQ,以IM见长的公司而言。(体验过网易云即使通讯后感受越发明显)

故我的结论为:一般

四、分析SDK

使用腾讯即时通信的所有功能,联系第二部分的分析,估计这个SDK做到这个程度大约需要多少时间?(团队人数大约6人左右,计算机大学毕业生)。

前提:六人团队,计算机大学毕业生(个人认为得是较为优秀的毕业生,普通毕业生水平做这个应该够呛(也可能只是我够呛))

根据《构建之法》8.6节中所描述,实际时间花费主要取决于两个因素————对某件事的估计时间X,以及他做过类似开发工作的次数N。

Y = X +- X / N;

若这六人有过类似相关的开发经验,则时间花费更短;若从未开发过类似产品,有可能需要很长的时间才能完成。

故我估计六人的团队要4~6个月左右。

这个软件目前的优劣(和类似软件相比,如网易云信),并推理出团队在软件工程方面可以提高的一个重要部分(具体建议)。

此处与网易云信进行对比,网易云信使用截图如下:


腾讯即时通讯优点:

1、群成员上限远远多于网易云信,网易云信免费版群容量仅支持200人。

2、支持消息撤回、消息已读、未读功能。

腾讯即时通讯缺点:

1、不支持自定义头像,而网易云信支持

2、不具备跨设备传输功能,而网易云信能发送消息到“我的手机”

3、交互与使用不如网易云信

总结:通过对比使用网易云信和腾讯即时通讯两款相同领域相同功能的Demo,个人认为网易云信拥有较好的用户体验与更为稳定、完善的功能。特别是对于腾讯公司来说,这样的体验是不能达到用户预期体验的。

推理出团队在软件工程方面可以提高的一个重要部分(具体建议)。

团队在前期确定功能时,应当确定各个平台拥有共同的功能,而不是其中某些平台拥有此功能而其他平台没有此功能,应该具有一致性。

五、规划你的产品

1、同类产品分析:

市面上目前存在的匿名交际APP,有Soul、一罐等。它们的功能较为完善,更偏向于通过匿名发表动态来进行交际。

2、NABCD

(1).N(Need)

渴望交友,却因现实中种种因素难以结识朋友。

渴望交流,却害怕被认识的人发现自己。

(2).A(Approach)

完全匿名,昵称由系统分配或是用户自己从有限范围内进行选择,从而用户无法通过昵称表达任何身份信息。

提供随机匹配功能,让任何用户都能够有一个聊天对象。

(3).B(Benefit)

用户不用担心隐私泄露、无人述说的问题,能够畅所欲言,敞开心扉,结识到更多的朋友。

(4).C(Competitors)

市面上已有的Soul、一罐等匿名交际APP,本产品提供更为纯粹的一对一匿名匹配功能,而不像竞品更偏向于通过动态进行更大范围的交际。

(5).D(Delivery)

通过在一些大的流量平台投放广告进行推广。如微博、微信大V,抖音、快手大V,以及某些DAU较高的APP进行广告投放。

3、如果你来领导这个团队,会有什么不一样?

若我来领导团队,我会鼓励团队中的成员多交流、大胆发表自己的观点。我希望队员能够对任何自己觉得不合理的方面提出质疑,从而促进大家进行更多的交流,对问题的方方面面能有更深层次的探讨,发掘之前所忽略的一些问题。这样能够更好地促进团队成员对项目地理解,也能减少团队成员之间的矛盾冲突,提高工作效率。最终更好地完成项目的实现与部署。

4、如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?

我会进行如下的安排:

项目经理一人:负责整体任务的安排与把控以及文档的撰写。

前端 + 美工 两人:二者共同进行前端的开发与界面美工的设计。

后端 两人:二者共同负责后端的开发。

测试:四名开发人员一起进行不同模块的测试。

5、16周开发计划

周数 计划
第一周 需求分析
第二周 原型设计
第三周 系统设计
第四周 数据库设计
第五周 前期工作审复,完善缺漏
第六~八周 Alpha版本实现
第九周 测试、修改
第十一~十二周 Beta版本实现
第十三~十五周 测试、修改
第十六周 部署

6、部署

应用服务器配置: 4核8G*3

后端服务器配置: 8核16G*3

关系型数据库:MySql数量:3(读写分离2,备份1)

缓存数据库:Redis:2(主备)

网站安全性: WAF,DDOS

posted @ 2020-04-16 23:45  FuzeHelium-3  阅读(327)  评论(4编辑  收藏  举报