2021S软件工程——案例分析作业
2021S软件工程——案例分析作业
18231169 黄思为
项目 | 内容 |
---|---|
这个作业属于哪个课程 | 2021春季软件工程(罗杰 任建) |
这个作业的要求在哪里 | 案例分析作业 |
我在这个课程的目标是 | 了解并熟悉软件开发的具体流程,与团队共同开发一款实用的软件。在实践中增强自己的工程能力。 |
这个作业在哪个具体方面帮助我实现目标 | 通过实际体验已有产品,分析它们的优劣,从中获取软件开发的经验,用于自己接下来项目的开发。 |
1 选题
本次作业,我选择了CSDN APP、牛客APP、微信公众号三个产品体验并进行横向对比分析。由于在平日里使用网页端CSDN较多,我将以CSDN APP为主进行体验分析,其它两个产品作对照与比较。
设备及环境:
- 三星Galaxy S9+(SM-G9650)
- Android 10
2 调研与评测
2.1 基本功能体验
CSDN APP
基本界面如下:
让我很不舒服的是,一个博客论坛类APP想要读取我的联系人与通话记录,果断选择拒绝。
对于CSDN,我最常用的其实是网页端。CSDN APP在我的手机里存在了许久,但从未打开过。在熟悉了CSDN APP的主要界面后,我考虑了以下两个场景进行深入的体验:
搜索引擎
这是我平日里绝大部分使用CSDN的场景,在写代码的时候遇到相关的问题,就上CSDN搜索一下,以实现“面向CSDN编程”。所以,我认为将CSDN APP作为一个搜索引擎,会是一个典型场景。对于一个搜索引擎的评价,我认为应该从内容可信度、丰富度、相关性等方面进行评估。
我尝试搜索
Junit beforeclass
,得到了以下的结果: 对于CSDN内容的专业性,我个人还是比较认可的,毕竟是老牌的技术博客网站,大部分技术问题都可以在CSDN搜索到一个很不错的结果。我也常常使用CSDN对专业课的内容进行释疑与扩展。比如Junit的相关内容,我就是看CSDN的博客一点点学习的。
虽然CSDN的内容较为全面与专业,可以作为学习时很好的一个搜索引擎,但我使用时还是发现了问题。一般而言,搜索引擎的结果,会给出几个排序的指标。如:按时间、按热度、按相关性等。在选择一个指标作为主键进行排序时,另外几个指标也不能差距太大。然而,当我选择
博客
按热度
时,出现在第一页的内容不能说没有关系,只能说毫无相关了: 瑕不掩瑜,使用CSDN APP搜索时,一般不需要选择太多的选项,出现的内容就足以解决我的问题。所以,我认为作为一个搜索引擎,CSDN APP是合格的。省去了打开浏览器、进入CSDN官网的过程,或是在百度搜索结果中选择CSDN内容的烦恼。
IT领域特供版“知乎”
虽然我绝大部分时候打开CSDN,只会直奔搜索框,根本不会理会首页中的内容,但是,在这次对CSDN APP的体验中,我认为CSDN现在已经不仅仅是一个单纯的技术博客网站,而是将自身定位为IT行业的一个门户网站。由此,我认为CSDN APP的用户,还有一个使用场景会是这样:在通勤途中、等待运行结果、甚至是上班摸鱼的时候,打开APP,像刷知乎一样去浏览CSDN APP中的内容。
我这么说不是空穴来风,可以看到CSDN APP的顶栏与底栏都有很明显模仿知乎的痕迹:
基本上用户使用的逻辑是一样的。于是,我试着在食堂等香锅的时候、游戏加载的时候、上厕所的时候使用CSDN APP,浏览其中的热榜内容。不得不说,看起来还挺有意思的,既能打发一些时间,又能够学习到一些知识。但是由于博客大部分是在电脑端书写,屏幕比例与移动端相差甚远,有的时候阅读体验并不是十分良好。
牛客APP
相比于CSDN,牛客可能更多的偏向于求职就业,而非技术分享。我只是轻度使用了一下牛客,个人认为集成刷题功能对学习技术还是很有帮助的。并且题库较为全面,有分编程语言、工作岗位、技术方向的专项练习,也有公司真题、错题练习。我认为这个功能对于求职者十分实用。求职板块的相关信息也比较丰富,可以提供多方位的信息,不过可信度我难以考证。
在我看来,牛客APP与CSDN APP的目标群体有着明显的区别,它对于自己的目标用户来说,应该能够算得上是一个功能齐全、信息丰富的APP。
微信公众号
微信公众号所有人都再熟悉不过了,现在不管什么都要开一个公众号。它与前两个APP不同,它并不专一领域的,而是一个大杂烩,且门槛较低。这样就导致内容较为杂乱,且可信度与专业性都大打折扣。我关注了几个技术类的公众号,如:程序人生、科技美学等。我不知道什么时候起,不管是哪种微信公众号,标题都变成了一个画风——为了吸引眼球。我甚至在某公众号上看到过:”不要再学Python了“(诸如此类的标题),点进去以后发现一通胡扯,最后是卖课卖书的。所以,通过微信公众号学习技术,我个人是比较抵触的,并且我认为它无法与上面两个APP不属于同类型竞品,无法做更多的比较。
2.2 不良体验与改进建议
底部栏的会员可以考虑更换
对于一款APP来说,底部栏是很重要的一个交互部分。然而,CSDN APP却把”寸土寸金“的地方,留给了用户很少使用到的”会员“。这点对于我来说是一个特别糟糕的体验。如果想开通会员,用户自然会去个人信息页面寻找相关的入口;如果不想开通会员,底部栏放一个大大的”会员“,这不是恶心用户吗,同时也使APP少了五分之一的可用”第一交互“部分。所以,我认为可以把它更换为一个更为实用的选项,甚至将底部栏按钮由五个变为四个,体验也会好很多。
热榜重复出现
我注意到,在CSDN APP的首页顶部,有一个热榜,在底部栏又有一个热榜选项卡。经确认,两个热榜里的内容是一样的。那何必在这么接近的地方放置两个一样的东西呢?建议首页内容置顶的”热榜“可以删去。
代码块的阅读体验需要优化
上文提到过,博客大多数是在电脑端书写,与手机屏幕比例相差甚远,这给用户带来了不太好的阅读体验。许多地方的排版会显得有些凌乱,但也能够理解。但是,如果碰到较长的代码块,CSDN APP给出的解决方案是左右滑动代码块与横屏查看代码块。然而,这里的交互并没有做好,很容易出现想要左右滑动,却变成上下滑动,不由得让我有点抓狂。建议在代码块中滑动时,将上下互动锁定,这样就可以减少误操作。
2.3 BUG分析
- BUG严重性分级
星级 | 具体描述 |
---|---|
\(\star\star\star\star\star\) | 危害软件安全性,泄露用户信息 |
\(\star\star\star\star\) | 导致软件崩溃或卡死 |
\(\star\star\star\) | 影响软件功能完整性 |
\(\star\star\) | 严重影响用户体验 |
\(\star\) | 轻微影响用户体验 |
不绑定手机,无法通过QQ/微信登录


在CSDN APP上,选择QQ/微信登录后,仍然会弹出绑定手机号的提示。如果不绑定手机号,选择左上角返回按钮,则会判定未登录。我一开始觉得这是CSDN想要强行绑定用户手机号,但是我在网页端尝试了使用QQ号登录,不绑定手机仍然可以成功登录。所以CSDN APP在QQ/微信登录入口的这种情况属于一个BUG。
我将其评级为\(\star\)BUG,轻微影响用户体验。因为大部分用户还是会绑定手机号进行登录的,且不登录也可以进行相关的浏览。
点击md文档内链接失效


许多博客的开头都会有一个目录,并使用文档内链接,点击即可跳转到想要查阅的部分。但是,在CSDN APP中,点击链接后,链接虽然变为深色(代表有过点击动作),页面却并没有跳转到相应部分。
我认为这个BUG可能的原因是移动端对markdown的支持存在一些问题,导致文档内链接无法使用。
我将这个BUG评级为\(\star\star\),即严重影响用户体验。在阅读较长文章时,无法目录导航,会浪费大量的时间。
2.4 用户采访
我对石同学进行了采访,他偶尔会使用CSDN APP。
人物背景
石同学也是计算机专业大三的学生,很显然,采访他的原因是好不容易找到一个用CSDN APP的人。石同学在平常有查阅计算机领域的技术问题的需求,并且对CSDN使用较多。他的主要需求是解决工作学习中遇到的技术问题。
使用的产品栏目
“我一般直接搜索,偶尔会刷一刷热榜里的内容。”
石同学的使用产品栏目是较为单纯的,直奔搜索栏查阅自己需要的内容。并且,他会在阅读一篇博文以后,继续查看博客后的相关博文。并且,他在少部分时候会浏览一下热榜的文章。
遇到的问题与亮点
“CSDN就是资源比较丰富,其它倒是平平无奇。”
他对以下三个方面进行了吐槽:
没有标记文章已看过的功能
在上面的采访中,我们得知该同学会有翻阅相关博客的习惯。然而,CSDN APP并不会将已阅读的博客标记出来(比如标题变灰处理)。这就导致在浏览了几个相关博客后,忘记刚才看过的博客题目,又点进了已经查看过的博客中。
“会给我推荐一些跟我没关系的文章”
石同学表示,偶尔会在首页看到一些他不感兴趣甚至和他无关的文章。这里有可能是推荐算法出现问题,或者CSDN“恰钱”了。
许多内容收费
在下载内容时,CSDN是需要开通会员的,石同学表示,这不利于社区的发展。
需要改进的地方
“如果能够将上面提到的问题进行改进,我觉得就很好了。”
对于石同学来说,他并没有更多的需求,只是偶尔会使用CSDN APP查阅相关博客和资源。以上的问题如果能够解决,就能使他的用户体验有很大的提高。
2.5 软件打分
在深度体验了CSDN APP以后,我最终给其打分为c,一般。我觉得它没有明显的缺点,但是也没有特别的亮点让我有理由向别人推荐这个APP。在下文中,我还会进一步说明我对这个APP的看法。
3 分析
3.1 开发所需要的时间
使用此服务的所有功能,估计这个软件/网站/服务做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI支持)。
由于CSDN APP与CSDN使用相同的搜索引擎接口,并且设计也参照了现有的APP,所以我认为需要37周的时间完成这样的工作。
时间 | 具体任务 |
---|---|
1周 | 产品调研,用户定位,团队磨合 |
2~6周 | 需求分析,确定分工、开发框架、开发规范,学习所需开发技术 |
7~14周 | 实现基本需求,完成初步开发(前端设计,后端实现,前后端交互),初步测试 |
15~27周 | 完善软件功能,修复已知BUG,进一步测试 |
28~32周 | 部署、测试 |
33~36周 | 开放内测版本,修复大部分BUG,针对内测用户反馈进行修改 |
37周 | 正式上线 |
3.2 产品排名估计
- 产品优势
- 基于CSDN的庞大资源
- 资讯丰富
- 同类产品较少
- 产品劣势
- 目标用户会更多使用网页端
- 市场定位不够明确
- 收费内容过多,容易劝退用户
我认为作为基于CSDN在国内的影响力,且同类竞品数量较少,CSDN APP在同类软件中至少是坐二望一的位置。当然,也有可能是我使用过的APP较少,没有发现更多优秀的同类产品。
3.3 BUG成因分析
我认为第一部分的两个BUG都是由于测试不到位导致的。
4 建议与规划
4.1 市场概况
个人认为,CSDN APP这类软件的市场真的不大,可以说是十分小众了。酷安(一款聚集了较多极客的应用市场)中CSDN与其它软件的下载量的对比,足以看出它的小众:
直接用户应该就是IT行业的从业者,但是他们工作时更多会在电脑上进行,并使用网页端查阅相关资料,浏览技术博客等。潜在的用户为计算机专业的学生,他们使用手机有可能比电脑更多,使用APP会更多。
4.2 市场现状
目前市面上的竞品并不是很多,毕竟这个领域APP的受众较小。博客园APP算是一个竞品,但是它的功能十分简略,只能进行简单的浏览。
产品优势上文已经提及,背靠CSDN大量的资源与知名度,吸引大量开发者。劣势在于自身的定位不明确,功能做得很杂,既不像一个纯粹的技术APP,又不像一个休闲娱乐APP,用户使用场景模糊。
4.3 市场与产品生态
核心用户群自然是需要查阅相关资料的IT从业者。典型的用户画像有以下两种:1. IT行业工作者,在工作中需要查阅特定资料;2. 学生,在学习中需要查阅相关资料,并且会阅读不同类型的内容进行学习。
产品目前来看不存在构成生态的可能性,应当专注于特定的功能。
4.4 产品规划
市场定位
我认为目前来看,CSDN APP的市场定位、用户使用场景都是模糊不清的。我在上文中提到的两个不同应用场景,实际上是两个方向:一种是把自己打造为纯粹的一个技术类博客APP,一种则是成为一个IT领域综合资讯APP。但是,后者的用户群体就更小了,且有知乎这样的大体量竞品,试想谁想在工作之余,打开APP仍然看的是一堆硬核技术博客呢(不排除有以学习技术为乐的大佬,那就是目标用户...)?
我进行了一个小规模的问卷调查,问卷内容如下:
我在高等理工学院2018、2019级学生群、QQ空间、微信朋友圈、1806灌水群发布了该问卷。问卷主要的回答者为大二、大三的学生,且有理工科背景。共收集到97份有效问卷,其中92人在有接触过CSDN。在92人,只有38人使用过CSDN APP。对CSDN APP的主要使用场景如下图所示:
可以看到,绝大部分的使用场景为查阅技术性博客,对APP内其它功能的使用人数较少。
通过这份问卷,一定程度上验证了我的想法:对于CSDN的使用者来说,CSDN APP并没有特别强烈的需求,毕竟写代码时大家都会使用电脑,网页端会更加便捷。在使用CSDN APP的时候,常常是目标明确,直接搜索自己需要的相关内容,较少把CSDN APP当成知乎类软件去随意浏览文章。当然,这份问卷也存在着很大的局限性:1. 样本数量较小;2. 调查的群体较为单一。
基于以上认知与调查,我想将CSDN APP定位为一个纯粹的技术类博客APP,用户使用场景为查阅特定内容。
新功能
桌面组件
用户可以在桌面添加一个CSDN的搜索框,无需打开APP本体就可以搜索想要查阅的资料。这样可以让用户更加便捷地搜索,正如一众翻译类APP的功能一样:
精简APP的内容
可以不需要有那么多的分类标签,我认为用户很少会选择那些分类去看里面的内容(起码我个人是这样)。比如我想要看Junit的内容,我肯定不会选择在Java的分类标签下翻阅,而是直接进行搜索。可以只留下关注与热榜,用户有一定几率进行浏览。
角色配置
我认为应该招聘两个美工,对APP进行精简设计,让它看起来不再那么臃肿;两个开发,因为开发任务并不是特别重;两个测试,对新功能以及之前未修复的BUG进行全面的测试,提高用户体验。
2021S软件工程——案例分析作业的更多相关文章
- [BUAA2021软工助教]案例分析作业总结
目录 一.作业链接 二.优秀作业推荐 A+作业推荐 A作业推荐 三.总结 所有案例分析总结 特色与优点 问题与建议 不同类产品案例分析Bug汇总 CSDN问答社区.Stack Overflow.Seg ...
- 案例分析作业——VS和VS Code
项目 内容 这个作业属于哪个课程 2021春季软件工程(罗杰 任健) 这个作业的要求在哪里 案例分析作业 我在这个课程的目标是 认真完成课程要求并提高相应能力 这个作业在哪个具体方面帮助我实现目标 学 ...
- 软工案例分析作业-CSDN
项目 内容 这个作业属于哪个课程 2021春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 案例分析作业要求 我在这个课程的目标是 提升软件开发能力与团队意识 这个作业在哪个具体方面帮助我实 ...
- 2021S软件工程——个人阅读作业2
2021S软件工程--个人阅读作业2 项目 内容 这个作业属于哪个课程 2021春季软件工程(罗杰 任建) 这个作业的要求在哪里 个人阅读作业#2 我在这个课程的目标是 了解并熟悉软件开发的具体流程, ...
- 2021S软件工程——个人阅读作业1
2021S软件工程--个人阅读作业1 项目 内容 这个作业属于哪个课程 2021春季软件工程(罗杰 任建) 这个作业的要求在哪里 2021年软工-热身阅读作业 我在这个课程的目标是 了解并熟悉软件开发 ...
- “深度评测官”——记2020BUAA软工软件案例分析作业
项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任建) 这个作业的要求在哪里 个人博客作业-软件案例分析 我在这个课程的目标是 完成一次完整的软件开发经历并以博客的方式记录开发 ...
- BUAA_2020_软件工程_软件案例分析作业
项目 内容 这个作业属于那个课程 班级博客 这个作业的要求在哪里 作业要求 我在这个课程的目标是 学习掌握软件工程的相关知识 这个作业在哪个具体方面帮我实现目标 通过对具体软件案例的分析学习软件工程 ...
- 【评分】集美大学软件工程1413班工程项目管理个人作业2——APP案例分析
[评分]个人作业2--APP案例分析 作业要求 作业地址及完成情况 博文要求 通过分析你选中的产品,结合阅读<构建之法>,写一篇随笔,包含下述三个环节的所有要求. 第一部分 调研, 评测 ...
- 第四次作业——关于石墨文档(Android)客户端的案例分析
关于石墨文档(Android)客户端的案例分析 作业地址:[https://edu.cnblogs.com/campus/nenu/2016CS/homework/2505] 第一部分调研,评测 1. ...
随机推荐
- Web性能优化之瘦身秘笈
Web 传输的内容当然是越少越好,最近一段时间的工作一直致力于 Web 性能优化,这是我近期使用过的一些缩减 Web 体积的手段 这些手段主要是为了减少 Web 传输的内容大小,只有干货 CSS 删除 ...
- Nginx配置翻译
Windows 格式 server { listen 82; server_name localhost; root "D:/testfile/"; location / { in ...
- DES加密详解
目录 1 根据输入的秘钥得到16个子秘钥 1.1 大致流程 1.2 利用PC-1从K_0中挑出K_1 1.3 利用PC-2从K_1中挑出16个子秘钥 2 利用16个子秘钥对明文进行加密 2.1 大致流 ...
- CCF(棋局评估)博弈论+对抗搜索+DFS
201803-4 棋局评估 这题主要使用对抗搜索,也就是每一步寻找可以下棋的位置,通过在这一步下棋看最后会取的什么样的分数. #include<iostream> #include< ...
- hive学习笔记之一:基本数据类型
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Apache配置 1. 默认虚拟主机
编辑httpd.conf搜索httpd-vhosts,去掉#号 # vi /usr/local/apache2.4/conf/httpd.conf Include conf/extra/httpd-v ...
- incubator-dolphinscheduler 如何在不写任何新代码的情况下,能快速接入到prometheus和grafana中进行监控
一.prometheus和grafana 简介 prometheus是由谷歌研发的一款开源的监控软件,目前已经贡献给了apache 基金会托管. 监控通常分为白盒监控和黑盒监控之分. 白盒监控:通过监 ...
- 《Selenium自动化测试实战:基于Python》之 Python与Selenium环境的搭建
第2章 Python与Selenium环境的搭建 购买链接: 京东:https://item.jd.com/13123910.html 当当:http://product.dangdang.co ...
- Android Studio 之 ImageView 学习笔记
•参考资料 [1]:菜鸟教程 [2]:bilibili视频教程 •src和blackground的区别 background通常指的都是背景,而src指的是内容 当使用 src 填入图片时,是按照图片 ...
- Androi Studio 之 LinearLayout
LinearLayout •常用属性 •注意事项 当 android:orientation="vertical" 时, 只有水平方向的设置才起作用,垂直方向的设置不起作用 a ...