软件评测
这个作业属于哪个课程 | 2021春软件工程实践W班(福州大学) |
---|---|
这个作业要求在哪里 | 软件评测 |
这个作业的目标 | 针对一类软件进行相关评测并对此进行分析和提出建议 |
其它参考文献 | 相关社区规范 |
目录
第一部分 调研,评测
CSDN问答
体验
1.1.0 模块介绍
CSDN问答是CSDN的模块之一,供IT从业者或是学习人员进行问题的提出和解决,用户可以选择自己感兴趣的或是自己的专业能力能够去解决的问题帖来发表回答,同时也可以针对自己遇到的问题进行提问,其他用户同样可以根据标签来选择自己能够解决的问题。
1.1.1 问答模块界面
1.1.2 几篇提问
1.1.3 “写回答”测试(图示回答仅用于展示,未发表)
1.1.4 提问题模块
1.1.5 查看已发表的回答
1.1.6 优缺点分析
CSDN社区在平时编码的时候也会查看其中的一些知识性的博文或是问题解决性的博文,对专业知识的学习以及编码的正确性和完善性有很好多的帮助。不过之前对问答模块的使用比较少,经过这次的测评,我感觉问答模块对问题解决的针对性更大,不像博客可能还会给你先写上一大堆的知识点,然后草草地回答遇到的问题。数据量挺庞大的,而且因为有标签所以会挺有针对性,用户选择也比较方便;界面挺符合我的审美的,比较简单,而且各个模块分的很清晰,不过可能是显示的问题,侧边栏的最底部会有些许遮挡的情况,也许仅限于我的电脑;功能的话,因为是问答模块,所以只要完成了问、答就基本符合了我的预期;准确度的话,查找分类是挺清晰的,不过如果是针对问题回答的准确度的话,也无法正确去判断。总的来说用户体验么得问题。
1.1.7 改进意见
作为一个软件工程的学生,对CSDN的使用还是挺频繁的,但还是像上面提到的对问答模块的使用不是很多,所以也无法提出像样的改进意见,个人觉得体验挺好的。
BUG
1.1.8 测试环境
火狐浏览器88.0.1
测试模块:写回答
1.1.9 BUG可复现性
这个BUG是偶然发生的,由于不太清楚算不算BUG,也姑且先算是个BUG,在发现这个BUG后又测试了10篇的问题帖中的写回答模块,发现只有第一次出现了这个BUG
1.1.10 BUG描述
出现BUG的唯一一次,在测试写回答的时候,先添加了两个代码段,然后利用其上的“有序”和“无序”按钮进行样式的更改,但是测试下来发现有序和无序在同一行内容里似乎不能共存,然而第一次测试的内容出现了共存的情况。于是可以看见,我点击“写回答”按钮后进行了刷新并写入了新的内容,然后又重新点击“写回答”进行刷新。最后突发奇想地来了个Ctrl+Z,惊奇地发现回答板块中的内容回退到了最初的内容,而不是新修改的内容,而且继续按Ctrl+Z回退也没有效果,只能一行一行地删除。而且在后续的测试中,无序与有序共存的情况也没有再出现。
一般的情况下,就算是点击了“写回答”进行刷新,按Ctrl+Z回退也会一步步地回退,不会直接回退到最初的内容。
1.1.11 BUG分析
BUG的严重性等级
等级 | 描述 |
---|---|
5颗星 | 致命性系统故障、致命性安全漏洞、用户体验严重影响 |
4颗星 | 严重系统故障、服务器鉴权漏洞、用户体验较差 |
3颗星 | 系统较小系统故障、数据泄露、用户体验较差 |
2颗星 | 系统良好、数据泄露、用户体验较差 |
1颗星 | 系统良好、服务器鉴权良好、用户体验较差 |
这个“BUG”其实搞不好是个乌龙,因为最初的起因就是自己在写回答模块的按钮那边乱按然后发现了一个很特别的格式,有序和无序共存,Ctrl+Z回退也只是突发奇想。不过成因的话可能和这个格式有关(应该不是)?又或许是它的缓存机制,本地其实已经把最初的内容保存了,就可以解释无法继续回退,但是又无法解释为什么会跳过输入的最新内容而直接到最初内容,因为不可能没有缓存最近的修改,难道真是格式的原因卡BUG了?
BUG的严重性的话,如果一颗星的标准是系统功能、安全性以及用户体验只有小部分影响的话(即可以忽略不计),那就打一颗星。因为系统功能上可能也不会有人像我这样不断地刷新内容又不断地回退,至于安全性,可能用户在使用的时候只需在同一个页面进行操作,没有必要一直点“写回答”,至于回退应该不会出现问题。用户体验的话,就算出了这个不知道是BUG还是乌龙的东西,也无法改变CSDN是个好东西的事实(从我的观点),所以用户体验没有什么影响。
对于BUG的改进建议的话,可能就需要一些闲人像我一样一通乱按,不过我觉得相关工作人员应该关注的是如何完善这个问答模块,能够让它更适合我们这些IT相关人员,也不必纠结于这个“BUG”。真要改进的话,就多试一些格式的排列吧。
结论
1.1.12 CSDN问答的结论
非常推荐,用户可以根据自己想要解决的问题进行标签的查询,也可以通过这个平台对一些自身能够解决的问题进行回答,总的来说收获会很大,而且由于一些板块的内容会过于冗长,比如说博文,可能真的没有问答模块来的更直截了当,所以非常推荐其他用户去使用,不过可能得熟悉一段时间。
Stack Overflow
体验
1.2.0 模块介绍
Stack Overflow是全球性的IT问答网站,可供国内外的IT相关人员进行问题的提出和解决,用户也可以通过在提出问题和解决问题的过程中提升自身的专业能力。
1.2.1 问答模块界面
1.2.2 几篇提问
1.2.3 撰写回答模块
1.2.4 提问题模块
1.2.5 查看已发表的回答
1.2.6 标签查询
1.2.7 问题提出
1.2.8 优缺点分析
总体上解决了用户的问题,对于一些问题的回答上面比CSDN问答更具有针对性,可能是由于报错都是英文的缘故?在数据量的方面,庞大,毕竟是全球性的IT社区,缺点的话就是使用人数多的话数据会有些杂;界面上挺简洁美观的,符合我的审美,没有什么明显的缺点;功能层面上由于是专业的问答网站,所以比CSDN问答可能更加的完善,硬要说缺点的话,就是可能仅实现问答模块的话会有些单调;准确度上的话上面已经提到过有些回答比国内的会更具针对性、准确性,缺点的话,还是基数大无法判断总体的准确度的问题。用户体验方面没有大的问题,就是英语水平不够对浏览会大打折扣,只能通过网页翻译解决。
1.2.9 改进意见
建议出个中文网站
BUG
1.2.10 测试环境
Microsoft Edge
测试模块:问题的回答模块
1.2.11 BUG可复现性
这个BUG在满足特定条件下就会发生,提交回答的时候。
1.2.12 BUG描述
对于与问题无关的回答无法正确审核,只要格式正确或是满足超过30词就可以成功提交回答。
1.2.13 BUG分析
出现这个BUG的原因应该是回答的审核问题,应该机器审核的标准比较低。
BUG的严重性的话,我觉得有1颗星。主要是对用户的体验上会有一定的影响,会造成有些用户水回答的情况而导致无法得到理想的回答。
这个BUG的改进我觉得会有点难,毕竟机器对回答的审核能力还是有上限,可以采用机器审核+人工审核的方式来解决。
结论
1.2.14 Stack Overflow的结论
好,推荐,总体上是由于英文水平劝退,如果英语水平较好或是对机翻没有什么抵触的用户可以去尝试。
SegmentFault
体验
1.3.0 模块介绍
这是SegmentFault里的一个模块,供用户进行问题的提出和解决,也可针对问题的标签进行相关问题的检索,方便IT相关人员的学习和进步。
1.3.1 问答模块界面
1.3.2 几篇提问
1.3.3 撰写回答模块
1.3.4 提问题模块
1.3.5 查看已发表的回答
1.3.6 标签查询
1.3.7 问题提出
1.3.8 优缺点分析
平时这个网站用的比较少,具体的功能和CSDN问答类似,都是解决IT相关人员所遇到的技术问题。用户也可以选择自己感兴趣的标签进行问题的查询,排版也比较合理。数据量方面数据库应该是挺庞大的,不过首页加载的数据只有五页,想要查看更多的问题只能通过标签搜索,有点不合理;界面排版简单,符合我的审美;功能上基本能够解决问答模块所必须的问和答,缺点就是撰写的时候可能有些用户对Markdwon不够熟悉,只能用按钮来代替,比较不方便;准确度上所浏览的专业问题也无法判断其准确度;用户体验方面较CSDN会较差,不过总体上还算满意。
1.3.9 改进意见
可以多加宣传,让更多用户去使用这个SegmentFault,因为感觉百度上的博文链接也比较少,没有契机去了解和使用这个问答网站。
BUG
1.3.10 测试环境
火狐浏览器88.0.1
测试模块:标签
1.3.11 BUG可复现性
这个BUG在满足特定条件下就会发生,点击标签进行编辑的时候。
1.3.12 BUG描述
点击标签下方的编辑选项均会出现404报错
1.3.13 BUG分析
出现这个BUG的原因可能是权限的赋予问题,那没有编辑权限整这个按钮干嘛
BUG的严重性的话,我觉得有1颗星,因为在安全性上不会有什么问题,毕竟都是404也不会有人可以去修改,用户体验上会打低分,毕竟我这样我无法确定是的确有这个功能但是出于其他原因报错,还是就是一个没有给权限的摆设。
这个BUG的改进我觉得是有必要的,要么添加权限,赋予用户可以自行定义这些标签方便自己挑选,但不会被其他用户所见,要么就直接删去这个选项。
结论
1.3.14 SegmentFault的结论
一般,因为平时的使用不是很多,所以可能带了点主观的印象,而且发现有些逻辑会存在一些问题,提问的时候明明要求问号结尾却没有添加审核机制,管理不是很到位。
第二部分 分析
开发时间估计
CSDN问答:1个月
Stack Overflow:1.5个月
SegmentFault:20天
同类产品对比排名
CSDN问答:第一,因为CSDN问答知识CSDN的一个模块,CSDN在我们IT相关人员中的地位还是挺高的,就像我们学习新的技术的时候也会经常性地接触到一些CSDN的博文。不过由于国内用户众多,影响挺大。
StacK Overflow:第二,Stack Overflow的功能比较有针对性,而且用户不会仅限于国内的用户,国内的用户基数大的话难以避免会产生一些水的回答,而Stack Overflow可以让我们接触到一些国外的大牛的回答,可能更有效果。
SegmentFault:第三,相较于前两个网站,可以看见用户就少了很多,如果不是这次软件评测可能都不会意识到还有这样的问答网站,而且从开发时间估计上来看着实相形见绌。
软件工程方面的建议
针对CSDN问答,可以向IT相关人员多宣传一些问答模块,因为我们现在对CSDN网站的使用都比较杂,相比之下对问答模块的涉足就比较少,如果一个模块做出来却没有多少人知道有这个模块的话对整个项目都是一个损失。
针对Stack Overflow,可以考虑做一个中文版的网站,这样就不需要采用网页翻译,众所周知机翻和一些实际含义还是会有些出入,就像一些error可能会用机翻替换掉一些单词,看起来就很奇怪。
针对SegmentFault,可以先解决用户的权限问题,如果本意是这样设计的话,那就像CSDN看齐吧,因为确实用户体验不是很好,差距很大。
BUG存在的原因分析
针对CSDN问答的BUG,我认为极有可能是团队在测试的时候没发现这个BUG,毕竟是用户基数这么大的社区,也不会存在有意不修复这个BUG,更多的可能性还是在测试的时候没有测试到这样的情况,或者说没有闲着的测试人员。
针对Stack Overflow的BUG,审核的问题比较大,毕竟基本上采用机器审核的话难免会出现差错。
针对SegmentFault的“BUG”,我更愿意相信是具体的设计质量不高,可能团队在做项目的时候没有考虑的用户的权限问题。
第三部分 建议和规划
市场概况
各种软件开发人员统计中最常见的数字是2000万开发人员。同时在2014年,IDC计算出全球大约有1850万程序员。经常对全球开发人员进行深度调查的埃文斯数据公司提供的最新数据显示,全球开发人员总数为2100万。这仅仅是软件开发人员在2014年的数据,针对整个IT市场,那相关人员的数目会更多,包括一些在校的大学生,可以说IT相关的问答社区的市场很大,未来也有较大的发展空间。
直接的用户就是IT相关人员,包括从事IT产业的人员和在校的大学生、教师等,而潜在的用户包括其他领域的从业人员或者是学生,他们有时候也会接触到IT方面无法解决的问题,这时候有一个问答社区就能够很好地解决他们的问题。
市场现状
国内比较主流的还是CSDN社区,能够解决大部分的专业性问题,不过更多地是面向国内用户,而全球性的问答社区比较典型的产品就是Stack Overflow。
CSDN的定位是一站式AI学习平台,提供常用AI数据集、个人云存储、模型训练、结果导出功能,因为更多地面向国内的用户,所以比较契合国内用户的使用习惯,相关的数据量也比较多,但也由于用户的基数较多,所以在一些问题的回答上面会缺少一定的专业性。Stack Overflow是全球性的问答网站,从名字上来看就知道这是一个与IT有着密切联系的社区,供用户进行相关问题的检索和回答。全球性的网站的一个有点就是对问题的答案会有多样性,用户可以选择采纳不同的回答而不失专业性,缺点就是英文能力受限,有些问题或是回答无法清楚地理解其含义也会带来机翻的困扰。
这两个产品之间是竞品关系,在竞争中可能国内用户更偏向于使用CSDN,但是如果是追求专业性的话可以考虑浏览一下Stack Overflow,毕竟相关的错误都是用英文提示,可能更容易找到契合的答案。
市场与产品生态
核心用户:IT相关人员
典型用户
- 学历:大学本科及以上
- 年龄:18-35岁
- 专业:IT相关专业
- 爱好:学习、敲代码
- 收入:较其他产业高
- 表面需求:解决实际遇到的专业性问题
- 潜在需求:提高自身的专业能力
用户群体之间基本上是互帮互助的关系,有利用相关作用构成特定用户生态的可能,比如起初可能只是遇到了某位用户的某篇问题帖,点击了关注后久而久之变成了一种精神上的依赖,对技术的渴求,这样可能就从两个不相干的用户变成老师和学生的关系。
子产品和相关产品之间肯定存在着关系,子产品和其他相关产品都是在这个产品的基础上发展起来的,可以利用产品特性之间的相互关系二次构成产品生态,比如相关产品可能在借鉴某子产品的基础上开发出新的相关产品,这个产品可能更精简更加的优化。而随之又会产生新的子产品和相关产品,不断地延续下去。
产品规划
如果说需要在以上提到的产品的基础上添加新的功能,我认为可以在用户提出问题的时候可以智能地监测这个问题是不是用相似地提出,而不是仅仅对问题的标题进行相关匹配,毕竟有些用户的标题可能不能够很好地概括所要提出的问题。有了这个功能之后,用户可以在提出问题的过程中就能够找到相似的问题,就避免问题的重复提出,有些时候可能你的问题帖下没有用户进行回答,而其他类似的问题帖下却有很多比较适合的回答。
NABCD模型
- N(需求)
这个功能的提出可能会比较的抽象,但是考虑到这些问答社区仅仅只对问题的标题进行了相关的推荐,并不能够很好地给用户去节省提出相同问题的时间,在提出问题之后,用户所发的帖子可能很快就被覆盖掉而不能get到自己想要的答案,同时也避免了用户在之后查找相关的时间。我认为这个需求的解决是有必要的,可能很多的用户也会想节省一些时间。
- A(做法)
要解决这个问题,我们的团队可能会需要比较好的算法专业的人员。同时我们需要及时做好推广,增加产品前期的使用人员。另外对前期用户的体验反馈要及时的处理,便于吸引新的用户的加入。
- B(好处)
我们这个功能的实现可以有效的节省用户提出相关问题的时间,或是说后期检索的时间,也避免了优秀的回答不被发现的情况。同时也可以借推广这个新的功能的契机来吸引其他的用户来使用我们的产品,不单单是这个新添的功能。
- C(竞争)
做好与行业内巨头竞争的准备,面对更加庞大的软件团队和更加完善的已实现的产品,在前期可能在用户基数上没有什么优势,在软件的完整性和后期的维护可能也会存在一定的劣势。但是既然我们提出了这个新的功能,那与这些行业巨头相比就会有了功能上的优势,会先一步吸引有这方面需求的用户,从而带动后期用户基数的增长。
- D(交付)
推广方面我们就在原先的网站上先添加新的模块,然后挑选一部分用户先进行新的模块的测评,根据用户的反馈做出相应的调整再进行后期的推广。
角色的分工
- 前期的美工,包括原型制作和前端的界面逻辑2人
- 算法的实现2人
- 后端数据的处理兼测试2人
详细规划
时间 | 任务规划 |
---|---|
第一周 | 需求分析,制订前后端计划 |
第二周 | 完成原型制作 |
第三周 | 前端界面逻辑编写 |
第四周 | 前端界面逻辑编写 |
第五周 | 前端界面逻辑编写 |
第六周 | 相关算法的实现 |
第七周 | 相关算法的实现 |
第八周 | 相关算法的实现 |
第九周 | 相关算法的实现 |
第十周 | 相关算法的实现 |
第十一周 | 后端编写 |
第十二周 | 后端编写 |
第十三周 | 后端编写 |
第十四周 | 用户测试及反馈 |
第十五周 | 后期完善 |
第十六周 | 后期完善 |