项目 | 内容 |
---|---|
这个作业属于哪个课程 | 2023年北航敏捷软件工程社区-CSDN社区云 |
这个作业的要求在哪里 | 个人作业-软件案例分析-CSDN社区 |
我在这个课程的目标是 | 了解软件工程方法论,提高工程能力以及团队协作开发能力,总结软件开发经验 |
这个作业在哪个具体方面帮助我实现目标 | 学习市场上软件的设计优点,总结其存在的不足。 |
在互联网时代下,我们能从网上找到海量的学习资料,然而这些资料的质量却良莠不齐,大部分资料没能系统地讲解某一领域的知识。本文分析的 CSDN 中的技能树版块(以下简称技能树)正是旨在打造一个IT人系统学习的平台。
在本节中,笔者将描述技能树的功能使用体验,分析技能树是否解决了用户的问题,其在数据量/界面/功能/准确度上存在的优缺点,对产品提出改进意见,分享笔者对其他软工班级学生的调研采访,并最终给出对该软件的评价。
以下以技能树的python板块为例进行评测。
进入首页,其设计与作者所想的树或知识图谱的形式并不相同,而是类似于电子书,在左侧导航栏显示目录,共分为章和节两层。根据学习情况会用不同深浅颜色的叶子标注。
中间栏共可切换四个功能:知识点学习情况总览(目录)、用户定下的学习目标(立Flag)、知识点速查手册(速查手册)、用户已达成的学习目标(达成Flag)。
右侧包括相关技能链接、用户学习和贡献榜、技能树介绍。
总体来说首页UI设计简洁明了,用户可以快速阅览该技能涵盖的知识点以及自己的学习情况,并可以通过点击章节名轻松开始学习。
知识点页面布局与主页类似。
中间栏展示该页面的主要功能,包括:练习题、参考资料、交流讨论、我的笔记、专栏课程五个部分。
练习题
罗列一下和当前知识点相关的习题,python板块中只出现了选择题,在选择选项后系统会给予反馈。
参考资料
由各个博主编写的相对完善和清晰的课程资料,用户也可以尝试编写并提交博客作为新的课程资料。
交流讨论
我的笔记
专栏课程
该模块给用户提供付费课程的入口,用户可点击查看课程详情,并选择是否购买课程。
知识点页面的右侧提供给用户一个编写笔记的区域,支持markdown格式编写,同时支持用户选择公开(发布在交流讨论模块)或私密(发布在我的笔记模块)发布。
技能树项目成员是这么描述该项目的。
它能帮助用户系统地浏览关于一个技术领域的各个知识点,做动手练习,并跟踪自己的成长。CSDN 的这个新功能进一步推动了它的宗旨 — 为 IT 人士打造学习,成长和成功的平台。
技能树能够很好的帮助新手系统的学习知识。
可见,该项目的初衷是为了提供初学者一个系统学习专业知识的平台,让初学者免于淹没在良莠不齐的学习资料和培训中。然后实际使用下来,给人感觉这个平台更适合于有一定基础,想对知识点进行查漏补缺的老手。
软件在以下方面存在一定的优缺点:
数据量
界面
优点
在构建之法第12章——用户体验中有提到:
很多软件设计者把用户界面等同于给领导汇报的工作成绩单,所有的功能都争先恐后地出现在用户面前,唯恐用户没有注意到。但是用户往往会被繁乱的界面弄得晕了头,无所适从。
缺点
功能
准确度
基于以上多种因素考虑,该产品基本解决了用户存在的核心问题,初步完成了项目的初始设想,即:
帮助 IT 领域学习者进行职业成长的一站式学习工具。 帮助用户系统地浏览关于一个技术领域的各个知识点,做动手练习,并跟踪自己的成长。
但是就实际使用体验而言,该网站的参考资料是其他用户撰写,从内容质量和准确度、内容连贯性上,比起菜鸟教程仍有很大的提升空间。而对用户使用的细节功能上,该网站并没有仔细进行打磨,比起专职做学习的软件(如猿题库、百词斩等),在真正学习使用时会显得格外不便。
以下将针对功能优缺点分析中提到的缺点给出改进意见。
采访对象为欧阳老师班级的一名同学,因为对方是笔者室友,在交流上没有太多顾虑。且对方正在学习后端相关知识,是这方面的初学者,属于技能树的核心用户。
可见,技能树在基本功能上能大体满足用户需求,但是在对提升用户使用体验的一些细节上仍然存在着改良空间,最终他也并不推荐使用这款软件。
技能树整体使用下来,只能说大体上可以满足用户的基本需要,初学者确实能通过该软件入门某一技能。同时简洁美观的UI设计,让用户能轻松使用其主要功能。
但是就参考资料的质量、练习题的合理性、细节功能的全面度、功能的创新性而言,技能树都或多或少和市场中的其他替代品存在一定差距,比如菜鸟教程等。
按照 项目成员对自己产品的期待,技能树确实可以做到**“帮助用户系统地浏览关于一个技术领域的各个知识点”,为用户提供了一个可以“系统学习一门技术的”平台。但是在“做动手练习,并跟踪自己的成长”这一方面却不尽人意。同时对于“怎样证明自己获得了足够的技能”这一点,技能树只是简单根据选择题**的通过情况判定,这实在难以让人认同。
最后根据该评分标准进行定量评价:
描述 | 评分(满分 10 分, 良好 6 分, 及格 4 分,聊胜于无 1 分, 很差 -3 分) | |
---|---|---|
核心功能 | 核心功能的设计和质量 | 4(知识点和资料完善,但习题质量不佳) |
细节 | 为用户考虑的细节 | 1(有笔记功能,但其他细节几乎没有考虑) |
用户体验 | 当用户完成功能时,不干扰用户 | 6(界面设计简洁,无弹窗广告) |
辅助功能 | 一些辅助功能如皮肤等 | 1(没有特殊的辅助功能) |
差异化功能 | 软件独特的功能 | -2(没有独特的功能) |
软件的效能 | 占用内存、启动速度 | 8(启动速度较快,没有大量占用内存) |
软件自适应性 | 联网/断网,不同屏幕,不同操作系统的使用 | 8(各平台使用情况基本一致) |
成长性 | 记住用户的选择,适应用户的特点,用户越用越方便。 | 1(仅记录用户的学习情况) |
用户有控制权 | 系统状态有反馈,等待时间要合适。关键操作有确认提示,有明确的错误信息。 让用户方便地从错误中恢复工作, 快捷操作键可调整。 | -3(几乎没有提示,进入已通过的习题后每次都会弹窗提示已完成,体验较差。笔记功能不支持快捷键) |
社区文化 | 讨论区是否活跃,讨论质量是否合格 | 4(讨论区有很多帖子,但是部分帖子质量较低) |
最终评分:28/100,不合格。
基于上述工作,我对该软件的评价为不推荐,如果确实有需求,完全可以使用市场上其他替代品(如菜鸟教程)。
首先给出对Bug严重性分析的量化指标:
等级 | 具体描述 |
---|---|
⭐ | 略微影响用户体验 |
⭐⭐ | 较大影响用户体验 |
⭐⭐⭐ | 一定程度的系统故障;一定程度的安全漏洞;严重影响用户体验 |
⭐⭐⭐⭐ | 严重系统故障;严重安全漏洞;严重影响用户体验 |
⭐⭐⭐⭐⭐ | 致命性系统故障;致命性安全漏洞 |
可复现性:必然发生
复现步骤:
描述:
技能树的讨论帖按钮表现如下图,点击回复按钮后并没有出现评论界面,而是直接跳转到帖子,即这两个按钮属于多余设计,功能并不完善。
Bug分析
可能成因
严重性
评价指标 | 等级 | 理由 |
---|---|---|
系统功能 | ⭐⭐⭐ | 两个按钮缺失功能,一定程度上影响使用 |
安全性 | ⭐ | 无安全性隐患 |
用户体验 | ⭐⭐ | 用户有大量使用该功能的情况,这将导致用户不得不进行更多繁琐的操作才能进行评价或回复 |
综合以上描述,该Bug星级为⭐,略微影响用户使用。
Bug改进建议
可复现性:必然发生
复现步骤:
描述:
Bug分析
可能成因
严重性
评价指标 | 等级 | 理由 |
---|---|---|
系统功能 | ⭐⭐⭐ | 笔记功能设计不完善,没有全面考虑用户使用时会发生的各种情况 |
安全性 | ⭐ | 无安全性隐患 |
用户体验 | ⭐⭐⭐⭐ | 若用户编写的大量笔记这样付之东流,将严重影响用户使用体验,同时也将很大程度上打击用户学习的积极性,对软件的好感度 |
综合以上描述,该Bug星级为⭐⭐⭐,严重影响用户使用。
Bug改进建议
可复现性:必然发生
复现步骤:
描述:
Bug分析
可能成因
严重性
评价指标 | 等级 | 理由 |
---|---|---|
系统功能 | ⭐ | 不涉及系统功能 |
安全性 | ⭐⭐⭐⭐ | 存在安全隐患,通过此漏洞可以大量提交垃圾信息,影响审核人员进度,甚至导致系统崩溃 |
用户体验 | ⭐⭐ | 用户可能在不知情的情况下提交了错误链接,一定程度上影响使用体验。 |
综合以上描述,该Bug星级为⭐⭐⭐,一定程度上存在安全漏洞,且影响用户使用。
Bug改进建议
在有专业UI支持的情况下,鉴于该网站功能并不复杂,主要任务量将会是在资料的收集和整理上,如果抛开这个工作量,估计时间将会在14周左右(如果算上资料收集和整理,那工作量将会大很多)。
以下为大致工作计划
周次 | 具体任务 |
---|---|
1 | 任务分工与用户调研 |
2~3 | 用户需求分析,编写并审核设计文档 |
4~7 | 编码实现相关功能 |
8 | 代码复审,进行各单元及功能测试 |
9 | 发布alpha版本,收集用户反馈和建议 |
10~12 | 根据反馈情况进行beta版本开发,包括Bug修复和功能调整 |
13 | 发布beta版本,收集用户反馈和建议 |
14 | 网站正式上线,运维人员维护网站 |
笔者使用过的类似软件有菜鸟教程,W3school,下面比较技能树对比这两个网站的优劣之处。
综上所述,对三个软件排名为:菜鸟教程>技能树>W3school。
根据上述分析,我认为该软件团队可以在用户需求分析多做提高。根据项目成员对自己产品的期待,该软件并没有做到为用户提供高质量的学习资料,包括参考资料的质量良莠不齐,练习题设置不当等问题。同时也没有考虑多种细节,导致用户在实际使用该软件学习技能时,可能会有各种各样的问题影响使用体验。如果团队能更充分地进行用户需求分析,并完善用户使用时需要的各种功能,我相信技能树会更能吸引用户。
你要在当前软件的基础上设计什么样的新功能?为何要做这个功能,而不是其他功能?为什么用户会用你的产品/功能?你的创新在哪里?可以用NABCD分析。
如果你是项目经理,可以招聘6个人,并且有4个月的时间,你认为应该如何配置角色(开发,测试,美工等等) 才能在第16周如期发布软件的改进版本,并取得预想中的成绩。
角色 | 人数 |
---|---|
前端 | 1 |
后端 | 3 |
测试 | 1 |
美工 | 1 |
详细规划
周次 | 具体任务 |
---|---|
1 | 任务分工与需求分析 |
2~3 | 编写并审核设计文档、接口规格 |
4~8 | 编码实现相关功能 |
9~10 | 代码复审,进行各单元及功能测试 |
11 | 发布alpha版本,收集用户反馈和建议 |
12~14 | 根据反馈情况进行beta版本开发,包括Bug修复和功能调整 |
15 | 发布beta版本,收集用户反馈和建议 |
16 | 正式发布网站,运维人员维护网站 |