作业基本信息
这个作业属于哪个课程 | 2023年福大-软件工程;软件工程实践-W班 |
---|---|
这个作业要求在哪里 | 软件工程实践——软件评测 |
这个作业的目标 | 1.调研、测评三个网站 2.分析软件优劣和产品质量 3.给出产品建议和规划 4.撰写博客 |
其他参考文献 | 于文末 |
第一部分 调研,评测
BUG量化标准
程度 | 描述 |
---|---|
Blocker(崩溃) | 造成系统崩溃、死机、死循环,导致数据库数据丢失,与数据库连接错误,主要功能丧失,基本模块缺失等问题 |
Critical(严重) | 功能设计与需求严重不符,模块无法启动或调用,程序重启、自动退出,关联程序间调用冲突,安全问题、稳定性等 |
Major(一般) | 功能没有完全实现但是不影响使用,功能菜单存在缺陷但不会影响系统稳定性 |
MInor(次要) | 界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案等 |
1.InsCode
1.1 体验
介绍:
InsCode是一个无需安装的编程、协作和分享社区。InsCode支持多种主流语言,用户可以在InsCode导入或者创建新项目,并且在社区发布和分享
使用体验:
首页: 图为登陆前的首页,点击
社区
和模板中心
都可以免登录进入,但是点击博客
会弹出登录界面
注册/登录界面的弹窗:InsCode的账号和CSDN是通用的
登录成功后的界面: 上方导航栏,有返回首页的图标、搜索框、通知图标、个人头像和创作的按钮。主体左侧是侧边导航,有最主要的功能,右侧从上到下分别是
我的项目
、热门
、关注
和最新项目
创建项目: InsCode 导入项目的方式有两种,一种是从平台提供的模板导入,另一种是导入Github 的项目。点击选择模板后,可以选择自己需要的项目模板,下面我以VueJS模板为例,模板右侧的标题、描述、项目标识和可见性,分别对应了项目创建之后 在 gitcode 的项目中的名称、描述、URL和项目可见性。创建之后,就会在对应的 gitcode 中创建一个对应的项目,而这之后的操作都是基于这个项目的
在线演示和修改: 左侧的
.inscode
和inscode.nix
是InsCode 的项目配置文件,记录对应的入口文件等信息。点击页面上的Run按钮,项目就会执行,如果是web项目就会自动在页面右侧打开网页浏览器。可以在页面上直接对代码修改,然后运行程序,修改的内容会自动提交到对应在 gitcode 的项目中
发布: 如果想要分享项目让更多人看见,可以发布作品到社区,在社区页面,你可以看到社区精选的项目,可以直接在项目上运行,也可以 Fork 下来学习
我的项目: 和主页一样的顶部导航和左侧导航,主体上方可以修改封面和个人资料。内容有三种分类,分别是
项目
、动态
和星标
,其中项目
中有活跃
和创建
两种排序,分别基于最近使用时间和创建时间
模板中心: 布局也是类似于我的项目,模板的分类较全,但是大部分模板是由InsCode官方提供的,用户创建的比较少
社区: 在社区可以浏览其她用户发布的项目,按照热门或者最新来排序。右侧可以选择热门标签,快速定位自己感兴趣的类别
其她: 下方提供了两个外链,会跳转到
云服务
和博客
优缺点分析
- 优点:
- 在线编译,不需要配置环境,快速执行代码、所见即所得
- CSDN旗下的产品,背靠大公司,有天然的用户流量优势
- 账号和CSDN通用,项目代码自动保存在GitCode上
- 总体界面简洁,UI美观,用户体验较为友好
- 缺点:
- 网站较新,用户量和优质项目较少
- 项目审核时间比较长
- 界面上的细节不够完善
改进意见:
- 加大宣传力度,从CSDN主页引流,或举办奖励丰富的活动鼓励创作者入驻InsCode
- 改善界面和使用功能上的BUG
1.2 BUG
测试环境
- 电脑型号: Legion Y7000 2020
- 处理器: Intel® Core™ i7-10750H CPU @ 2.60GHz 2.59 GHz
- 机带RAM: 16.0GB
- 硬盘容量: 512G
- 屏幕尺寸: 15.6英寸
- WIndows 规格:Windows 11家庭中文版
BUG1 账号登录、退出不同步
- 评级: Major,功能没有完全实现但是不影响使用,存在缺陷但不会影响系统稳定性
- 可复现性: 100%复现
- 具体描述: InsCode账号的登录、退出与CSDN同步,但是与主页的博客不同步,需要手动退出和登录。反之InsCode博客和CSDN的登录和退出,InsCode能保持同步
- 复现步骤:
- BUG分析:
- 后端的登录功能实现逻辑没有将InsCode和博客同步
- 严重性不高,对系统稳定性基本没有影响,但是有些影响用户体验
- 预期及改进建议:
- 应设计为,InsCode、CSDN和博客任意一边登录/退出另外两方都能同步登录/退出
- 建议使用django 实现同步登登录和退出
以登录InsCode再跳转到博客为例,如下图显示,博客还需要手动进行登录
BUG2 组件动效图标跳动
- 评级: Minor,界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案
- 可复现性: 100%复现
- 具体描述: 全站的许多组件都用的相同的向下展开动效,但是都有着相同的问题,即内图标都会错位地跳动一下
- 复现展示: 以首页点击个人头像、我的项目点击项目更多按钮为例
- BUG分析:
- 前端的动效和点击事件展示的组件没有对齐,导致跳动
- 对系统稳定性和功能使用没有影响,但是在细节上不够完美
- 预期和改进建议:
- 能实现丝滑的动效
BUG3 封面无法裁剪
- 评级: Minor,界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案
- 可复现性: 100%复现
- 具体描述: 选择封面后没有裁剪功能,只能显示图片的中部,打开开发者模式选择封面元素之后发现还是完整的图片,没有进行裁剪,只是显示了中间部分
- 复现展示:
- BUG分析:
- 之前是用别的应用时也有遇到过类似情况,可能是没有设计图片裁剪的功能
- 在用户使用上有些影响,需要先自行处理图片才能展示出比较好的效果
- 建议:
- 添加一个图片裁剪功能
1.3 结论
InsCode整体还是十分优秀的,虽然作为一个新鲜的社区用户还不是很多,但是国内类似的网站暂时没有很出名的,所以InsCode的市场前景还是很好的。尽管有一些小BUG,但是瑕不掩瑜,InsCode很适合与CSDN配合使用,将需要展示的代码片段放到 InsCode 中,做成可执行的demo,或者在平台初期不卷的情况下在 InsCode 平台的社区发布一些优质项目,还可以在需要项目演示的时候,临时上传为私有项目,可以不纠结环境搭建,直接演示项目。
类别 | 评分 | |
---|---|---|
功能 | 核心功能 | 17 |
细节 | 有什么为用户考虑的细节? | 15 |
用户体验 | 当用户完成功能时,不干扰用户 | 14 |
辅助功能 | 界面美观以及简介,逻辑清晰 | 16 |
软件的效能 | 占用内存, 启动速度, 内存泄漏情况 | 18 |
总分 | 满分一百,每项二十分 | 80 |
2.IT屋
2.1 体验
介绍:
IT屋-程序员软件开发技术分享社区是一个面向程序员、计算机爱好者技术分享社区,为程序员、计算机爱好者提供百万权威知识库检索、在线开发工具、技术教程库、视频教程下载等功能,以便快速定位并解决问题,提升开发技术水平和提高工作效率。
功能体验:
主要内容为首页
、问答库
、菜鸟教程
和在线工具
- 首页: 从上到下是各种语言和技术的菜鸟教程,最新回答和热门标签
- 问答库: 不能直接点击,通过下拉菜单选择特定问答区
- 菜鸟教程: 上方是一个巨大的广告和分类区域,下方也是按顺序排列了不同语言的教程
- 在线工具: 内容非常丰富的一个页面,又进行了三种分类
优缺点分析
- 优点
- 内容丰富
- 功能专一于知识整合,搜索和分类比较便利
- 缺点
-
广告太多,一个页面甚至能看到三个广告
- -
没有实时更新问答库,点进多个问答库发现都是同一天上传的,因为没有用户注册登录功能,所以问答库是由网站维护人员发布的
-
分类虽然全,但是很多内容都是空白的,如下图的UI设计
-
视频教程分类下虽然有很多课程信息,但是点进详情页却没有内容,仅有目录
-
2.2 BUG
BUG1 导航栏问答库下拉菜单没有对齐
- 评级: Minor,界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案
- 可复现性: 100%复现
- 具体描述: 下拉菜单的二级菜单在一级菜单的偏右侧
- 复现展示:
- BUG分析: 前端代码二级菜单位置没有调整对齐
- 改进建议: 重新美化UI
BUG2 在线工具导航栏点击后无高亮
- 评级: Minor,界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案
- 可复现性: 100%复现
- 具体描述: 下拉菜单的二级菜单在一级菜单的偏右侧
- 复现展示: 如下图,在已经选择了编译工具的情况下,高亮仍然是在全部工具的位置
- BUG分析: 没有实现该功能,这样会降低用户体验,没法一眼就看出处在什么分类下
- 改进建议: 使用TAB切换组件
2.3 结论
IT屋虽然内容很丰富,但是不太注重用户体验和界面的美观。这让用户在同等的学习资源网站下很容易放弃使用IT屋,选择使用感更好的其他网站,替代性较高。但在想要系统地学习某个领域的知识时,使用IT屋进行了解是不错的选择。由于广告实在太多了,不到迫不得已,我是不会使用IT屋的。
类别 | 评分 | |
---|---|---|
功能 | 核心功能 | 15 |
细节 | 有什么为用户考虑的细节? | 12 |
用户体验 | 当用户完成功能时,不干扰用户 | 12 |
辅助功能 | 界面美观以及简介,逻辑清晰 | 15 |
软件的效能 | 占用内存, 启动速度, 内存泄漏情况 | 15 |
总分 | 满分一百,每项二十分 | 69 |
3.ideone.com
3.1 体验
介绍:
ideone是一个在线的编译和调试工具,你可以在线编译代码并执行,其所支持的编程语言高达80多种。
使用体验:
由于ideone功能十分凝练,专注于在线编译,所以功能就是在线编译和在线调试。主体就是中间的编码区,下方是简单的使用引导,右侧是广告
可能是因为专业所以强大,ideone支持的语言很多,还是很便利的
rencent codes: 能看到其她用户提交的公开的的成功代码,还挺神奇的
优缺点分析:
- 优点:
- 支持的语言种类多
- 在线编译很便利,打开就能用
- 缺点:
- 连接不稳定,可能是服务器在国外,有的时候要加载很久
- 有些限制功能要登陆才能使用
3.2 BUG
适应性不佳
- 评级: Minor,界面、性能缺陷,建议类问题,不影响操作功能的执行,可以优化性能的方案
- 可复现性: 100%复现
- 具体描述: 缩小页面时,得使用滑动条来滑动页面
- 复现展示:
3.3 结论
作为一个在线编译及调试网站工具,很推荐,因为很好地实现了这两个功能且可供选择的语言很多,基本使用一个网站就足够了。但是在语言上如果能有中文的选择,相信用户会更多。
类别 | 评分 | |
---|---|---|
功能 | 核心功能 | 18 |
细节 | 有什么为用户考虑的细节? | 17 |
用户体验 | 当用户完成功能时,不干扰用户 | 17 |
辅助功能 | 界面美观以及简介,逻辑清晰 | 17 |
软件的效能 | 占用内存, 启动速度, 内存泄漏情况 | 17 |
总分 | 满分一百,每项二十分 | 86 |
用户采访
背景介绍: 采访对象是我的高中同学,就读于计算机专业,对计算机十分热爱
采访内容:
第二部分 分析
开发时间估计
以软工实践的经历为依据,开发软件主要有需求分析与设计、原型设计、程序编码、软件测试、运行维护这五个环节。
- InsCode:需要一个前后台分离的网站,估计需要6-8个月的开发时间
- IT屋:主要是内容的搜集,网站的搭建较为简单,估计需要6个月的开发时间
- Ideone.com:需要内嵌编译器,功能比较少,估计需要3个月的开发时间
同类产品对比排名
- InsCode和Ideone:
从总体来看二者是无法进行同类型比较的,但是可以对比在线编译这个功能
InsCode的优势是提供了现成的模板,开源很方便,ideone的语言选择很丰富,综合对比还是insCode更胜一筹 - InsCode: 国内类似的网站基本没有,但是国外的Product Hunt在用户数量和优质项目上都优于InsCode,所以估计InsCode在同性质的产品中能排第三
- Ideone: 在线编译网站搜索引擎一搜一大把,并且Ideone并没有什么差异性的功能,但是Ideone的优势在于支持的语言很多,所以在同类产品中预计排名前十
- IT屋: 相类似的网站过多,且比IT屋好用的且知名的网站也很多,如菜鸟教程、W3school等,估计在同类产品中排名前三十
软件工程方面的建议
- 建议在前期的需求分析与设计还有后期的测试这两个环节要投入更多的时间与精力
- 需求分析要调研国内外市场和用户需求,这样就能确定产品的具体功能,避免缺少了关键功能或者设计了不必要的功能,前期多投入的时间也减少了后期返工的成本。
- 测试投入更多的时间就能减少很多上述提到的界面以及功能上的BUG,如果能模拟用户深度地体验产品,配合极端测试,相信能够找出许多BUG
BUG存在的原因分析
此部分体现于第一部分的BUG分析
第三部分 建议和规划
市场概况
- 会使用上述网站的用户基本分为IT从业者和希望从事IT行业的学生
- IT从业者的数目在2021年以及达到了705万人
- 从2019届毕业生期望行业分布能看出IT市场的庞大
- 从2020-2021年全国计算机类专业招生计划数增长情况体现了每年报考计算机专业的学生还在增加
市场现状
目前市场上已有产品
InsCode: 同类产品Product Hunt
IT屋: 菜鸟教程、w3school、 IT猿网、CSDN
Ideone.com: codepad、comeaucomputing、compilr
上述产品的定位、优势与劣势
InsCode:
- 定位是一个可以在线创建,共享,交流的友好社区
- 优势是拥有csdn大规模的用户基数,同时国内没有强劲的对手,竞品Product Hunt为国外网站,熟知的人少
- 劣势是网站刚上线不久,用户基数较小
IT屋:
- 官方的定位是面向程序员的知识分享社区,但是我认为应该是一个知识检索库,因为没有用户注册功能,就没法形成一个良好的社区
- 优势是知识储备丰富,有各大主流语言和框架的资料,同时管理员也不需要管理用户
- 劣势是相较于同类产品,缺乏特色,同时广告比较多,用户使用感不佳
上述产品之间呈现什么样的关系,哪些为竞品关系?以及竞争中的各方态势如何?
- 严格来说,InsCode、IT屋和Ideone并不能算竞品关系,它们的产品功能以及定位是不相同的。
- 其中InsCode的功能算最全面,发展前景最好,未来用户肯定会持续增加,处于成长阶段;
- IT屋从知识库的更新速度来看,是处于下降阶段的,因为同等产品层出不穷,技术的更新迭代又很迅速,如果不能即使更新最新的资讯,始终是会被替代和遗忘的
- Ideone从功能上来说是不容易被替代的,因为多数的在线编译器支持的语言很少能像Ideone达到80余种,但是未来不能排除会有相同产品的出现,所以ideone正处于平台期,如果能推出汉化版本,国内的使用者会更多,更利于ideone的推广
市场与产品生态
核心用户群
核心用户应为:计算机向相关专业的大学生和IT行业从业人员
用户画像
性别 | 女 |
---|---|
学历 | 本科 |
职业 | 前端 |
年龄 | 25岁 |
收入 | 月薪1w2 |
表面需求 | 使用博客记录工作上的难题,用Inscode生成demo嵌入博客 |
潜在需求 | 学习社区优质的项目 |
性别 | 男 |
---|---|
学历 | 本科在读 |
职业 | 学生 |
年龄 | 20岁 |
收入 | 无 |
表面需求 | 使用别人的电脑没有配置环境,使用ideone完成学校作业 |
潜在需求 | 有范例代码作为参考 |
产品规划
- 分工
人数 | 角色 |
---|---|
1 | 美工 |
1 | 测试 |
2 | 前端开发 |
2 | 后端开发 |
- 十六周详细计划
周数 | 任务 |
---|---|
1 | 需求分析 |
2 | 原型设计 |
3 | 数据库设计与对接 |
4-8 | 编码开发 |
9-10 | 测试 |
11-12 | 性能优化 |
13 | 征收用户意见 |
14-15 | 进一步细化 |
16 | 发布正式版本 |
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/90227.html