软件评测
这个作业属于哪个课程 | 2021春软件工程实践W班(福州大学) |
---|---|
这个作业要求在哪里 | 软件评测 |
这个作业的目标 | 调研,评测和比较不同产品的功能 |
其他参考文献 | 《构建之法》 |
第一部分 调研,评测
体验
1.1 CSDN问答
1.1.1 基本功能
通过提交标题、内容和标签发布问题,用户可以在问答区进行评论回答。
1.1.2 优缺点
优点:问题以时间最新排序,回复问题自动把该问题加入关注列表,提问时右侧有规范提问的提示和步骤
缺点:问答模块使用频率较低,长时间没有新问题的提出以及访问量和回复率都没有明显提升(同SegmentFault)
1.1.3 BUG描述
Bug发生时的测试环境
win10 chrome浏览器、EMUI10移动端
Bug的可复现性及具体复现步骤
必定触发,一直存在该现象。
Bug具体情况描述
评论一个问题后,无法删除该回复;我的回答部分也一直存在该问题。
Bug分析
严重性 | 描述 |
---|---|
P0 | 需要紧急修复,影响范围很大 |
P1 | 功能性bug,影响范围较小 |
P2 | 触发条件复杂,影响不大 |
P3 | 个别用户触发事件 |
我认为将该bug评定为P1(必须快速修复) | |
用户评论后,无法删除。或许是故意为之,但是不合理。 | |
应该增加评论的删除接口,也可以从我的回答模块删除该记录。 |
1.1.4 改进意见
采用一定的激励政策吸引用户使用和主动解答,提高问题的解决率;并及时通知用户该问题的相关进展。
1.1.5 结论
结合产品功能和用户体验角度,推荐程度:好,不错
1.2 Stack Overflow
1.2.1 基本功能
描述问题并发布,用户可以在问答区进行评论回答。
1.2.2 优缺点
优点:较其他两个产品,问题的刷新率、回复率都表现较好;问题以时间最新排序,也有相应的提问提示,以及提问富文本框带有多种编程语言的样式和例子
缺点:没有选择语言翻译的功能,可能对英文不好的同学有点不友好。
1.2.3 BUG描述
暂无发现
1.2.4 改进意见
可能增加标题内容翻译功能会好些?(不包括代码段)
1.2.5 结论
结合产品功能和用户体验角度,推荐程度:非常推荐
1.3 SegmentFault
1.3.1 基本功能
描述问题并发布,用户可以在问答区进行评论回答。
1.3.2 优缺点
优点:问题以时间最新排序,提问模块提供模板和预览
缺点:没有规范的提问提示,以及问答模块使用频率较低,长时间没有新问题的提出以及访问量和回复率都没有明显提升(同CSDN)
1.3.3 BUG描述
暂无发现
1.3.4 改进意见
提供一些提问的规范模板,以及采用一定的激励政策吸引用户使用和主动解答,提高问题的解决率。
1.3.5 结论
结合产品功能和用户体验角度,推荐程度:一般
第二部分 分析
开发时间估计
问答模块包括问题的提出,问题保存,对问题评论(包括增删改查等)
- 后端实现(4周)
包括图片的上传、富文本不同的片段格式,以及消息通知
- 前端网页(3周)
实现基本的UI模块
- 移动端(3周)
实现基本的UI模块
- 前后端对接(4周)
协调接口参数问题,测试完成基本使用
估计花费两个月的时间,也只能完成一个实现基本功能的初始版本。
同类产品对比排名
结合目前的使用体验,个人感觉Stack Overflow > CSDN问答 > SegmentFault
Stack Overflow的提问和答复频率更给人直观的技术氛围感受,当然产品功能这部分并没有很明显的优劣
软件工程方面的建议
在前期做好需求分析工作,规范化结构,建立包括类图、用例图、活动图等。注意不破坏类的独立性封装,确立各个用例之间的关系,注意解耦进行模块化开发。
BUG存在的原因分析
可能对用户潜在的需求把握不当,可能需要移动端对之前访问的内容进行一个回顾,并没有考虑到这个潜在需求。
第三部分 建议和规划
市场概况
首先市场有多大?
随着编程人员的迅速增加,每年都有大量的用户涌入编程学习。提供一个优质的问答平台对于这些开发基础较为薄弱的群体就尤为重要。学习无止尽,问答平台对于初学者又或是已经从业的人群都有着很大需求。
其次直接的用户有多少?潜在的用户又有多少?
直接用户即在职以及在学的编程相关专业用户,潜在用户包括观望这个行业状况,有学习意向的人群。
从github、csdn等平台计算用户量基本超过了4000万。(据2019年数据,github已拥有3600万的用户,CSDN预估拥有2000万)
市场现状
目前市场上有什么样的产品了?
包括Stack Overflow、CSDN问答、SegmentFault、掘金等。
上述产品的定位、优势与劣势在哪里?
这些产品定位是提供交流问答的平台,Stack Overflow优势是用户群体数量更加丰富,其他两款产品优势就是本土化,更有亲切感,劣势就是该模块用户数量并没有很多。
上述产品之间呈现什么样的关系?以及竞争中的各方态势如何?
都是竞争关系,但双方又是包容的,通过博客搬移的形式吸引用户转移,形成良好的竞争关系。
市场与产品生态
核心群体
产品核心用户当然是程序员群体,典型用户我认为是刚入手学习编程、基础较为薄弱的用户,需要一个表诉需求、获取帮助的平台。进入更深入的学习是他们潜在的需求。
特定用户生态的可能性
产品面对的群体都具有一定的针对性,以及产品提供了内容迁移的功能,使得产品的用户之前联系更加紧密,形成特定的、具有专业性的用户生态。
产品生态的可能性
我认为分析了用户的潜在需求,建立一个相关专业的课程模块,同提问模块相结合的形式,还是有机会形成一个小型的产品生态。
产品规划
你要在当前软件的基础上设计什么样的新功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能?你的创新在哪里?可以用NABCD分析。
N(Need,需求)
对于一个问题的改错或是找出bug所在,可能需要双方不断的进行评论和反馈,等待对方回复也浪费了一定的时间。是否可以出一个在允许的条件下实现屏幕的实时分享?
A(Approach,做法)
利用第三方的屏幕分享sdk,快速实现实时分享反馈的功能。
B(Benefit,好处)
节约了双方的时间,一个实时的讲解也能让困惑的用户更加快速理解并掌握(当然提供帮助的用户需给予一定的激励)
C(Competitors,竞争)
在众多问答模块产品中,提供实时帮助的一个功能,独树一帜,大大提升了产品的竞争力。
D (Delivery,推广)
前期需要一个稳定的在线答疑的一个小团队帮助前期的建设和推广,并加入一定的激励措施,形成一个良性反馈。
如果你是项目经理,可以招聘6个人,并且有4个月的时间,你认为应该如何配置角色(开发,测试,美工等等) 才能在第16周如期发布软件的改进版本,并取得预想中的成绩。
人员安排:web开发2,后端2,测试1,美工1
时间 | 安排 |
---|---|
第1周 | 需求分析,讨论并分配后端、美工的工作,确定技术栈 |
第2周 | 展开美工、后端工作,web开发搭建框架 |
第3-5周 | 美工提供初步方案,web开发根据设计搭建UI,后端完成接口通道的搭建 |
第6-10周 | 美工修缮一些细节,web开发同后端一起完成屏幕实时分享的开发,同时测试可以进入白盒测试 |
第11-12周 | 测试并提交bug,修复bug |
第13-14周 | 发布beta版内测,获取内测数据 |
第15-16周 | 修复在内测中出现的问题,发布正式改进版 |