这个作业属于哪个课程 | 软件工程实践-w班 |
---|---|
这个作业要求在哪里 | 软件工程实践——软件测评作业 |
这个作业的目标 | 调研产品 分析BUG 产品规划 |
其他参考文献 | 《构建之法》 |
软件工程 案例分析作业——邹欣老师
文章目录
- Part I:调研与评测
- 产品一:[InsCode](https://inscode.csdn.net/)
- 1. 使用体验
- 1.1 介绍和使用软件
- 1.2 优缺点分析
- 1.3 改进意见
- 2. BUG描述
- 3. 结论
- 产品二:[Product Hunt](https://www.producthunt.com/)
- 1. 使用体验
- 1.1 介绍和使用软件
- 1.2 优缺点分析
- 1.3 改进意见
- 2. BUG描述
- 3. 结论
- 产品三:[IT屋](https://www.it1352.com/OnLineTools/Index)
- 1. 使用体验
- 1.1 介绍和使用软件
- 1.2 优缺点分析
- 1.3 改进意见
- 2. BUG描述
- 2.1 测试环境
- 2.2 Bug复现
- 2.3 具体情况
- 2.4 分析
- 3. 结论
- Part II:分析
- 开发时间估计
- 同类产品对比排名
- 软件工程方面的建议
- BUG存在的原因分析
- 其他问题
- Part III:建议与规划
- 市场概况
- 市场现状
- 市场与产品生态
- 产品规划
- 新增功能
- NABCD分析
- 角色配置
- 16个周期每周的详细规划。
Part I:调研与评测
Ps:Bug严重程度分级:
等级 | 严重程度 |
---|---|
Blocker | 存在系统崩溃、死机、死循环,主要功能丧失等问题 |
Critical | 系统主要功能部分丧失,存在安全问题,程序自动退出等问题 |
Major | 功能没有完全实现但是不影响使用 |
Minor | 界面、性能缺陷,不影响操作功能的执行 |
产品一:InsCode
1. 使用体验
1.1 介绍和使用软件
InsCode 是一个在线代码运行平台,可以在线上运行代码,并且支持多种语言,同时还可以在线修改和提交代码,支持发布和分享项目
-
Cloud IDE
- 提供项目模板,在创建新项目时可以选择模板进行创作,支持多种主流前端编程语言。
- 左侧有项目目录,系统自动配置环境,点击上方Run按钮即可运行,编译完成后可以在右侧切换终端/预览查看输出或者效果。
- 点击左上角的图标,可以选择发布作品,填写完项目的信息后就可以发布到社区中啦!
- 发布完项目需要进行审核。
- 提供项目模板,在创建新项目时可以选择模板进行创作,支持多种主流前端编程语言。
-
社区
- 社区中有许多活跃用户, 他们发布的作品将出现在这里,可以选择查看热门作品,也可以查看最新作品。右边的热门标签列表可以给用户一些参考,不够热门的标签没办法通过点击进行查找(已发布的作品标签栏下的也点击不了)。
- 点击其中一个体验看看,这里我选择了一个游戏。点击Run键,游戏就开始运行了,也可以点击项目文件查看,可以点击用网页打开。
- 往下拉是评论区,只能发送纯文本。我发现这里发布评论不需要进行审核,可能会有一些恶意评论无法过滤。但是基本上用户还是挺活跃友善的,都愿意留下自己的宝贵意见。
- 打开另外一个头像生成器的项目,发现用网页打开的效果要好多了。
- 社区中有许多活跃用户, 他们发布的作品将出现在这里,可以选择查看热门作品,也可以查看最新作品。右边的热门标签列表可以给用户一些参考,不够热门的标签没办法通过点击进行查找(已发布的作品标签栏下的也点击不了)。
-
GitCode代码托管
-
点开gitcode才发现刚刚发布的项目已经同步到我的gitcode仓库中了,还是挺自动化的。之后在项目里做改动的话,也会马上同步到gitcode中。
-
其实也可以在创建项目时直接选择从GitCode中导入已有的项目,不过私有仓库(也就是不公开的仓库)是无法导入的。
-
-
其他
- 好奇点击了右下角对的问卷按钮,发现是一个反馈界面,只能输入文本,个人认为能附上图片的话可以帮助开发团队理解用户的需求。
- 搜索框
按下这两个按键,就可以定位到左边的文本框中开始输入了,挺人性化的设置。
- 好奇点击了右下角对的问卷按钮,发现是一个反馈界面,只能输入文本,个人认为能附上图片的话可以帮助开发团队理解用户的需求。
1.2 优缺点分析
优点 | 缺点 | |
---|---|---|
数据量 | 提供了很多模板,对用户快速创建项目有很大帮助; 社区活跃度高 | 项目编辑页和社区作品页没有后退键,进入后无法点击返回上一页,无法定位回刚刚浏览的位置 |
界面 | 界面美观简约,按键icon一目了然; 发布项目后会有彩炮动画庆祝 | 用户发布的项目体验页面的ui较为简单 |
功能 | 云端IDE、模板、社区的功能完整度很高; 同步仓库实用性强 | 用户评论没有设置审核; 编译器没有debug功能 |
准确度 | 大多数用户分享的项目都是可以使用的,不同项目的标签设置也比较精准 | 一些引用没有标注数据源 |
1.3 改进意见
- 建议增加对用户评论的审核。
- 建议增加对社区中贴子数的统计。
- 可以增加用户发布作品时对作品描述的丰富度,比如内置一个md编辑器或富文本编辑器,让用户可以更详细地制作作品介绍。
- 建议在社区中增加问答区,便于用户发布除了项目作品之外的心得或是疑问。
- 建议在上方搜索框增加智能推荐,可以根据用户输入的关键字智能推荐可能的标签、作品。
- 建议增加IDE和社区的后退键,方便用户返回上一页。
2. BUG描述
这个软件从各个方面来说都比较成熟完善,目前并没有发现较为明显的功能Bug。
3. 结论
d) 好,不错
产品二:Product Hunt
1. 使用体验
1.1 介绍和使用软件
Product Hunt 是一个供用户分享和发现产品的网站,很多独立开发者 / 设计师会选择将产品发布到这里进行推广,用户可以投票给自己觉得好用的产品。
-
Products
- 可以在导航栏Products项的下拉框中选择感兴趣的标签(右侧),这里会提供前十个热门标签,也可以点击查询更多标签。
*点击AI标签,进入该话题下的产品列表,可以直接看到最热门的几款产品。向下滑动,可以看其他热门产品,也可以选择查看最佳、最多人使用、最新产品。产品的评价等级、关注数都显示出来,便于用户选择。
- 点击一个感兴趣的产品,将跳转至该产品的详情介绍页。
overview
目录下可以看到许多关于这个软件的介绍,奖项展示、操作gif等。侧边栏提供了该软件的官网链接、Appstore的下载链接等,非常贴心。
点击I use this
后,系统会将这个软件添加到用户的栈中,表示用户使用过该软件。 - 点击
review
,可以查看评论页面,可以为该应用打分。往下拉可以看到其他用户的评分和反馈意见。
- 点击
Launches
,可以查看该应用的其他发布版本(个人理解)。
- 可以在导航栏Products项的下拉框中选择感兴趣的标签(右侧),这里会提供前十个热门标签,也可以点击查询更多标签。
-
Community社区
这里发布了很多有用的信息,可以在discussion模块下进行讨论,还可以在stories模块下获取技术相关的新闻、访谈记录和一些tips,在Changelog有一些开发团队发布的笔记…这里主要体验了前两个模块的功能。-
点击
Discussion
可以查看其他人发起的讨论,也可以发起新的讨论。可以顶顶你觉得有用、有意思的讨论话题,让更多人看到并参与进来。
可以点击某一条评论查看其内容,看看大家的发言~也可以发布自己的评论,遇到不合适的发言还可以点击举报!
-
点击
Stories
,可以看到以下界面,用户可以挑选感兴趣的标题查询对应信息。这些内容是由开发团队整理好的,有许多有用的小技巧。
-
-
Marketplace
这是一个专门展示产品优惠券的页面,用户可以在这里发现一些产品的优惠,根据介绍中的内容进行使用,就可以使用这些优惠啦(优惠力度还挺大的,可以狠狠薅羊毛了),这也可以对产品起到一些宣传作用。
-
Jobs
这个模块主要是为用户和产品的开发团队之间架起沟通的桥梁——产品商在发布产品的同时,也可以发布一些空缺的职位招聘信息;喜爱这个产品、认同其开发理念的用户,可以试着投投简历,说不定就能成功应聘,进入这个开发团队。如果你是一个开发者的话,也可以在上面发布招聘信息。
右侧提供一个复选框和下拉框,可以筛选符合自己的条件,更精准找到心仪的工作。这边发现Marketing、Sales和Customer Support条件下都没有岗位发布,感觉可以对这些过滤条件的结果条目数量做一个统计并展示。
1.2 优缺点分析
优点 | 缺点 | |
---|---|---|
数据量 | 发布了海量产品信息、产品优惠、招聘信息; 社区活跃度高 | 工作、产品列表没有设置分页,也没有统计数量 |
界面 | UI生动有趣,布局也很别致,在页面丢失的时候会有萌宠照片展示 用很多emoji做页面指引,增加了互动性 | 有一些div的背景色和字体颜色,没有分割线,容易和正文内容混淆 |
功能 | 功能完整度高,实用性强,对产品开发者和用户都很友好 | Launch archive中只能按日期查看某一天最受喜爱的产品,无法统计一个周期内的 |
准确度 | 产品展示操作gif和用户评分,可以展示较真实的内容 内容都有标注数据源 | ~ |
1.3 改进意见
- 对数量较多的产品页、优惠页、职位页等增加回退功能,方便用户定位回刚刚浏览到的位置。
- 一些功能性界面元素,比如下拉框,筛选按钮等可以设置成比较明显的样式,避免被忽略。
- 可以统计一些标签下item的数量,比如某一个岗位的招聘信息数量,某标签下产品的数量等。
- 针对查看某一天最受欢迎的产品这一功能,可以增加时间段,让用户可以查看某一周、某一月甚至某一年的区间,因为单日的数据可能变化幅度比较大。
2. BUG描述
这个软件的Bug也没有发现~
3. 结论
d) 好,不错
产品三:IT屋
1. 使用体验
1.1 介绍和使用软件
IT屋主要提供了一些线上的前后端工具,基于这些语言/工具/技术框架,提供了适合新手查看的教程。
- 在线工具
分为编译工具、前端工具、数据库工具三种,用户不用登录就能使用。
尝试使用C++编译器,一打开就是代码区和输出区,可以直接在下拉框里更换语言很方便。同时还提供了将该工具嵌入到自己网站上的API,非常非常贴心。不过没有可以输入样例的地方,感觉对我来说有点鸡肋。
- 菜鸟教程
- 点开就是一个大写加粗的广告,这里根据不同开发需求做了一个大致的分类,每个分类下有具体的语言/框架的教程,超出八个教程的需要点击
更多
跳转详情页。页面上方的绿色框框对不同分类的标签做了一个统计展示,可以直接点击定位到对应的教程类别页面。 - 右上角的搜索框搜索后发现页面跳转到问答区,应该是没有针对教程和工具做搜索框的功能。
- 点击进入一个教程,左边是目录,右边的内容还是挺靠谱的,但是排版有点草率,阅读起来有点障碍。
- 点开就是一个大写加粗的广告,这里根据不同开发需求做了一个大致的分类,每个分类下有具体的语言/框架的教程,超出八个教程的需要点击
- 问答库
- 问答库中的文章是整理了来自外网的问题和回答,根据语言分成了八个大类,感觉有点不够细致。
- 问答库的文章翻译有点太机翻了,对阅读影响很大,排版也有点问题。黄底红色加粗的广告链接猝不及防地出现在正文内容中,有点出戏。右侧侧边栏中展示了几篇该话题目录下的最新文章标题,但是没有调整好间距,看起来堆在一起,不好区分。
- 问答库中的文章是整理了来自外网的问题和回答,根据语言分成了八个大类,感觉有点不够细致。
1.2 优缺点分析
优点 | 缺点 | |
---|---|---|
数据量 | 提供海量教程,涵盖的编程语言、技术工具较多 | 每个教程的简介直接用教程名替代,不能给用户较多的信息 |
界面 | 提供导航栏,UI简洁 | 界面样式较少,排版很混乱,不够精美 |
功能 | 功能对编程新手而言简单易上手 | 编译工具没有设置程序输入,实用性不高 功能较为单一 |
准确度 | 教程分类精准,错别字较少 | 问答文章的中英文翻译不准确,影响用户理解 问答库下拉框只提供了八个固定的大类,无法选择特定标签 |
1.3 改进意见
- 建议在编译工具中增加输入栏,使用户可以编写一些有输入的程序,也便于进行代码调试;
- 在首页和菜鸟教程页,适当增加教程的简介和描述,让用户一目了然;
- 建议增加问答库文章的标签搜索功能,使用户能够在搜索框中可以直接搜索标签,或。
- 改善一下教程、文章各个模块内容的排版,增加可读性;
2. BUG描述
2.1 测试环境
- 操作系统:Win 11
- 浏览器:Chrome v110.0.5481.178
- 时间:任何时间
2.2 Bug复现
可复现性: 必然发生
复现步骤:
- 打开问答库
- 点击任意一篇文章,记录该文章被查看的次数
- 退出当前页面
- 重新点击查看同一篇文章
- 可以发现文章的被查看次数没有变化,并没有真正记录查看次数
2.3 具体情况
网站没有实现记录每篇文章被查看的次数,无论查看几次,文章标题下方的查看标签值始终不会增加。
开发者在标题下方设置了该标签用于统计文章的查看次数,但该功能Bug下文章查看次数始终不会变化,这将对用户带来一定的误导。
2.4 分析
成因分析
文章查看次数未能按预期设想的随用户查看文章而自动增加,原因可能有以下两种:
* 开发人员设置的查看次数边界值问题,当文章超过该边界值后未能继续统计;
* 开发人员在进行版本更新时,不小心删除了修改该标签值的相关代码,导致之后的文章查看次数不再变化
严重性
- 系统功能:Major
- 安全性:Minor
- 用户体验:Critical
改进建议
这个bug的存在并不会影响用户使用查看文章这一功能,但是会使用户对文章的可信度、准确度的判断造成影响。如果用户发现这一点,可能会认为该软件的专业度不高,有较差的体验。
3. 结论
综合评价:b)不推荐
Part II:分析
开发时间估计
- InsCode:
9个月
- Product Hunt:
9个月
- IT屋:
3个月
同类产品对比排名
- IT屋这个软件整体还是比较粗糙的,没有设置用户登录体系,没有提供后端数据支撑,也没有储存代码的功能。相比之下,InsCode的功能更为额丰富,用户互动体验良好;ProductHunt的UI则更丰富有趣,推荐的产品也都不错。综合下来还是更推荐ProductHunt。
指标 | Rank |
---|---|
界面美观程度 | ProductHunt>InsCode>IT屋 |
功能完善度 | InsCode≈ProductHunt>IT屋 |
用户活跃度 | ProductHunt≈InsCode>IT屋 |
软件工程方面的建议
- InsCode
- 开发团队可以增加一些智能化的功能,使平台的使用体验更加友好。
- ProductHunt
- 这个软件还是很完善的,建议可以增加Language切换功能,让不熟悉英语的用户可以更无障碍地阅读理解。
- IT屋
- 开发团队需要重新进行软件测试,排查出尽可能多的功能Bug并进行修改更新;
- 其次,可以增加每个功能模块的子功能,让这些功能变得不那么“鸡肋”,比如增加编译器的输入,提供代码托管等。
- 建议更换文章的翻译,使用人工翻译,提高准确性。
BUG存在的原因分析
Q: 你在第一部分发现的bug,为何软件团队不能在发布前修复?他们是不知道,还是有意不修复?你觉得是什么原因?
我认为原因有二,一是开发人员在设计了这个功能后忘记实现了;二是软件审查人员没有认真仔细地测试每一个功能,忽略了细节错误。
其他问题
Q: 思考团队在哪一个层次还有问题? 为何职业的软件团队还有这些问题?这个软件团队在软件工程方面还可以如何提高?
个人认为IT屋在做市场调查时不够全面,对用户的需求分析不够到位,因此提供的功能比较简单,也没有仔细校准翻译内容。团队前端可以重新修改一下软件的UI,让界面更加精美一些。建议团队增设用户反馈的通道,不要闭门造车。
至于另外两个产品的团队,我觉得都是非常成熟的,可以再多接收用户的回馈,更新一些新的功能。
Part III:建议与规划
市场概况
- 市场有多大?
- 对于前文提及的三款产品,使用人员集中在IT从业人员和计算机爱好者中。
- 2022年的数据显示CSDN注册会员超过3100万,其中活跃用户超过1000万;国家部门联合调查的专业领域人才需求状况表明,我国计算机应用专业人才的需求每年将增加100万人左右。这意味着我国软件开发相关人员的数量至少有一千万,并将持续上升。
- 因此,这三款软件在各自的功能领域都有着比较广阔的市场。
- 直接的用户有多少?潜在的用户又有多少?
在这里插入代码片
根据CSDN的统计数据,活跃用户中30%是学生,60%则是一线开发相关人员,故云端集成编译器的直接用户大概有一千万人,潜在用户约为五百万人。
市场现状
- 目前市场上有什么样的产品了?
Glitch,codeanywhere,Eclipse Che等
- 上述产品的定位、优势与劣势在哪里?
定位:这些产品都是面向网页端的用户,可以随时打开使用,用户无需下载客户端。
优势 | 劣势 | |
---|---|---|
InsCode | 随时随地都可以写代码,并能保存在云端 | 用户黏性不够高 |
ProductHunt | 整体UI设计精美,产品范围广 | 对不爱发掘新产品的人来说功能比较鸡肋,很多软件在应用商店或是其他社交平台上都有评分和讨论区可以取代 |
IT屋 | 支持的语言和工具很多,配套教程可以让用户边学边实践 | 功能不够完善(对需要使用这些工具的人来说有点鸡肋),UI不够高级 |
- 上述产品之间呈现什么样的关系,哪些为竞品关系?以及竞争中的各方态势如何?
上述三个产品的功能针对的群体不同,提供的功能也不互相重叠,个人感觉并不属于竞品关系。其中InsCode是CSDN旗下的产品,所以用户基础还是比较庞大的,主要集中在简中地区。ProductHunt主要市场在国外,对于喜欢单一功能产品的老外来说应该是不错的选择(国内更喜欢集成化平台)。InsCode的功能简单,Bug多,在市场上比较没有竞争力。
- 这个领域正处于 (萌芽 / 成长 / 风口 / 平台 / 下降)阶段?
风口。虽然IT行业多多少少有点饱和了,但是这更说明计算机技术从业人员数量的庞大,随着ChatGPT的诞生引起更多IT爱好者的讨论,基于AI技术打造的IT社交/工具平台势必会吸引更多的用户。
市场与产品生态
- 这个产品的核心用户群是什么样的人?典型用户是什么样的?学历,年龄,专业,爱好,收入,表面需求,潜在需求都是什么?
核心用户群:IT从业人员、IT爱好者、计算机专业学生
典型用户1
特征 | 内容 |
---|---|
学历 | 本科/研究生在读 |
年龄 | 18~25 |
专业 | 计算机相关专业 |
爱好 | coding |
收入 | 无 |
表面需求 | 在学习过程中遇到难题,找寻解答 |
潜在需求 | 自学课程之外的实用知识、技术 |
典型用户2
特征 | 内容 |
---|---|
学历 | 本科、研究生毕业(实习版) |
年龄 | 23~27 |
专业 | 计算机相关专业 |
爱好 | coding |
收入 | 3k~4k/月 |
表面需求 | 开发过程中遇到难题,想要寻找他人分享的类似经历、问题的解决方法 在线吐槽自己的mentor(bushi) |
潜在需求 | 在进一步积累自身经验后,反过来分享自己解决问题的经验 |
典型用户3
特征 | 内容 |
---|---|
学历 | 本科、研究生毕业(转正版) |
年龄 | 23~32 |
专业 | 计算机相关专业 |
爱好 | coding |
收入 | 9.5k~36k/月 |
表面需求 | 尝试自行开发一些小的产品,希望发布后得到他人的建议 |
潜在需求 | 产品上线后利用平台做推广 |
- 产品的用户群体之间是否存在一定的关系?是否有利用其相互作用二次构成特定用户生态的可能性?
是的,存在一定的关系。学生用户在学习时期利用软件进行学习,工作后可以反过来对其他的学生用户进行指导。
- 产品的子产品,以及其他相关产品之间是否存在一定的关系?是否有利用各个产品特性之间的相互关系二次构成产品生态的可能性?
是的,存在一定的关系。产品的子产品之间可以同步发挥功能,给用户带来最大化的便捷,比如
CSDN博客
和GitCode
都是CSDN
的子产品,将两款产品的博客功能和代码仓库功能的思想结合起来,就得到了InsCode
这款既有社区功能、又能同步Git代码仓库的云IDE软件,给用户带来了非常丝滑的体验。
产品规划
新增功能
新增功能:我认为可以在
InsCode
中增加用户的贡献度计算机制,比如对发布模板的用户增加其贡献度,每当该模板被使用一次就继续增加贡献值…贡献度可以参考知乎等平台的机制,可以进行变现或者是站内会员天数兑换。
NABCD分析
NABCD | 内容 |
---|---|
N | 平台的一个优势就是提供开发模板,故平台上的优质模板、项目越多越好,需要用户多多创作 |
A | 后端开发人员新增功能板块 |
B | 贡献度机制下可以刺激用户发布更多好用的模板,为平台吸引更多用户 |
C | 和其他网站的贡献度机制有一定竞争,可以制定用户友好的反馈机制 |
D | 可以在ProductHunt等产品推荐网站中宣传本软件和新机制 |
角色配置
- PM:1人(就是我)
- 后端开发:2人
- 前端开发:2人
- 美工:1人
- 测试:1人
16个周期每周的详细规划。
Week | 内容 |
---|---|
1 | 需求分析,进行市场调研 |
2 | 制定项目计划书 |
3~6 | 前端进行原型开发,后端进行数据库设计,美工进行页面设计 |
4~9 | 前后端根据计划书开发相应的功能 |
10 | 前后端就完成的功能进行交接,后端提供接口给前端以获取数据,根据前端渲染数据的反馈进行调整 |
11~13 | 前端继续完善页面的细节调整,测试人员进行测试 |
14~15 | 部署产品并进行软件内测 |
16 | 产品正式发布并接收来自用户的反馈 |