软件工程实践作业 --- 软件评测

这个作业属于哪个课程软件工程-23年春季学期
这个作业要求在哪里软件工程实践作业----软件评测(截至4月7日)
这个作业的目标分析市面上比较常用的几款软件产品,对他们进行评测,指出优点及缺点,体会软件工程思想及原则在软件开发中的重要作用,提升自身认识,并为相应产品迭代提出自己的合理建议。
其他参考文献CSDN、构建之法

第一部分 调研,评测

1.InsCode

1.1体验
介绍
  • InsCode 是一个无需安装的编程、协作和分享社区 创建项目 分享、学习和建立联系的开发者社区 查看更多 Cloud IDE 无需下载安装,直接在浏览器中编码,随时随地享受编程的乐趣。 不论您是初学者还是专业开发者,InsCode IDE 都提供适合您的工具和环境,并支持 30+ 种编程语言。 代码安全托管 所有项目自动同步至 GitCode,为您的代码保驾护航。 完整的开发流程,省去大量配置和概念,专注在创作本身。 作品分享社区 帮助开发者分享和讨论他们的代码、项目和想法。 参与社区进行互相学习、分享经验和建立联系,开启一段充满灵感和合作的旅程。 打破边界,创意无限 让你的编程灵感立即实现。

软件使用:主要对页面逻辑,InsCode IDE性能以及项目管理测评。


基本功能介绍

InsCode首页
首页

点击右上角加号创建项目,选择模版即可进入项目编写。

项目可以通过Github导入,也可以通过InsCode导入项目。
我选择Vue的平台模版对产品功能进行演示,选择模板后,目前 InsCode 支持部分主流语言,和近期比较流行的模板,右侧的标题、项目标识和可见性,会默认自动填写,也可以自己进行修改。

评价:使用简便,但是在搜索模板缺少搜索内容的联想功能,用户使用起来很不方便。
请添加图片描述
无法进行联想,输入Vue无法跳出想要的模版信息,还是按照默认的排序为用户推荐模板。
在这里插入图片描述

可以在编辑器中进行项目开发(用Safari无法运行项目)

用户可以在线编辑代码,不需要自己在本地搭建环境即可实现运行,调试,预览,终端,输出,版本控制等一些功能,对用户的小型系统的编辑或初学者的学习是很友好的。

评价:运行方面平台的兼容性不够强,对于部分的浏览器,不能做到完美运行,并且按照该系统的提示点击“浏览器页签中打开浏览”依旧显示同样的问题,只有用户更换浏览器才能出现运行结果。
请添加图片描述
点击“浏览器页签中打开浏览”跳转到的页面依旧显示下列内容。
请添加图片描述

更换浏览器后方可运行(Microsoft Edge)

用户可以在 InsCode 平台上修改代码,修改后代码自动提交到对应的 gitcode 项目中,减少出现安全问题的可能性。

请添加图片描述

可以发布自己的项目也可以将项目作为模版开源给他人使用。
需点击上图中代码标题的位置才能弹出发布作品的按钮,不太符合一般用户的正常操作逻辑。应该修改一下发布作品的按钮位置,建议修改至右上角,比较符合大多数用户的操作逻辑。
在这里插入图片描述

请添加图片描述
用户可以为自己的项目设定标签和封面后上传
在 InsCode 平台上发布项目,并且可以公开项目与社区分享自己的项目,打上对应的标签便于其他用户查看和学习,同时也可以学习和使用他人的开源项目

请添加图片描述
可以克隆其他用户的优秀代码进行在线学习,也可以在本地进行编写
请添加图片描述

优缺点分析

优点1:作为国内的一个在线代码运行平台,博客分享,在线进行代码运行,学习简单的语法都具有一个很高的实用性。用户可以通过InsCode实现代码的演示,共享,存储,学习等功能基本满足了一个程序员对于代码社区的大部分需求。

优点2:InsCode支持的语言比较多,更有利于解决代码的环境配置等繁杂的问题,这样的平台比较适合于在小组会议时进行临时的代码演示的时候使用,减少环境搭建,配置等时间的损耗。

缺点1:目前,使用的用户量不足,可使用的模板不多,还没有形成一个较为完整的生态。对于用户来说,没有一个较为完整的生态,特别是模版不够多,不能满足大多数用户的使用需求,用户往往就不会倾向于使用这个系统,用户粘性不高,很容易导致没有人使用的情况。

缺点2:UI设计还需要改进,对于一些按钮的摆放位置可以稍作调整。例如,应该将项目发布的按钮设置在运行框附近,比较符合用户的正常操作逻辑;页面的布局还存在bug(在下面的bug描述栏目详细介绍);模版选项缺少联想功能。

缺点3:打开项目和运行项目耗时太久,虽然是一个web程序,但是对于用户的使用来说,长时间的等待必然会降低用户对于使用本系统的耐心,虽然减少了环境配置的时间,但是在真正使用环境下,代码如果需要长时间运行或大量的代码调试,可能会造成更多的用户转向去研究搭建项目环境,而不是等待项目的运行结果。

改进意见

1.优化代码运行和调试的效率。

2.官方可以多加入一些优秀的代码模版,从一些其余的网站引入一些模版资源,从而带来更多的用户量,因为这个系统拥有在线编辑和运行的功能,所以会比一些博客网站更有优势,前提是需要有一定的用户基础和系统的体验感。

3.修改UI设计的缺陷和bug。

采访另一个用户

用户背景:软件工程专业大三本科生,曾经做过web程序,Android应用。
实际使用:查看模板,学习Vue框架时在线运行代码。
遇到的问题:他想用InsCode运行一些后端代码,但是发现没有这些框架的模版。每一次进入项目需要加载的时间相当长,并且运行项目时间也很长,体验感很差。
需要改进的地方:系统支持的模版太少,最好增加一些基础的框架模版,同时试着优化项目的打开和运行时间,搭建良好的社区生态。
在这里插入图片描述

1.2BUG描述

Bug量化指标

严重程度详细描述
无关紧要,基本不影响正常使用,用户无法快速察觉
☆☆轻度系统故障,偶尔发生,页面排版存在问题,影响用户使用体验
☆☆☆中度系统故障,必然发生,基础功能逻辑无法使用或出错,页面超时。
☆☆☆☆严重系统故障,必然发生,服务器鉴权漏洞或数据泄露,安全性收到威胁
☆☆☆☆☆致命性系统故障,要信息泄漏,致命性安全性漏洞
bug发生时的环境

操作系统:macOS13.0
浏览器:

  • Safari版本16.1 (18614.2.9.1.12)
  • Microsoft Edge版本 111.0.1661.62 (正式版本) (arm64)
1.不能在我的项目中发布作品

可复现性:偶尔发生(第一次发布作品时发生)
复现步骤:
在菜单栏“我的项目”中点击发布作品
在这里插入图片描述
将信息填写完整后点击发布到社区,会进入一个长时间的等待,并且没有任何其他的反应,点击刷新再进入页面,再次发布作品才可以解决这个问题。
在这里插入图片描述

Bug分析

Bug评级:☆☆☆
打开控制台可以看到这样的报错
在这里插入图片描述
通过查找相关资料发现的方法解决以上问题
在axios 的响应拦截器
将ruturn 返回的结果 设置为res.data
在这里插入图片描述

来自vue项目中 Uncaught (in promise) Error 解决

2.页面无法横向移动,导致教程无法看见

可复现性:必然发生
复现步骤:
第一次进入我的项目页面会有页面的使用教程
当页面不够宽的时候,无法进行横向的移动,此时也没有横向滚动条,所以无法点击下一步按键,只能点击跳过按键将其关闭。
在这里插入图片描述

Bug分析

Bug评级:☆
原因是可能页面有Css实现内容溢出添加横向滚动条,但是教程内容无法触发内容溢出,所以不能使用横向滚动条。查阅资料发现需要将教程内容加入div中,在css中要添加overflow-y:auto;即可实现。

3.评价内容过长无法自动换行

可复现性:必然发生
复现步骤:
当评价内容无法自动换行,超出一定的长度后会出现UI设计的问题
在这里插入图片描述

Bug分析

Bug评级:☆
应该为评价系统增加自动换行的功能。

4.评价内容过长溢出

可复现性:必然发生
复现步骤:
当评价内容超出一定的长度,超出的部分无法显示。(没有字数限制的提示)
在这里插入图片描述

Bug分析

Bug评级:☆
应该给评论区增加字数限制的提示或者说明

5.网站资源无法访问

可复现性:偶尔发生
复现步骤:
有一次登录后发现无法访问网站资源,根据提示是网络问题但是当我打开其他网站发现网络状态良好。
在这里插入图片描述

Bug分析

Bug评级:☆
这个问题只出现过一次,之前我以为是自己电脑的问题,所以只把图片截图下来,直到我发现其他同学也有出现类似的问题,我才确定这是一个Bug,但是没有找到这个bug的触发原因。

6.搜索功能失效

可复现性:偶然发生
复现步骤:
在主页搜索几次后,再到我的项目中进行搜索,回车后无法跳转

在这里插入图片描述

Bug分析

Bug评级:☆☆☆
搜索出信息后无法跳转,报错400,无法获得资源。个人认为程序在设置跳转上可能存在问题。
在这里插入图片描述

1.3.结论

InsCode:比较推荐的软件

类别评分 (满分70)
功能核心功能是否完成9/10
细节有什么为用户考虑的细节?5/10
辅助功能界面美观以及简介9/10
差异化功能软件独特的功能9/10
软件的效能运行效率,占用内存, 启动速度4/10
用户体验用户的使用体验是否良好7/10
前端交互性前端交互上有没有什么逻辑上的问题,是否存在缺陷6/10
总分上述分数相加49/70(70%)

InsCode首先作为一个在线的代码运行,共享,学习平台,集合了很多的功能,这个系统的设计理念是非常优秀的,可以将代码放在线上运行,并且支持多种框架和语言,可以进行编译,输出,调试,甚至还实现了版本控制等一些比较边缘的功能,同时打造了一个社区,比其他竞品平台多出很多的关于代码演示运行的功能,对于这种类型的产品而言,InsCode在差异化功能上优势明显。但是由于现在该产品还处于测试阶段,用户量不够,造成模版的量也不够,社区也还没有起步,除此之外,系统还存在一些Bug和一些UI设计缺陷,需要在正式发布前再修改一下。总的对于现阶段来说,这个InsCode实现的还是比较好的,希望前端工程师再加把劲把UI交互完善好,同时市场开始推广社区功能,只有拥有一定的用户量才能提供更好的社区生态

所以我的综合评价是:InsCode是一个比较推荐的软件。

2.IT屋

2.1体验
介绍

-IT屋-程序员软件开发技术分享社区 是一个面向程序员、计算机爱好者技术分享社区,为程序员、计算机爱好者提供百万权威知识库检索、在线开发工具、技术教程库、视频教程下载等功能。


软件使用:主要对页面逻辑,在线开发工具性能以及知识库和其他教程测评。


基本功能介绍

首页
主要展示IT屋的教程类型。
评价:教程类型很多,但是没有一定的规划,放在一起看着很繁杂,而且一般用户也不会在这么多教程里面慢慢找,一般用户浏览这种网站目的明确,而这样的页面设计不符合用户的使用习惯,建议应该用多级检索的方式呈现。同时IT屋的搜索功能不是很好用,所以最好要优化一下搜索功能。
请添加图片描述
教程包含语言或框架的详细教程
详细教程部分来自于其他的网站,IT屋的工作是将其进行整合。
请添加图片描述
也包含了问答形式的数据库
问答库实际上就是一个整合网络上热门问题的资料库,并没有问答的功能,也就是说用户只能查找自己的问题并且寻找回答,用户没有任何提问的功能,更没有回答问题的功能。若想提问,很抱歉,本系统没有这个功能,只能去其他网站上寻找答案。
请添加图片描述
在线工具
所谓在线即为多种语言的在线调试工具,但是本网站不支持多文件项目,也不支持导入文件,所以局限性很强,只适用于在线语言学习,测试小功能时使用。好处是语言众多,使用方便。
请添加图片描述

优缺点分析

优点1:本系统的教程覆盖范围广泛,包含多种方向的内容,以满足用户多样化的需求。

优点2:在线工具同样涵盖了非常多的语言,比较适合快速编写一些小程序。

缺点1:只能编写处理单文件项目,不可用于多文件项目开发。

缺点2:UI设计让用户比较抗拒,用起来很难受,而且操作逻辑上也存在比较大的问题,一般用户不会在众多的教程中一个个查看,而是目的性比较强的浏览这个网站,出于这个想法,设计者应该将主页设计为检索的样式或更有利于用户快速查找所需教程的设计更加合适。

缺点3:广告过多,不管在什么界面都充满了广告,用户的体验感

**缺点4请添加图片描述
**:问答库没有实际的问答功能,只是一个资料的整合。

改进意见

1.更新教程的内容,同时打开问答库的问答功能,让更多的用户来提问和解答问题,这同时也能保证信息的更新。

2.进行UI的美化。

3.减少广告的投放。

采访另一个用户

用户背景:软件工程专业大三本科生,曾经做过web程序,Android应用。
实际使用:在IT屋上搜索Spring Boot的教程。
遇到的问题:网站中对于框架的教程内容偏少,大部分都是一些原生语言的教程,对有一定基础的用户来说帮助不大。
需要改进的地方:更新最新的教程内容,提高搜索的效率。

2.2.BUG描述
bug发生时的环境

操作系统:macOS13.0
浏览器:

  • Safari版本16.1 (18614.2.9.1.12)
  • Microsoft Edge版本 111.0.1661.62 (正式版本) (arm64)
1.搜索框区分大小写

可复现性:必然发生
复现步骤:
在首页进行搜索:
若搜索“React”搜索结果为空,若搜索“react”可以得到搜索结果。

请添加图片描述

请添加图片描述
Bug分析
Bug评级:☆☆☆
对于这个问题用户使用起来会有一个比较大的障碍,一般用户很难想到本系统是区分大小写的,在用户使用过程中发现了本系统搜不到想要的内容往往会直接关闭该网站,很少人会再用小写搜一遍。建议修改搜索算法。

2.英文问答内容大面积缺失

可复现性:必然发生
复现步骤:
在首页进行搜索:
随意搜索一些关键词,点击纯英文的搜索结果,会发现英文的内容大面积缺失,仅仅是少量的内容还有存在。可能是因为网站没有合理的维护,一些网址已经失效但是数据库里依然存储导致的问题。

在这里插入图片描述
Bug分析
Bug评级:☆
点击链接发现跳转到IT屋内部的链接,说明数据库中存在已经失效的内容,应该整理数据库的内容并且将失效的信息整合或者删除。
请添加图片描述

2.3.结论

IT屋:不推荐的软件

类别评分 (满分70)
功能核心功能是否完成7/10
细节有什么为用户考虑的细节?4/10
辅助功能界面美观以及简介6/10
差异化功能软件独特的功能8/10
软件的效能运行效率,占用内存, 启动速度6/10
用户体验用户的使用体验是否良好4/10
前端交互性前端交互上有没有什么逻辑上的问题,是否存在缺陷4/10
总分上述分数相加39/70(55%)

IT屋作为一个程序员或者计算机爱好者的学习平台,唯一的优势就是教程的覆盖范围广泛,但是现如今搜索引擎系统功能强大,内容更加广泛,更多的用户会选择用搜索引擎来寻找教程,而非用IT屋的搜索功能来搜索,IT屋作为一个网页的优势并没有发挥出来,并且IT屋的搜索功能存在大小写区分,这更是劝退了一些用户,最主要的是过多的广告投放量让用户体验变得很差。同时IT屋存在长时间教程没有更新,问答库内容失效,UI设计极其不美观等问题,虽然涵盖的小工具让用户在线学习过程变得简单,但是种种的问题导致这注定不会是一个用户青睐的系统。

所以我的综合评价是:IT屋是一个不推荐的软件。

3.Product Hunt

3.1体验
介绍

Product Hunt是一个在线社区,旨在帮助创业者、产品经理和设计师发现和分享新产品。该网站成立于2013年,是一家成长迅速的创业公司,总部位于美国旧金山。

在Product Hunt上,用户可以浏览和发现各种类型的新产品,如手机应用程序、网络应用程序、硬件设备、书籍等等。产品可以通过投票和评论进行评价和讨论,而创始人和开发者可以利用该网站与潜在用户和顾客建立联系,并获取反馈和建议。

Product Hunt还提供了一系列有用的工具和资源,如社区论坛、独家访谈、产品洞察和趋势分析等。此外,该网站还定期举办虚拟活动和线下聚会,为创业者和产品经理提供互动和交流的机会。

总的来说,Product Hunt是一个极具活力和创新精神的社区,为创业者和产品经理提供了一个互相支持和分享创意的平台。


软件使用:从社区论坛,发现新产品,评论投票等方面进行测试。


基本功能介绍

首页
发现新产品
用户可以在首页查看新的产品,并且可以给这些产品投票。
在这里插入图片描述

活跃的讨论话题
技术爱好者和行业大牛可以在这个平台上进行讨论,分享各自的想法和经验。
请添加图片描述
可以发布自己的想法或者项目
其他人可以根据我的想法进行讨论,分享自己的看法,或者给我的内容投票。
请添加图片描述
Product Hunt还提供了以下功能
发现新产品:Product Hunt是一个非常好的产品发现平台,你可以在这里发现各种新产品,如应用程序、网站、工具等等。这些产品都是由其他用户提交并经过审核的。

投票和评论:你可以通过在Product Hunt上投票和评论产品来表达自己的看法和评价。这有助于产品获得更多的曝光和用户反馈,同时也让其他用户更容易发现和评估产品的质量。

创始人和开发者联系:如果你是一个创业者或开发者,你可以在Product Hunt上与潜在用户和顾客建立联系。这有助于你获取反馈和建议,进一步改进产品。

社区论坛:Product Hunt社区论坛是一个在线交流平台,你可以在这里与其他用户讨论各种与产品相关的话题,分享你的经验和见解,或者提出问题和寻求帮助。

独家访谈:Product Hunt还提供了一系列独家访谈,这些访谈是与成功的创业者、产品经理和设计师进行的。通过这些访谈,你可以了解到这些人的思考方式、经验和教训,从中获得灵感和启示。

产品洞察和趋势分析:Product Hunt提供了一些有用的工具和资源,如产品洞察和趋势分析。这些工具可以帮助你了解产品市场的发展趋势,以及当前最热门的产品和技术领域。

虚拟活动和线下聚会:Product Hunt定期举办虚拟活动和线下聚会,为创业者和产品经理提供互动和交流的机会。这些活动包括研讨会、讲座、交流会等等。

优缺点分析

优点1:产品发现平台:Product Hunt是一个优秀的产品发现平台,它可以让用户发现各种新产品,了解当前的产品趋势和热点。这为用户提供了便利,也促进了新产品的推广和发展。

优点2:建立社区:Product Hunt建立了一个热情、创新的社区,吸引了来自世界各地的创业者、产品经理和设计师参与。这为他们提供了一个互相学习、交流和合作的平台。

优点3:提供反馈和建议:Product Hunt社区可以让创业者和产品经理获取反馈和建议,从而进一步改进和完善产品。同时,用户也可以在Product Hunt上表达自己的看法和意见,让产品更符合市场需求。

缺点1:存在竞争:Product Hunt社区的竞争很激烈,每天会有很多新产品提交,用户很难在众多产品中脱颖而出。同时,为了获得更多的曝光和投票,有些用户会采用一些不道德的手段,如买票等,这会影响系统的公正性和可信度。

缺点2:UI设计让用户比较抗拒,用起来很难受,而且操作逻辑上也存在比较大的问题,一般用户不会在众多的教程中一个个查看,而是目的性比较强的浏览这个网站,出于这个想法,设计者应该将主页设计为检索的样式或更有利于用户快速查找所需教程的设计更加合适。

缺点3:对于一些用户来说,Product Hunt的界面可能有些复杂和不直观,需要一定的学习成本。此外,Product Hunt社区是以英文为主要语言,不利于非英语母语用户的参与和交流。

改进意见

1.改善排名算法:Product Hunt的排名算法是用户评价和投票的综合结果,但有时可能会存在一些漏洞或不公平现象。为了提高排名的公正性和准确性,可以考虑引入更多的数据指标和算法模型,并加强人工审核和监管。

2.扩大产品领域:虽然Product Hunt在创新和科技领域非常活跃,但是其他领域的产品也可能有很大的市场和用户需求。为了满足更多用户的需求,可以考虑扩大产品领域和分类,吸引更多优质产品的参与。

3.提升用户体验:Product Hunt的用户界面比较复杂,对于新用户来说可能不太友好。为了提升用户体验,可以优化页面设计和交互方式,提高系统响应速度,加强搜索和过滤功能。

4.引入社交功能:社交互动是现代社区平台不可缺少的功能,可以增强用户之间的互动和交流。为了让用户更好地互动和合作,可以考虑引入社交功能,如聊天室、私信、社交媒体分享等。

5.多语言支持:由于Product Hunt社区是以英文为主要语言,不利于非英语母语用户的参与和交流。为了吸引更多的全球用户,可以考虑引入多语言支持,让用户能够使用自己的母语进行交流和讨论。

采访另一个用户

用户背景:软件工程专业大三本科生,自己想创业。
实际使用:在Product Hunt上寻找创业的灵感,学习前沿的技术应用,认识一些有想法的人。
遇到的问题:网站缺少英文翻译,在交流上可能存在障碍。
需要改进的地方:可以考虑引入多语言支持,让用户能够使用自己的母语进行交流和讨论。可以考虑引入社交功能,如聊天室、私信、社交媒体分享等。

2.2.BUG描述
bug发生时的环境

操作系统:macOS13.0
浏览器:

  • Safari版本16.1 (18614.2.9.1.12)
  • Microsoft Edge版本 111.0.1661.62 (正式版本) (arm64)
1.无登录界面

可复现性:必然发生
复现步骤:
点击登录,只显示注册界面。
请添加图片描述

Bug分析
Bug评级:☆☆
该系统将注册和登录的界面合二为一了,只能在这个界面下进行登录。

2.投票作弊(可能产生)

可复现性:可能发生
复现步骤:
更换多个账号进行投票。
由于Product Hunt系统采用了投票机制,一些用户可能会采用不正当手段进行作弊,如使用机器人自动投票或购买投票。这可能导致一些产品的排名虚高或虚低,从而影响系统的公正性和可信度。
Bug分析
Bug评级:☆☆☆☆
如果这个检验机制出问题,或者系统根本不存在这样的机制,证明这个系统存在很大的安全问题。这个问题只有在大规模投票时才会出现,因此比较难复现,所以这个bug只是一个猜测。

2.3.结论

Product Hunt:比较推荐的软件

类别评分 (满分70)
功能核心功能是否完成9/10
细节有什么为用户考虑的细节?8/10
辅助功能界面美观以及简介8/10
差异化功能软件独特的功能9/10
软件的效能运行效率,占用内存, 启动速度7/10
用户体验用户的使用体验是否良好9/10
前端交互性前端交互上有没有什么逻辑上的问题,是否存在缺陷8/10
总分上述分数相加58/70(83%)

Product Hunt是一个非常有价值和受欢迎的产品发现和社区平台。他有

高质量的产品推荐:Product Hunt拥有一个活跃的社区,包括许多创业公司和技术爱好者,他们在平台上分享和推荐高质量的产品和服务,这为用户提供了很多有价值的参考和启发。

开放和透明的社区:Product Hunt社区是一个开放和透明的平台,用户可以自由地发布和分享自己的产品或意见,参与讨论和投票,这为用户之间的互动和合作提供了很大的便利和乐趣。

专业和精英的用户群体:Product Hunt社区主要面向创业公司和技术领域的爱好者,这些用户都具有一定的专业素养和经验,他们的推荐和意见具有很高的参考价值和可信度。

不过,Product Hunt也存在一些不足之处:

社区的局限性:Product Hunt社区主要面向创业公司和技术领域,如果你想在其他领域寻找产品和服务,可能需要在其他平台上进行搜索和发现。

竞争压力的影响:由于Product Hunt是一个基于投票机制的平台,一些创业公司可能会采用不正当的手段来提高自己的排名和曝光度,这可能影响平台的公正性和可信度。

用户体验的改进:Product Hunt的界面和交互方式比较复杂,对于新用户来说可能需要一定的学习成本,此外,搜索和过滤功能也需要进一步优化和改进。

综上所述,尽管Product Hunt存在一些局限和缺陷,但它仍然是一个非常有价值和受欢迎的产品发现和社区平台,对于技术领域的创业公司和爱好者来说,它是一个不可错过的资源和平台。

所以我的综合评价是:Product Hunt是一个值得推荐的软件。

第二部分 分析(InsCode)

开发时间估计

其实个人认为要做出这样的软件需要很多的因素,例如所开发的软件的功能、规模、复杂性等等。同时,六个大学生的团队规模可以提供的人力资源,开发进度可能并不快。

在我看来,开发一个像InsCode这样的软件一般需要考虑以下几个方面:

-立项和需求分析:确定产品的目标用户、功能特点、技术架构、市场前景等方面,这个过程通常需要花费一定的时间和精力。

  • 设计和UI/UX:为了确保产品的易用性和用户体验,需要进行 UI/UX 的设计和开发,这需要考虑用户界面、交互方式、视觉设计等方面,可能需要花费几周或几个月的时间。
  • 开发和测试:基于设计和需求分析,进行软件的开发和测试,包括后端和前端开发、数据库设计、服务器架设、测试和调试等,这可能需要几个月或更长的时间。
  • 上线和运营:开发完成后需要进行上线和推广,包括网站域名注册、服务器购买、SEO 优化、社交媒体宣传等方面,这也需要花费一定的时间和精力。

总体来说,开发一款类似于 InsCode的产品需要几个月到半年的时间,具体时间取决于团队的规模、技术实力、市场竞争和用户需求等方面。但是,要注意合理安排开发时间和精力,确保产品质量和用户体验。

人员分配:人数
前端开发2
后端开发2
美工1
测试1
总计6

InsCode

这个系统功能复杂,UI设计良好,实用性和美观性都不错,由专业的人员开发可能需要2个月,但是由六个大学生开发可能需要更长的时间:

项目开发流程
立项和需求分析2周
设计和UI/UX2周
开发8周
软件测试4周
上线和运营2周
总计18周

Product Hunt

Product Hunt作为一个已经运营很久的项目,想要复刻一个一样的首先需要花非常多的精力在用户的引流和运营上,对于六名大学生来说,可能需要一个比较长时间的策划和推广,可能还需要资本方的投入,因此这个项目对于六名大学生来说可能需要半年以上的时间才能实现。

IT屋

大学生中如果有人会UI设计方面的知识,可以改善原始界面的缺陷,同时调整数据库数据的管理机制,避免数据的缺失造成页面的bug。所以这个项目对于六名大学生来说可能需要5个月以上的时间才能实现。

同类产品对比排名

满分70InsCodeIT屋ProductHunt
功能979
细节548
辅助功能968
差异化功能989
软件的效能467
用户体验749
前端的交互性648
总分493958

综合排名为:

  1. Product Hunt
  2. InsCode
  3. IT屋

软件工程方面的建议

产品名称建议总结
InsCode1、InsCode在差异化功能上优势明显。
2、由于现在该产品还处于测试阶段,用户量不够,造成模版的量也不够,社区也还没有起步。
3、系统还存在一些Bug和一些UI设计缺陷,需要在正式发布前再修改一下。
4、可以添加一些后端模板和其他的热门模版。
IT屋1、实时更新教程,更新问答库的内容。
2、增加网友在线问答功能。
3、减少广告的投入,优化一下UI美工设计,重新包装一下产品。
4、优化搜索功能,变成大小写不区分的搜索。
Product Hunt1、加强投票的审核机制,防止刷票情况的产生。
2、可以提高用户的交互性,同时也是为了更好的推广用户的产品。

BUG存在的原因分析

产品名称BUG内容原因分析
InsCode无法在我的项目中发布项目1、可能是因为软件测试没有测试好,还没有发现这个问题
2、毕竟该系统的开发人员都是相当优秀的一般不会出现这么低级的错误,由于现在属于是测试阶段,所以有可能有一些地方为了安全考虑设计了这样的机制,先试运行,后期再进行改进
InsCode前端bug1、软件测试的时候对于前端代码的极端情况测试还不够全面,导致可能会有这种极端情况发生,虽然程序还能用,但是极度影响美观。
IT屋网站中纯英文标题的教程无法打开1、大部分的教程没有更新,很多教程已经失效,或者在数据库的存储已经删去了,但是在列表里面依然存在,导致这样的问题。
2、可能在开发者设计之初就没有将这些的教程数据放入数据库,所以数据库中这些内容对应的信息本身就是空的。

竞品项目对比(Gitpod)

Gitpod 是一种基于浏览器的集成开发环境 (IDE),它提供了许多便于开发者使用的功能。以下是 Gitpod 的一些主要功能:

云端 IDE:Gitpod 提供了一个全功能的云端 IDE,可以通过浏览器在任何地方访问。

预安装环境:Gitpod 预安装了许多流行的编程语言和开发工具,例如 Java、Python、Node.js、Go、VS Code 等,让开发者能够更快地开始编码,无需在自己的机器上安装和配置环境。

自动化工作区:Gitpod 会自动创建和管理工作区,并在每次提交代码后自动销毁它们。这使得多人协作更加容易,因为每个人都有自己的工作区,不会干扰其他人。

集成 Git:Gitpod 集成了 Git 版本控制系统,可以直接在 IDE 中使用 Git 命令进行代码管理。

与 GitHub/GitLab 集成:Gitpod 可以与 GitHub 或 GitLab 集成,让开发者能够直接在这些平台上打开和编辑代码,甚至可以通过 PR(Pull Request)预览来测试他们的更改。

自定义 Docker 镜像:Gitpod 允许开发者使用自定义 Docker 镜像,以满足他们的特定需求。

即时协作:Gitpod 具有即时协作功能,多个开发者可以在同一工作区中实时编辑和交流。

集成插件:Gitpod 提供了许多插件,例如语法高亮、代码补全、调试器等,可以让开发者更加高效地编码。

现在市面上已经有很多的在线IDE,比如说Gitpod,它是跟Github合作开发的,所以在模版的数量上可以说完胜InsCode。在线编辑方面,Gitpod拥有市面上大多数IDE的选择,可选性高,可以满足不同的用户需求。

可以选择偏好的IDE。
在这里插入图片描述
可以将GitHub上的项目导入
在这里插入图片描述

点击可以跳转到Github的相应代码位置。
在这里插入图片描述
同时还带有Gitlab建立交流群等功能
请添加图片描述
Gitpod在显示报错的时候也出现了bug,显示报错内容溢出,超出显示范围。
在这里插入图片描述
相比之下InsCode提供的多是前端模版,还有社区功能。从使用体验上InsCode相较于其他云ide更容易上手,但同时也缺少了一些额外功能。另外InsCode对于国人来说十分友好,因为语言问题所以操作InsCode比其他的云IDE更有优势。

第三部分 建议和规划

市场概况

随着云计算技术的普及和发展,越来越多的开发者选择使用云IDE来进行开发工作。与传统的本地IDE相比,云IDE具有更高的灵活性、可扩展性和易用性。此外,云IDE还可以提供更好的团队协作能力,使开发者可以在一个统一的环境中共同编写和管理代码。

在程序员社区市场方面,随着全球范围内的数字化转型加速,程序员社区也越来越受到关注。开发者可以在这些社区中分享知识和经验,解决技术问题,找到工作机会和建立社交网络。这些社区也提供了大量的开源工具和资源,帮助开发者更加高效地进行工作。

未来,随着技术的发展和应用场景的扩大,云IDE和程序员社区市场将持续增长。特别是随着人工智能、物联网、区块链等新兴技术的广泛应用,将会有更多的需求和机会涌现。因此,对于从事相关行业的企业和个人而言,要不断地跟进市场动态,不断创新和提升自身能力,才能在这个市场中立于不败之地。
直接用户:一些程序员或行业大牛,以及大学生群体和自学编程群体。
潜在用户:小企业和校园项目开发团队。

市场现状

云IDE市场:云IDE市场的规模不断扩大,预计在未来几年内将保持强劲增长。据市场研究公司Mordor Intelligence的数据显示,全球云IDE市场在2019年的规模为19.1亿美元,预计到2025年将增长到42.4亿美元。

程序员社区市场:目前,程序员社区市场已成为全球最大的技术社区之一。以GitHub为例,截至2021年初,该平台上已有超过6000万开发者注册账号,并且每月有超过4000万人次访问该平台。其他类似的社区,如Stack Overflow、Dev.to等也拥有大量的活跃用户。

云IDE和程序员社区的竞争格局:云IDE市场上,Codeanywhere、Cloud9、CodeSandbox等公司处于领先地位,它们提供了丰富的功能和服务,吸引了大量的用户。在程序员社区市场上,GitHub、Stack Overflow、Reddit、Dev.to等平台是最受欢迎的社区之一,它们拥有丰富的知识库和庞大的用户群体。

总的来说,云IDE和程序员社区市场具有巨大的发展潜力,未来将继续成为技术行业的重要领域之一。同时,由于竞争激烈,市场上的厂商需要不断创新和提高自身能力,以满足用户不断变化的需求。

已有的产品定位及优劣

InsCode在线IDE的性能问题:由于在线IDE需要通过网络连接到服务器上运行,因此其性能可能受到网络延迟和带宽限制的影响。在处理大型项目或者复杂代码时,可能会出现卡顿或者延迟等问题。

InsCode云IDE的可靠性问题:由于云IDE需要连接到云服务器上运行,其可靠性也可能受到服务器宕机或网络中断等问题的影响。如果云服务器遭到黑客攻击或者数据泄露等安全问题,用户的代码和数据也可能会受到影响。

其他程序员社区的普遍问题:虽然程序员社区可以提供大量的知识和经验,但是有时也可能存在一些错误的信息或者过时的资料。如果开发者不能正确地识别这些信息,可能会导致错误的代码实现或者浪费时间。程序员社区中,有时会出现一些不良行为,如恶意攻击、嘲讽、骚扰等。这些行为可能会对用户造成负面的心理和情感影响,甚至导致用户流失。

领域阶段

在当前的竞争阶段,云IDE和程序员社区的市场竞争已经进入了白热化阶段,市场上出现了越来越多的竞争者,也涌现出了许多新的技术和商业模式。以下是当前竞争阶段的一些主要特点:

  • 市场规模不断扩大:随着云计算技术和互联网技术的不断普及,云IDE和程序员社区的市场规模也在不断扩大。据相关数据显示,全球云IDE市场规模在2020年已经达到了48.8亿美元,并且预计在未来几年仍将保持高速增长。
  • 服务功能逐步完善:在竞争激烈的市场环境下,云IDE和程序员社区厂商开始不断完善自己的服务功能,以吸引更多的用户。目前,一些领先的云IDE和程序员社区已经提供了包括代码编辑、版本管理、自动化测试、协同编程等一系列完整的开发工具和服务。
  • 技术创新不断涌现:在竞争激烈的市场环境下,云IDE和程序员社区厂商开始加强技术研发,不断推出新的技术创新,以提高产品的竞争力。例如,一些厂商开始采用人工智能和机器学习等技术,以提高代码的质量和效率。
  • 个性化服务成为竞争新焦点:在当前市场环境下,不同的开发者和行业对于云IDE和程序员社区的需求也日益多样化和个性化。因此,一些厂商开始推出针对不同需求和行业的定制化解决方案,以满足用户的不同需求。

市场与产品生态

核心用户群
  1. 开发者和程序员:这是云IDE和程序员社区的主要用户群体。他们通过云IDE和程序员社区进行编程、调试和测试,使用这些工具可以提高编码效率,加速开发周期,并提高代码质量。
  2. IT从业者:这是云IDE和程序员社区的另一个主要用户群体。他们使用这些工具来学习和研究新的技术趋势和开发方法,以保持技术竞争力并提升职业发展。
  3. 学生和老师:在云IDE和社区中学习是一个现如今比较流行和高效的学习方式,同样在教育过程中,老师也会采用这些工具来辅助教学。
产品生态

云IDE和程序员社区产品生态包括四个主要方面:云IDE和程序员社区为开发人员提供了一个基于云计算的集成开发环境,其中包括编辑器、调试器、版本控制工具、自动化测试和构建工具等。开发工具的生态系统非常丰富,包括很多开发工具和插件,这些工具和插件可以帮助程序员更高效地编写代码,包括自动化工具、代码分析器、单元测试工具等;云IDE和程序员社区通常与云计算平台相结合,包括Amazon Web Services(AWS)、Google Cloud Platform(GCP)、Microsoft Azure等。这些云平台为开发人员提供了一个在云端构建、部署和运行应用程序的环境,开发人员可以通过云IDE和程序员社区与云平台进行集成,从而更快速、更高效地进行开发和部署;云IDE和程序员社区支持多种编程语言和框架,如Java、Python、Node.js等。这些开发框架可以帮助开发人员更容易地构建和部署应用程序,并提供一些特定的功能和工具,如数据库连接、模板引擎、API集成等。同时,这些框架也可以在云平台上进行构建和部署;云IDE和程序员社区还提供了一些API接口,这些接口可以被其他应用程序和服务调用,以实现更高级别的自动化和集成。例如,GitHub提供了API接口,可以用于集成GitHub中存储的代码库和其他应用程序。这些API还可以用于构建自己的插件和扩展,以满足特定的需求。

产品规划

新功能:增加详细教程
由于InsCode有一大部分的受众是想要学习技术的人,包括学生和一些在职程序员想要学习新技术,所以对于一些热门的模型,可能有部分用户不是特别的熟悉,所以如果能在模版下增加一些教程或者是教程的链接,都可以便于用户学习新技术,新框架,变成一个一站式的网站。

NABCD模型分析
N(需求)

Need:云IDE和程序员社区的出现是为了满足技术人员在编程、开发和协作方面的需求。在当今数字化的世界中,软件开发已经成为各个行业中至关重要的一部分。云IDE和程序员社区可以帮助开发者更快速、更高效地完成编码、测试、调试和协作等工作,满足了技术人员提高工作效率和质量的需求。

A(做法)

Approach:云IDE和程序员社区采用了基于云计算和社交媒体技术的方法,通过在线访问和协作实现程序员的工作。这种方法可以极大地提高开发效率,节省开发成本,同时也方便了程序员的协作和交流。

B(好处)

Benefit:云IDE和程序员社区带来了许多好处,包括:

  • 提高工作效率和质量,减少编码和调试时间;
  • 提供高度集成的开发环境和协作工具,使得程序员可以更容易地协作;
  • 提供易于访问的在线工具,使得程序员可以在任何时间、任何地点进行开发;
  • 提供高度可扩展的开发环境,使得程序员可以使用多种不同的语言和框架。
C(竞争)

Competition:云IDE和程序员社区市场竞争激烈,主要竞争对手包括JetBrains、CodePen、Cloud9、GitHub等。这些竞争对手都提供了高度集成的在线开发环境和协作工具,并通过不断创新和改进来吸引和保留用户。

D(推广)

Delivery:云IDE和程序员社区的交付方式主要是通过互联网在线访问的方式,用户可以通过任何设备访问这些工具,包括PC、平板和手机等。此外,云IDE和程序员社区通常提供免费和付费两种服务,用户可以根据自己的需要选择不同的服务等级。

人员配置

在一个六人团队中,可以考虑以下人员分工:

一个项目经理(PM)/测试工程师(TE):负责项目的整体规划和管理,包括项目进度、任务分配、资源管理等。需要具备团队管理和协调能力,能够带领整个团队完成项目。负责测试整个系统的稳定性和可靠性,包括单元测试、集成测试、功能测试等。同时需要具备良好的测试和分析能力,能够帮助团队识别和修复系统的问题。

一个技术架构师(TA)/数据库管理员:负责整个项目的技术架构设计,包括系统架构、数据库设计、后端API设计等。需要具备较高的技术能力和架构设计能力,能够制定出合理的技术方案。

两个后端开发工程师(BE):负责后端服务端的开发工作,包括数据存储、API接口开发等。需要具备良好的编码和调试能力,能够熟练掌握后端开发所需的技术和工具。

两个前端开发工程师(FE):负责前端用户界面的开发工作,包括页面设计、交互逻辑实现等。需要具备良好的设计和开发能力,能够熟练掌握前端开发所需的技术和工具。

16周详细规划
周数任务
11、分析软件的需求和功能
2、制定项目计划和任务分配
2-31、设计和开发,包括UI/UX设计、前端开发、后端开发和数据库设计等方面
4-71、完成第一轮开发工作,进入测试阶段
2、测试人员开始进行功能测试,开发团队根据测试人员提交的bug进行修复
8-91、进行性能测试
2、测试人员继续进行功能测试
3、开发团队继续进行优化和调整
10-121、进行安全测试
2、测试人员开始进行安全测试,测试软件在各种安全威胁下的安全性和稳定性,包括极端测试
3、开发团队修复和加强安全性
14-161、进行最终修复和优化
2、准备软件发布和部署的各种准备工作
3、发布和部署软件改进版本
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值