个人作业——软件评测
这个作业属于哪个课程 | 2020春|S班(福州大学) |
---|---|
这个作业要求在哪里 | 个人作业——软件评测 |
这个作业的目标 | 阅读《构建之法》,调研分析腾讯即时通信IM |
作业正文 | 作业正文 |
其他参考文献 | 《构建之法》 |
一、SDK评测
评测:
软件的bug,功能评测,黑箱测试
我选择的是方式一:测试Demo。
这里我选择微信小程序、Android、Web三种Demo进行评测。
demo使用截图
- 微信小程序
- Android端
- Web端
bug
- bug1
问题描述:当两个用户进行私聊时,上面显示的一直是未读。然而两人正在交流,显示未读显然是没有道理的。
-
为什么开发人员没发现这个问题?
可能是测试的时候忘了这一点?毕竟也只是demo
-
bug2
问题描述:一般来说,点击群聊之后,上面的红色气泡会消除,然而点开其他聊天框时上面的红色气泡还是没有消除
-
为什么开发人员没发现这个问题?
可能是没注意到这里,消息计数器没有清零?
二、利用SDK你想要开发的产品
产品:快乐学习
产品功能
- 支持群聊、群语音、群视频
- 支持上传群文件
- 群主或群管理员可发起群直播,默认设置其他成员麦克风为关闭状态。并且可选择录屏直播
- 发布作业、批改作业,可批量提醒群成员提交作业
- 支持在线测试
用户分析
这次新型冠状病毒让我们无法走出家门。教学面临巨大挑战。在互联网高速发展的今天,线上教学是非常不错的选择。但是很多教师,尤其是老教师,对于各种学习软件的使用熟练度不够,造成工作效率大幅降低,很多时候都是在做无用功。教学效果很糟糕。本产品是希望教师能够轻松教学,提高工作效率。
三、采访
1. 采访对象的背景需求
背景:吴女士,某小学数学教师。因为线上教学不顺,很难得到全部学生的学习反馈,还有校内领导工作安排混乱等问题,十分苦恼
需求:想要轻松解决线上教学困难的问题,及时得到学生学习情况的反馈并做出教学调整
2. 用户体验
3. 用户对于SDK的意见
-
界面简洁工整,十分舒适
-
可以进行语音聊天,视频聊天
-
有些按键没有反应
-
功能有点少
4. 用户对于你想开发的产品的意见
-
在线测试的选择填空题可以让系统自动批改
-
批改作业发现改错时可以撤销
-
可以给出一些奖励,鼓励学生积极提问
5. 结论
-
非常不推荐
-
不推荐
-
一般
-
推荐
-
非常推荐
结论是 非常推荐!
四、分析SDK
1. 时间规划
团队人数大约6人左右,计算机大学毕业生。预计需要3-5个月的时间
2. 同类产品对比优劣
相对于网易云信
- 腾讯云群聊人数上限要更高
- 腾讯云可免费
- 腾讯公司推广能力很强
- 腾讯云只能保留7天的聊天记录
- 腾讯云功能较少
- 腾讯云不支持多人语音、视频聊天
3. 团队软工方面提高
继续完善功能,美化界面。选择自己擅长的领域进行开发。遇到困难及时提出,不懂就问。发挥自己的长处。加强交流,提高效率。
五、规划
1. 同类产品分析
同类产品有很多,比如QQ、企业微信、雨课堂等等。这些软件早已在市场上被大量用户使用。所以想要跟他们竞争还是很艰难的。但是事物都是有两面性的,完美的东西根本就不存在。功能强大且丰富的QQ,有线上教学的功能。但由于它功能过于丰富(毕竟QQ又不只是用来上课的),可能会导致学生上课分心。学生可能学着学着就点开了QQ看点看各个营销号作妖。我们的产品是主要针对线上教学。目的是尽可能地提高教师的工作效率和学生的学习效率,并没有什么花里胡哨的扩展功能。这虽然少了些趣味,但是能够提高教学质量便足矣。
2. NABCD
-
N(Need,需求)
新型冠状病毒的侵袭,让人们饱受折磨。为了大家的安全,为了控制疫情,我们都应该服从管理,足不出户。但是教育事业代表着国家的未来,我们是不可能放弃教育的。这时,线上教学成为了首选。教师需要软件进行上课、布置作业、批改作业等教学任务,学生需要软件进行听课,做作业等学习任务
-
A(Approach,做法)
开发一款实时通讯的APP,实现私聊、群聊、群语音、群视频、群直播、作业等功能
-
B(Benfit,好处)
针对性强。主要是针对于教学工作,功能强大实用又不花哨。让学生能够更加专注于学习,让老师的工作效率能够进一步提高
-
C(Competitors,竞争)
主要竞争对手:
-
QQ
-
企业微信
-
雨课堂
...
优势
-
功能明确,专注于教学工作的开展。其它软件功能虽然丰富,但是对于教学工作来讲显得过于花哨
-
作业功能强大。教师布置作业简单轻松,一些题目如选择题、判断题等死答案的题目可以直接设置答案,让系统自行批改并进行统计,以便调整教学计划,提高效率
劣势
- 竞争激烈。开发晚,且跟用户数量巨大的软件进行竞争,好似以卵击石
- 功能不够丰富。只有跟学习方面有关的功能,趣味性不足,吸引力不够
-
-
D(Delivery,推广)
通过微博、微信、贴吧等平台进行推广。
3. 你会如何领导团队
如果我来领导团队,我会缩短我的代码编写时间,将更多的精力放在团队的分工,统一协调。让成员选择在自己擅长的领域进行软件开发。定期组织团队成员开会,提出各自遇到的比较严重的问题。做好项目的规划,给出各个功能模块的deadline,让队友能够如期完成。当然,工作重心在于核心功能,并尽可能地消除bug,保证质量。
4. 你的人员安排
- 1人(领导者)负责软件项目管理以及部分后端
- 1人负责美工及测试
- 1人负责前端
- 3人负责后端
5. 16周开发计划
第1周:需求分析
第2周:原型设计
第3周:系统设计
第4周:数据库设计
第5-13周:软件开发及测试,美化UI
第14周:发布alpha版本,收集用户反馈,继续美化UI
第15周:根据用户反馈继续完善,修改bug,适当宣传
第16周:发布beta版本
6. 部署
应用服务器配置:4核8G *2
后端服务器配置:8核16G *3
关系型数据库:Mysql 数量:3(读写分离 *2、备份 *1)
缓存数据库:Redis 数量:2
网站安全性:WAF、DDOS