软件工程个人作业——软件评测
软件工程个人作业——软件评测
这个作业属于哪个课程 | 2020春丨w班 |
---|---|
这个作业要求在哪里 | 作业要求 |
这个作业的目标 | 腾讯即时通信IM 的案例分析 |
作业正文 | 如下 |
其他参考文献 | 《构建之法》 |
- deadline:2020-04-17 23:00
一.Demo评测(方式一)
- 本次作业本人选择评测腾讯即时通信IM的web,Android,以及Ios版本
-
Demo使用截图
web版本
登陆页面
聊天页面
Android版本使用截图
登陆页面
群聊页面
ios版本使用截图
登录页面
与用户聊天页面
-
bug发现
bug1
问题摘要:ios端群聊成员显示
问题描述:登录账号后,进入其中一个群聊查看群聊成员,没有成员信息显示
运行环境iphone 12.3
开发人员没发现这个的原因:可能是由于没发现ios兼容问题
bug2
问题摘要:ios端添加好友页面逻辑问题
问题描述:使用ios端时,本人先将系统默认好友IM助手删除,再添加好友,返回页面时发现页面跳转逻辑存在问题,例如下图1点击添加好友跳转到图二,在点击发送发送按钮后返回依然是图1页面
运行环境iphone 12.3
开发人员没发现这个的原因:开发人员没仔细考虑页面逻辑
bug3
问题摘要:web端刷新退回登录页面
问题描述:在评测web端即时通信demo时,偶然刷新了下,无论你是什么页面,网页都会退回到登录页面上
运行环境:谷歌浏览器
开发人员没发现这个的原因:没仔细考虑web页面跳转逻辑
bug4
问题摘要:web端添加好友问题
问题描述:使用web端时发现无论时好友列表页面以及用户信息页面均无添加好友选项
运行环境:谷歌浏览器
开发人员没发现这个的原因:开发人员忽略了添加好友功能
二.使用SDK开发产品
产品名:GameChat
产品功能:
- 用户可以与其他用户之间进行语音交流,也可以通过输入框进行文字交流
- 产品可以创建群聊,使多个用户在同一个群聊里进行语音、视频、文字等交流
- 产品中群聊提供创建选项,可选择是否永久存在,创建时间,自动销毁时间等,改善用户对群聊的管理
- 支持上传文件,包括视频,文档等
- 群聊发起用户拥有群主权限,可对群成员进行管理
用户分析:
本产品主要面向的是希望有一款简洁的可方便用户之间交流的游戏辅助通信软件
三.采访用户
1. 用户的背景需求
背景:当下科技发达,人们的娱乐生活越来越丰富,很多人都会在空闲时间与朋友们一起打一打游戏作为娱乐活动。
需求:用户需要一款软件可以提供娱乐游戏时的通信,且希望软件简介易用,以及易于管理游戏群聊
2.用户体验截图
本次体验以腾讯提供的即时通信IM demo进行测试
3.用户对SDK的意见
- demo体验
- demo界面简洁
- 基本功能与QQ、微信等类似
- 可以进行视频聊天与语音聊天
- 可以收发文件
- 软件在数据量/界面/功能/准确度上的优缺点
- 消息传送较快
- 界面友好
- sdk中缺乏一些有用的功能,例如多人语音等
4.用户对开发产品的意见
- 产品中的群聊可以选择定时销毁非常的棒,很多时候像QQ就是太多群聊了,消息很乱
- 产品可以的话衍生一些游戏内容分享板块也是不错的
5.用户体验效果
- 基本通信功能有实现
- 界面很简洁,与微信类似
6.腾讯即时通信评价
- 非常不推荐
- 不推荐
- 一般
- 推荐
- 非常推荐 ✔
四.分析SDK
1.时间规划
团队成员人数大约6人左右,且成员为计算机专业毕业生,实现要付出的时间大约在四个月左右。
2.同类产品对比优劣
市场上相类似的通信软件较多,功能很全面,我们的产品主要优势在于功能专一(针对游戏开黑语音),界面设计简洁,易使用,并且对于用户管理群聊更加方便。
3.团队软工方面提高
对于团队工程方面的提高,我认为主要是个人领域方面的深入学习,在开发过程中成员需要学习各自开发模块方面的知识,在各自领域的技能提升后,团队的整体水平才会提高。在深入学习各自领域的技能的同时,成员之间的交流也会增长他人擅长领域的知识。
五.规划产品
1.同类产品分析
本产品主要是用于游戏等娱乐通信,市面上类似通信软件有QQ,微信,以及叫专注于游戏相关的有YY语音等,这类软件例如QQ与微信都是十分强大的通信软件,不仅仅用于日常生活中的通信,也涵盖其他类似朋友圈等功能,YY语音也是以游戏开黑语音而出名,但是正式因为功能太多,新手上手时总会不懂得怎么操作,因此我们的产品胜在简单易用,不占太大空间,并且运行速度在相同条件下应该更为快速。
2.NABCD
Need 需求
当下科技发达,人们的娱乐生活越来越丰富,很多人都会在空闲时间与朋友们一起打一打游戏作为娱乐活动,因此很多人想要一款简洁易用的游戏辅助通信软件。
Approach 做法
利用腾讯IM的SDK构建可靠稳定的游戏通信app,后期性能优化可使用线程裁剪(单线程架构,减少线程切换和线程同步开支),提高消息到达率可以通过优化业务逻辑层,会话策略层和网络层。
Benefit 好处
提供外部游戏语音文字交流等,相较于游戏自带语音时不时产生的语音失灵等问题有了很好的解决。并且对于游戏团队群聊易于管理。
Competitors 竞争
具体参考 四.同类产品对比优劣 以及 五.同类产品分析
Delivery 推广
可以通过贴吧,游戏社区等平台进行推广
3.领导团队
领导团队必须能够对需求进行有效分析、对开发进度进行有效把控,同时也要组织成员定时开组内会议归纳遇到的问题以及商讨解决方案等。
4.人员安排
后端开发与测试、相关文档:3人
前端开发、UI设计、页面设计:2人
5.16周开发计划
注:开发过程中项目经理需定时组织成员进行开会总结
第一周:需求分析,编写需求文档,制作原型
第二周:学习SDK,结合SDK进行系统设计(包含部署方案)
第三周:数据库设计,团队分工
第四周:项目开发、测试
第五周:项目开发、测试
第六周:项目开发、测试
第七周:项目开发、测试
第八周:前后端交互测试
第九周:前后端交互测试
第十周:代码复审,测试完善
第十一周:部署项目,开始内测,修复bug
第十二周:开启公测,修复bug
第十三周:开启公测,修复bug
第十四周:市场化部署
第十五周:进行相关推广工作
第十六周:发布软件
6.部署
后台应用逻辑服务器、数据存储服务器(采用阿里云服务器)
处理器:Intel Xeon(Cascade Lake) Platinum 8269CY处理器,2.5GHz 主频 / 3.2GHz 睿频处理器 16vCPU
内存:128 GiB
内网带宽:5 Gbps
内网收发包:100万PPS
SSD 云硬盘 1TB *2