这个作业属于哪个课程 | 2023年福大-软件工程实践-W班 |
---|---|
这个作业要求在哪里 | 软件工程实践——软件评测作业 |
这个作业的目标 | 测试指定的软件产品 |
其他参考文献 | 百度,CSDN |
目录
第一部分: 调研,评测
测试环境
BUG评级
严重程度 | 详细描述 |
---|---|
★★★ | 严重影响产品的使用,比如死机 ,用户数据泄露等 |
★★ | 影响产品的正常使用,比如某些功能失效或没有实现 |
★ | 不影响产品的正常使用,比如偶尔存在卡顿行为 |
软件产品1:insCode
1.使用体验
1.1首先页面首页主要有一个导航栏,显示出系统的主要功能有查看网页主页,查看我的项目,模板中心,社区,设置,这些模块
1.2在我的项目中可以查看自己创建的项目和自己的动态,还可以看到自己收藏的项目
1.3在模板中心可以使用各种各样的模板,并且这些模板都分好了类查找比较方便
1.4在社区中心可以看到别人发布的作品,可以点进去查看并运行别人的项目,这种在线查看运行非常的方便,并且可以查看别人的源码
1.5在设置中心里可以查看ssh公钥和git配置
1.6以下是测试这款软件创建项目,在线编辑的使用体验,可以说这款软件基于它的模板中心使得项目开发变得简单方便很多,并且这款软件在线编辑代码的功能十分的香,以下建立了一个vue项目来进行测试
优缺点分析:
优点:
1.这款软件这界面十分简洁,看上去十分舒服,非常符合程序员写代码的需求
2.这款软件集成了大量的模板,给开发带来了高效
3.这款软件是在线编辑的软件,省去了很多软件安装,环境配置的麻烦,可以想象如果人在外地没有自己的电脑,重新配一些环境比较麻烦,有了这款软件就可以有效的解决这些问题
4.可以从上面的vue项目测试可以看出,这款软件在编辑代码的旁边就可以看到页面的变化,这是vscode所没有的,对于一个前端开发者而言,真香
缺点:
1.首先这款软件虽然集成了各种框架,但没有提供选择框架版本的选择,就比如上面的vue,默认了使用最新的vue3,不支持vue2的使用
2.每次写完代码就要点一下RUN来查看效果,不嫩动态更新,感觉挺麻烦的
3.对于git操作的那些功能支持没有idea这种软件功能齐全好用,存在较大的差距
改进意见:
1.可以完善下表单的合法性判断
2.对于哪些模板和社区里的作品可以增加一些教程,方便初学者的使用
3.对于框架的使用希望可以增加选择框架的版本
2. BUG
2.1 BUG1:编辑代码终端生成的地址打开错误
Bug评级:★★
可复现性: 100%
复现步骤:
具体描述:编辑vue项目终端会生成一个本地的地址,用来查看,在这款软件中打不开,而在其他的vscode这种编辑器中不存在这样的问题
具体分析:不是很懂这是什么原因造成的
2.2 BUG2:缺少对表单输入合法性的判断
Bug评级:★
可复现性: 100%
复现步骤:
具体描述:在设置模块中没有对表单的输入合法信息进行判断,比如表单为空它也认为是合法的
具体分析:开发人员缺少对表单信息的处理
BUG改进建议:增加对表单合法性的判断,给出正确的提示信息.
3.结论
e) 非常推荐
软件产品2: IT屋
1.使用体验
1.1打开这款软件就会发现有许多的编程语言在线工具,给人的感觉这更像是学习编程语言的工具,用来在线编辑一些简单的语言代码,而inscode则更像是用来做项目的
1.2.用这款工具写代码时发现它不具有代码提示,代码高亮的功能,编写体验极差
1.3 这款软件还要一个特点就是有许多的教程,有点像菜鸟
1.4有点像社区的问答库功能
优缺点分析:
优点:
1.这款软件在线语言编辑种类比较多,适合用来对编程语言的学习
2.这款软件有许多学习教程
3.这款软件的功能还是蛮多的,比如颜色转化
缺点:
1.这款软件界面GUI,看起来让人有点不太喜欢
2.这款软件写代码时没有高亮,代码提示的功能,编写体验极差
3.这款软件的广告是真的多,体验感十分差
改进意见:
希望先把广告去了,然后加强下代码的编辑功能
2.BUG
没发现什么明显的BUG
3.结论
b) 不推荐
软件产品3: Online Compiler and IDE
1.使用体验
1.1一进来就可以看到一个代码编辑窗口,并且可以选择不同的语言进行编写
1.2经过测试发现这款产品虽然有代码高亮的功能,但没有代码提示的功能,比如输入psvm没有代码提示
1.3可以查看别人写的一些代码
1.4具有代码报错的功能
优缺点分析:
优点:
1.代码编辑功能相比上一款产品相对来说还算可以,只是缺少代码提示的功能
2.支持选用模板这个功能
缺点:
1.这款软件用起来比较卡,打开一个功能需要比较长的时间
2.模板不够完善,并且不能自定义
3.页面是英文的,使用起来不是很方便
改进意见:
希望可以制作国内版的,这样不仅可以加快访问速度,还可以阅读起来更方便,可以增加一个自定义模板的功能使用起来会更好
2.BUG
BUG1:存在中文乱码的问题
Bug评级:★
可复现性: 100%
复现步骤:
具体描述:软件产品中的中文字符均出现乱码行为
具体分析:开发人员缺少对编码格式处理不当,没考虑到中文的情况
BUG改进建议:改变编码的方式
3.结论
c) 一般
用户调研
第二部分: 分析
开发时间估计
前提假设:首先对于这6名计算机科班毕业的学生,我们可以假设他们熟悉前后端的开发框架,并且在大学期间有过项目开发经验。
inscode | 由于insCode的功能比较强大,包含了在线代码编辑,代码托管,代码部署,社区功能,模板中心集成,所以我认为这款产品的开发需要差不多12个月的时间来完成 |
---|---|
IT屋 | IT屋主要的功能集中在各种语言代码的编辑和教程上,所以我认为这款产品的开发需要差不多6个月的时间来完成 |
IDEONE | IDEONE主要的功能为代码编辑器的功能和模板,社区查看别人代码的功能,所以我认为这款产品的开发需要差不多6个月的时间来完成 |
同类产品对比排名
衡量指标 | inscode | IT屋 | IDEONE | 分值 |
---|---|---|---|---|
UI界面 | 19 | 12 | 13 | 20 |
软件功能 | 38 | 32 | 32 | 40 |
是否BUG比较少 | 6 | 10 | 8 | 10 |
使用流畅度 | 10 | 10 | 7 | 10 |
代码编辑功能 | 20 | 15 | 18 | 20 |
总分 | 93 | 69 | 78 | 100 |
综上所述,三者的排名为:insCode>IDEONE>IT屋
软件工程方面的建议
inscode | inscode作为新秀软件,必然存在个别地方考虑不周到形成的BUG,应做好开发文档和测试文档,以便后续的工作人员可以更好的接好维护这个项目,并且可以增加bug情况反馈这个功能,可以让用户的使用情况来代替测试,不断的反馈完善这个产品 |
---|---|
IT屋 | 可以优化以下前端的页面,并且去掉广告来提高用户的体验,增强完善代码编辑的功能,比如增加代码提示,高亮这些功能 |
IDEONE | 可以考虑到中文的情况,解决中文乱码的问题,同时可以优化以下前端页面 |
BUG存在的原因分析
inscode | inscode表单的没有合法性判断的BUG主要是开发人员没有考虑周到,项目生成的地址打不开的主要问题我觉得还是测试不足,inscode作为新款软件必然存在测试上还不够完善,并且inscode功能比较强大,对于一些边边角角的测试必然存在一些疏忽 |
---|---|
IDEONE | IDEONE存在的BUG主要是这款产品是外国研发的,没有充分考虑到中文的情况,所以存在中文代码 |
第三部分 建议和规划
市场概况
1.市场规模
2020年,随着新冠肺炎疫情“非接触”需求增加,全球软件市场规模达到约13499亿美元,比上年增加1.8%。IT服务市场方面,由于担心新冠肺炎疫情导致商业环境恶化,主要企业纷纷停止新项目,减少对IT活动及管理服务的支出,比2019年减少2.2%为7043亿美元。一揽子软件市场方面,因“非接触”环境需求扩散,商务运营所必须要素及云服务等需求同比增长6.6%,预计为6456亿美元
2.直接用户和潜在用户
inscode的直接用户只要有计算机相关专业的大学生,个人的开发人员。
inscode潜在用户只要有公司里面有组织的开发人员,因为现在的公司里基本都是以github或gitee作为他们的代码托管平台,inscode作为新秀软件很少被采纳,所以这块用户量比较大,是需要去主要发展的。
市场现状
1.首先在代码托管这个功能上,inscode的竞争者主要有github,gitee,gitcode这些产品,github是全球受众最广影响力最深的 一款产品,所以里面的资源比较的丰富这点是inscode所比不了的,毕竟这种产品需要用户量,和时间的沉淀。但github在国内经常无法打开,这也就意味这国内的市场巨大。gitee就成了inscode在国内的主要竞争品,gitee的用户量显然比inscode大的多,所以里面的项目资源比inscode丰富,但inscode的界面和使用更为的方便,并且它的社区更为的强大,可以直接在线运行别人的代码,使用起来很方便。
2.在在线代码编辑这个方面,vscode其实也推出了vscode网页版的功能,并且vscode支持丰富的插件,这点是inscode所不足的,但inscode支持丰富的模板,这点又是vscode无法比较的,并且inscode在前端编辑上,可以在代码旁边看到页面的变化,比较方便。
综上,我觉得inscode主要的优势竞争力主要在Inscode的功能上的集成,把代码在线编辑,代码托管,代码社区,代码模板这些集成在一起,使用起来比较方便,相信未来inscode的用户量起来了,就会成为国内不错的代码社区。
市场与产品生态
- 核心用户群
inscode核心用户群主要集中在在线大学生,个人开发者。所以inscode可以开发高校版便于老师教学管理。他们的年龄主要集中在18-35之间,主要是来自中国的用户,专业大多是和计算机相关的专业,爱好基本是编码,收入存在差异可以是0收入的在线大学生,可以是收入不固定的个人开发者。这些用户的表面需求主要是使用inscode在线编码,代码托管,丰富的模板功能。潜在需求比如像合作开发,和上面说的开发一个高校版便于老师教学管理使用。
2.产品的用户群体之间的关系
用户群体可以通过社区这个模块的功能来进行交流互动,并且可以fork别人的项目进行开发,这些功能使得产品活跃度增强,促进产品的传播
3.产品的子产品,以及其他相关产品之间的关系
inscode及其相关的产品存在一定的关系,inscode编辑的项目可以使用gitee,github来进行托管,同样上面的代码可以fork到inscode进行开发。inscode作为功能的集成者和大多数产品都有一定的关联,有利用各个产品特性之间的相互关系二次构成产品生态的可能性。
NABCD模型
- Need(需求):
对于开发者而言,同一个框架可以他们所使用的版本是不同的,所以希望优化模板中心的功能,开发一个类似可以选择不同的框架版本,并丰富编译器的插件,如vscode的插件应用,增强项目开发的功能 - Approach (方法) :
在创建项目的页面中除了选择项目的模板,然后新增加一个选择版本选项的功能,然后再代码编辑页面可以增加一个代码插件市场,类似于vscode - Benefits (好处) :
这样做将使得软件在线代码编辑功能更加的强大,更加的人性化,可以把习惯了之前喜欢用vscode,idea这类产品的用户挖掘过来 - Competition (竞争):
上面所说的这些功能都是其余编译器如vscode,idea所具有,而inscode不具有的,如果没有这些功能,将会使得inscode的代码编辑功能落后于这些编辑器,有了这些功能,inscode将发挥出它强大的功能集成的功能,吸引更多的用户使用 - Delivery (推广) :
inscode作为csdn的子产品,可以借用csdn的流量来进行推广。
产品规划
1.人员配置:
1个美工,1个前端,1个测试,3个后端
2.16个周期每周的详细规划:
周数 | 工作内容 |
---|---|
1 | 进行项目的需求分析,确定项目需要实现哪些功能 |
2 | 美工开始进行UI原型设计,后端开始数据库的设计 |
4 | 美工给前端设计好的部分页面,前端进行相应的组件开发,后端开始搭项目结构造 |
5 | 美工完成UI原型,前后端协商接口参数 |
6 | 前端开发,后端开发 |
7 | 前端开发,后端开发 |
8 | 前端开发,后端开发 |
9 | 前端开发,后端开发 |
10 | 前后端开始交互协调 |
11 | 前后端开始交互协调 |
12 | 产品初版实现 |
13 | 测试人员开始测试 ,并将测试结果返回给开发人员 |
14 | 开发人员更具测试出来的bug,进行修改 |
15 | 在小范围内推行版本,进行使用测试 |
16 | 如果测试没问题,产品上线 |