这个作业属于哪个课程 | 软件工程-23年春季学期 |
---|---|
这个作业要求在哪里 | 软件工程实践作业----软件评测 |
这个作业的目标 | 给一些软件写一个评测博客 |
其他参考文献 | 《构建之法》 |
0. BUG量化标准
严重星级 | 具体描述 |
---|---|
1星 | 不影响正常使用,但影响软件易用性,对用户体验不友好 |
2星 | 不影响正常使用,但会误导用户,用户体验差 |
3星 | 轻微影响使用,用户会操作失效或导致无法完成想要的操作 |
4星 | 严重影响使用,系统不稳定,会造成数据泄露 |
5星 | 无法正常使用,系统崩溃 |
1. 调研,评测
1.1 InsCode
1.1.1 使用体验
- 基本功能介绍和使用:
主页包含导航栏和热门模板推荐
可以选择模板来创建自己的项目
也可以将别人的模板fork到自己的项目里,进行修改
在编辑器中修改代码
完成开发后可以将自己的项目发布到社区作为模板供其他人使用
- 优点:
1、不用配置开发环境就可以直接进行开发,可节约大量时间。
2、可以在社区中直接fork别人的模板进行开发,并能一键上传自己制作的模板,对编程小白很友好。
3、界面设计精美简介,用户能快速找到自己想要的功能,并且操作简单易于上手。
4、会将项目中的代码自动提交到对应的 gitcode 项目中。
- 缺点:
1、网站访问速度、打开项目的速度、进行编译的速度均较慢,可能不会被经常需要进行开发的专业人士所选择。
2、在弱网络环境下使用体验不好。
3、目前支持的模板不多,不能创建空白的模板。
- 改进意见:
1、希望能支持更多模板的使用。
2、增加自定义快捷键功能,方便从其他编译器迁移过来的用户使用。
3、优化软件,尤其是在弱网环境下的运行速度。
- 用户采访:
体验:可以轻松的上手使用,用户页面简洁明了,例如创建项目的窗口选项简洁且有合适的模板使用,方便用户操作。
用户背景:软工学生,需要开发一个前端页面。
使用过的产品栏目:我的栏目,模板中心,还有社区交流等。
使用软件的过程中会遇到的问题和亮点:相对比较github来说 ,使用过程中的问题较少,因为全中文国人编程网站主要还是服务于国人,这也是其中的亮点。
认为需要改进的地方: 可以另外开设个答题的模块,这样答完题后交流更有利于用户理解代码,掌握代码等。
1.1.2 BUG描述
BUG1
- Bug发生时的测试环境
操作系统:windows 11
浏览器版本:Microsoft Edge 111.0.1661.62 (正式版本) (64 位)
发生的时间段:任何时间
原因:在主页面,下拉时一直无法看到页底内容
- Bug的可复现性及具体复现步骤
必然发生
复现步骤:
在主页通过鼠标滑轮向下滑动页面,其页底内容总是一闪而过
- Bug分析
可能成因:可能是前端开发人员没有考虑到固定页底部
Bug严重性:1星
对于Bug的预期及改进建议:
虽然大多数用户不会去注意页底的内容,或者在其他页面也能看见其内容,但这种由于考虑不周出现的bug终究是会影响用户的使用体验感,希望能重新修改前端布局的代码,固定页底内容。
1.1.3 结论
评价:非常推荐
因为总的来说这个软件还是十分优秀的,尤其是对需要演示项目和编程小白来说简直是福音。虽然目前它的用户数量很少,社区不够活跃,模板数量也不多。但是我相信如果后期可以加强推广,使用的人会越来越多,模板也会日渐健全,尤其是它的便捷性和上手门槛低是极具竞争力的。
1.2 IT屋
1.2.1 使用体验
- 基本功能介绍和使用:
首页
问答库:对一些常见问题做出解决方案,类似于博客,有分类。
菜鸟教程:关于一些主流技术的由浅及深的教程,比较细致。
在线工具:许多语言的在线编译器和一些很实用的小工具。
- 优点:
1、教程和问题解答收集的很全面也很详细。
2、在线工具很实用很方便。
- 缺点:
1、没有亮点,不存在很具有竞争力的功能。
2、找不到进行用户反馈的功能,交互性差。
- 改进意见:
希望可以增加用户进行反馈、提问、交流的模块。增强与用户的交互,并能对用户提出的新的问题进行解答,或者更新用户需要的技术的教程。
- 用户采访:
体验:操作很流畅,想要找的教程都有。
用户背景:计算机专业学生,想学习xml
使用过的栏目:问答库,在线工具,菜鸟教程
使用软件的过程中会遇到的问题和亮点:虽然是很小众的网站,但是资料出乎意料的全。
认为需要改进的地方: 可以增加发帖功能。
1.2.2 BUG描述
BUG1
- Bug发生时的测试环境
操作系统:windows 11
浏览器版本:Microsoft Edge 111.0.1661.62 (正式版本) (64 位)
发生的时间段:任何时间
原因:在其他模块下通过关键字搜索信息
- Bug的可复现性及具体复现步骤
必然发生
复现步骤:
从搜索框输入信息后,搜索到的结果只有问答库里面的资源
想要搜索教程或者在线工具是搜索不到的
- Bug分析
可能成因:在开发时没考虑到用户想要搜索其他资源的需求
如只支持搜索问答库则搜索框位置不应该在主导航栏
Bug严重性:2星
对于Bug的预期及改进建议:
增加对其他板块的搜索功能,或者将搜索框放置在问答库板块内。
BUG2
- Bug发生时的测试环境
操作系统:windows 11
浏览器版本:Microsoft Edge 111.0.1661.62 (正式版本) (64 位)
发生的时间段:任何时间
原因:在搜算框通过关键字搜索信息
- Bug的可复现性及具体复现步骤
必然发生
复现步骤:
在搜索框搜索时输入大写字母
点击搜索后必然无法搜索到相关资源
即使该资源标题里相对于的关键字存在大写字母
搜索时输入汉字,并不能搜索出所有包含该关键字的资源,有时甚至搜索不到
但如果在输入时不包含大写字母或汉字则可以成功搜索出相应的结果(包含数字时也可以搜出结果)
- Bug分析
可能成因:
在写搜索功能的函数时接收的数据没有考虑到大写字母和汉字的接收
或者可能是前端使用了类似indexOf的模糊搜索,但如同indexOf 区分大小写,开发者明显没有考虑将输入的内容全部转换为小写或者大写
Bug严重性:3星
对于Bug的预期及改进建议:
在处理用户输入的数据时考虑多种数据存在的可能性,并能将用户的数据统一化处理,例如将用户输入的包含有大小写的字符串全部转换为大写或者小写,也许可以修正这个问题
1.2.3 结论
评价:一般
虽然IT屋的学习资料和问题解答做的十分全面,甚至有很多冷门技术的资源。但是它实在是很小众,甚至没有能让用户反馈或者提问的地方,作为一个旨在提供学习资源的软件,不能使用户新的问题得以解决实在是说不过去。并且与它类似性质的软件有太多了,无论是知名度还是功能完整性都要更胜一筹。
1.3 Online Compiler and IDE
1.3.1 使用体验
- 基本功能介绍和使用:
一个支持多种语言且不需要配置环境的在线编译器
代码范例
可以查看其他用户编译过的程序,并且可以直接复制
- 优点:
1、线上操作且不用配置环境,十分便捷。
2、代码范例比较经典,同时能查阅学习其他人的代码,对于代码初学者来说还是比较香的。
- 缺点:
1、没有语法提示,对用户不友好。
2、只可以处理单个文件,不能应用与项目开发。
3、网页打开的速度过慢,无法满足专业用户。
- 改进意见:
希望可以优化网页打开速度,增加代码语法提示功能。
- 用户采访:
体验:操作很流畅,想要找的教程都有。
用户背景:2022级大一软件工程新生,已经系统学习过编程语言,可能对不同的编程语言有好奇心。需求是使用一个轻量级别的ide,避免一些安装和环境配置的麻烦步骤。
使用过的栏目:主要是web页面中部分的具有ide功能的demo,首先选择语言c++进行了程序测试,其次再换java
使用软件的过程中会遇到的亮点:能快速上手。编程语言多种多样,集成性很强,
问题:
刚进入页面代码部分是java语言,这对没有系统学习java的人有点不知所措。
切换语言的按钮的位置找得比较久。
对MoreOption这一栏的实际功能不了解。
进行run功能时进行了一个页面的跳转和源码的展示,会影响用户体验。
认为需要改进的地方:
1如果此ide面向的群体是一些入门编程且语言以中文为主的人,建议把一些具有引导性内容的英文改成中文,这更能体现此ide的便捷之处。
2可以把切换语言的按钮放在更加显眼的地方
3 可以在首次进入此web页面进行一个此ide的亮点展示,吸引用户使用。
4现在大部分ide都带有代码自动填充的功能,会优先选择更高效率,所以可以加入这一部分功能。
5进行run功能时进行了一个页面的跳转和源码的展示,这感觉是一个多余的,并且降低了此ide使用的流畅性,会影响用户体验。
1.3.2 BUG描述
无
1.3.3 结论
评价:不推荐
作为一个线上的开发工具,它的浏览速度实在是太慢了。作为一个新手用来练手的工具,他的界面和给出的范例确实不适合大多数国内的同学。可以替代它的软件有很多,例如本次作业中提到的InsCode就是一个不错的选择。
2. 分析( InsCode地址)
2.1 创造时间预估
- 时间:需求分析10天+原型设计5天+开发90天+测试30天=135天
- 理由:虽然是刚刚毕业的大学生,但是项目经验肯定不多,而且团队还需磨合,所以开发的时间会比较长
2.2 软件目前的优劣(与同类软件相比)
同类软件1
Online Compiler and IDE地址
优势:界面更加精美,操作更流程,可以在线上做项目,功能更加强大,发展空间更大。
劣势:支持的编程语言不及Online Compiler and IDE。
同类软件2
codesandbox
优势:由国人开发,对国人相对更加友好,支持直接fork别人的模板,方便学习借鉴,访问速度更快。
劣势:不能在手机端使用,略有局限性,编码界面体验略有不足。
同类软件3
CloudStudio
优势:目前所有功能可以免费使用,界面更加简洁易用,更容易上手。
劣势:支持的后端框架不及CloudStudio,不支持团队开发。
2.3 预估排名(同类软件中)
预测排名在同类软件中占前10,且发展前景较好。
2.4 对团队的建议
希望能再严谨一点,修改好细小的bug,提高用户体验感。
能支持的框架再多一点,满足更多用户的需求。
对用户发布的作品能进一部审核,在主页只推荐优秀作品。
2.5 目前还存在bug的原因
1、开发人员粗心大意。
2、测试把关不严,敷衍了事,没有注意在特殊的配置或环境下测试。
2.6 对团队的问题
1、修复已知的bug是否会很困难?
2、目前有多少人在维护该产品?
3、如果收录更多的技术模板,所增加的维护成本是否会超过其带来的收益?
3. 建议和规划
3.1 市场概况
首先云IDE这一块的发展前景很好,潜在用户在不断增加,且开发人员可以远程编写运行和调试代码,无需本地安装,仅通过浏览器即可开发软件等等优势注定了在将来会员更多的使用云IDE。
据TechCrunch 报道,GitHub 近日宣布,正有超过1亿名开发者使用该平台。可见直接用户基数很大。
编程小白,需要演示项目的专业人士,对线上有需求的开发团队等等都是其潜在用户。
3.2 市场现状
目前市场上有什么样的产品:Glitch、Gitpod、repl.it、Replit、CodeSandbox、StackBlitz、Coding Ground、JDoodle。
与上述产品相比,本产品的优势在于潜在用户基数更大,可成长性更强,因为是国人开发的,对国人更加友好。
劣势在于会存在一些Bug影响用户体验感,可用的模板数量不够全面不够多。
上述产品均为竞品关系。
这个领域正处于成长阶段。
3.3 市场与产品生态
核心用户群是:大学生,程序员,想要入行的小白。学历普遍不低,需求在于云IDE的便捷性和可共享性。
产品的用户群体之间存在一定的关系。主要用户群体是专业的程序员和想入行的小白,两者之间是前辈与后辈的关系。通过前辈带动后辈入行的形式,吸引更多用户。
产品的子产品,以及其他相关产品之间存在这一定关系,如InsCode可依靠csdn社区,并且有gitcode支持代码管理,习惯于使用csdn和gitcode的用户肯定更倾向于使用其衍生产品。
3.4 产品规划
- 新功能:团队项目开发
N:除了需要单独开发的用户之外,也会有开发团队需要在线上进行项目的开发。
A:项目创建者可发起邀请链接,其他用户加入即可。
B:程序员可远程编写调试代码、有利于在开发阶段就发现团队成员的bug、是谁写的代码都一目了然责任更加明确、无需后期再进行合并、同时也能避免因为每个人电脑所有环境不同导致的代码混乱。
C:Coding Ground,CloudStudio
D:依赖CSDN社区,在csdn中嵌入InsCode的链接。在其他人流量大的平台发布广告。
- 角色配置:
2位后端,1位前端,1位美工,2位测试。
- 16周的详细计划
时间 | 详细计划 |
---|---|
第1周 | 市场调研,需求分析 |
第2周 | 原型设计 |
第3周 | 设计类图,美工设计,设计数据库 |
第4-12周 | 前后端开发 |
第13周 | 前后端交互,测试前后端交互是否正常 |
第14周 | 测试所有功能 |
第15周 | 修改Bug,完善代码 |
第16周 | beta测试,项目上线 |