这个作业属于哪个课程 | 2020春季软件工程W班 |
---|---|
这个作业要求在哪里 | 个人作业 |
这个作业的目标 | "腾讯即时通信IM"软件测评 |
作业正文 | 本文链接 |
其他参考文献 | 《构建之法》 |
一、调研&评测
1.评测:
(1)测试截图
A.Web端
B.微信小程序
C.Android端
(2)BUG描述
BUG1
- Bug描述
未查看消息数量气泡紊乱。消息未读会有数量累计提示,但未读消息查看过后仍旧无法消除提示气泡,导致无法准确判断哪些消息已读,哪些消息未读,而且这个Bug有时候出现,有时候消失。 - 为什么开发人员没发现这个问题?
这个bug的出现是无规律的,隐秘性极高,测试人员如果没有进行一定数量的测试,可能无法发现。
BUG2
- Bug描述
当创建群类型为private时,即使群中只有群主一人也可以退群,退群后,群中,但该群依旧存在,无法以相同的群ID创建群。 - 为什么开发人员没发现这个问题?
该问题比较隐蔽,或者可能开发人员在设计分析时没有对这一部分有一个合理的逻辑
(3)利用SDK想要开发的产品
我想开发一款线上会议的APP。
- 产品功能
这款线上会议APP主要针对各类团队群体,该产品能够为用户提供一个便捷的沟通交流平台,用户可以离开会议室,在家也能开会,学习、工作不再受时间、地点的限制,该产品使团队合作更加方便。 - 用户分析:
该产品适用于各类人群,主要是以团队的形式,用户主要是需要一个线上平台进行工作的开展,会议讨论的人群,用户可以通过线上会议平台随时随地进行讨论交流。
2.采访:
A.采访对象的背景和需求
-
采访对象体验腾讯即时通信demo
-
采访对象背景
采访对象主要针对大学生、在职人员
-
采访对象需求
采访对象或者说设计的产品可以面向各类人,该产品为这些人群提供一个线上讨论交流的平台,满足用户能够远程沟通的需求,为用户提供更加便捷的线上交流平台。
B.用户体验
用户在体验demo的时候,主要存在以下几点问题:
(1)界面过于简陋
(2)功能不够满足用户需求(一些不需要的功能存在,需要的功能却缺少)
(3)一些功能过于复杂,没有做到简洁明了、通俗易懂,用户无法拥有良好的体验。
C.用户对SDK的意见
腾讯即时通信是一个便于交流的平台,但是是大众化的,功能太少,且无法针对某一群体的需求。同时,对于网上的安全性和隐秘性无法得到保障。
D.用户对于我想开发的产品的意见
通过一定的采访,用户主要提供了以下几点意见:
(1)该产品应该纯粹地提供一个便于学习工作讨论的平台,不应太过繁杂
(2)希望能够提供一个类似腾讯文档能够多人实时更改的功能
(3)希望该产品是服务大众的,而不是以盈利为目的
E.结论
经过对腾讯即时通信的了解,我认为腾讯即时通信还是值得推荐的,在这个SDK的基础上,我们可以根据自身产品的想法进行设计,这样会事半功倍。
二、分析
A.时间规划
在团队人数大约6人的计算机大学毕业生的前提下,实现这个SDK大约需要2个月。在开始的15天进行需求分析(确定SDK的功能)和人员分配,一个半月进行具体的代码编写,15天进行SDK的测试和修改。
B.同类产品对比优劣
优势:与QQ、微信相比,腾讯即时通信功能更纯粹,只是单纯的针对通信,不会太够繁杂
劣势:优势同样也是劣势,功能存粹又意味着功能单一,因此针对人群太单一,导致用户过少,普及度不高。
C.团队软工方面提高
我认为团队在需求分析部分可以花更多的精力,尽可能的满足用户的需求,功能可以更丰富一点。
三、建议和规划
A.同类产品分析
目前,QQ视频、腾讯课堂、雨课堂等等,市场上参差不齐的类似的产品繁多,但是,线上会议这个功能只是这些产品中的一个小功能,而我的产品则是单纯的针对线上会议。虽然功能相似,但更具体,更有针对性。
B.NABCD
- N(Need 需求)
在互联网时代,线下的会议已经无法满足办公人员的需求,人们需要一个线上的平台代替会议室,将固定的办公场所转变成移动的场所,工作的讨论不再受地点、时间的束缚,可以随时随地召开会议。 - A(Approach 做法)
制作一款APP,提供一个平台让人们能够线上开展会议,能够进行远程视频、语音、共同编辑文档等等,让线上会议无线接近于线下会议。 - B(Benefit 好处)
人们不再受时间、地点的束缚,可以随时随地开展会议,即时身处异地的人也可以在同一个平台远程开会,提高了工作的效率,节约时间,更能适应这个快节奏的时代。 - C(Competition 竞争)
目前,QQ视频、腾讯课堂、雨课堂等等,市场上参差不齐的类似的产品繁多,但是,线上会议这个功能只是这些产品中的一个小功能,而我的产品则是单纯的针对线上会议。 - D(Delivery 推广)
线上线下同时进行宣传。线下以传单的方式,线上则可通过公众号、网页进行推广
C.你会如何领导团队
(1)合理地安排工作任务,让每个成员都不会有过大的压力;
(2)经常与队员们进行沟通和交流,听取他们的意见和需求;
(3)对于团队任务要设置DeadLine,使得任务能够按时完成;
D.人员安排
岗位 | 工作 |
---|---|
项目经理 | (+1)市场调研,制定开发计划,协调团队合作 |
前端 | (+2)界面交互设计 |
后端 | (+2)接口设计,具体功能开发,数据库开发 |
测试 | (+1)负责整个项目最终的测试,查找到BUG后由对应部分的人员进行修改和完善 |
E.16周开发计划
周 | 任务 |
---|---|
1 | 市场调研,需求分析,确定产品功能 |
2 | 人员安排,进行原型设计,制定代码规范 |
3-12 | 具体代码实现 |
13-14 | 对产品进行测试,修复和完善 |
15 | 编写用户手册。 |
16 | 项目部署,发布 |
F.部署
应用服务器配置: 4核8G2
后端服务器配置: 8核16G2
关系型数据库:MySql8.0
缓存数据库:Redis
网站安全性: WAF,DDOS