软件工程 案例分析作业——Inscode

文章详细评测了在线代码运行平台InsCode,发现了首页搜索框响应问题、项目标题空白符过滤不全、‘清空通知’功能缺失等BUG,并提出了改进方案。分析了开发时间、同类产品对比和市场竞争状况,建议加强测试、优化功能并规划新功能,如自动错误检测和修复工具。
摘要由CSDN通过智能技术生成

软件工程实践——软件评测

课题A)Inscode - coding with inspiration
这个作业要求在哪里软件工程 案例分析作业
这个作业的目标完成软件调研评测、软件分析、针对软件提出建议和规划
其他参考文献《构建之法》

第〇部分 BUG量化标准

级别描述
四级导致系统奔溃,服务器宕机,数据库被破坏,致命性的安全漏洞,基础功能严重错误
三级主要体现基础功能逻辑出错,数据不正常,页面超时。服务器鉴权漏洞或重要数据泄露
二级重复多余的功能,页面排版混乱提示信息不全,用户体验差,优化方案
一级凡以上未提及但是不影响正常使用的情形

第一部分 调研,评测

1. InsCode
1.1 体验

介绍: InsCode是一个在线代码运行平台,可以在线上运行代码,并且支持多种语言,同时还可以在线修改和提交代码,支持发布和分享项目。


软件使用: 主要对功能和性能进行评测。


首页: 此为InsCode登录后的默认页
在这里插入图片描述
评价: 风格比较简约,看着比较舒适。内容分块明确,圆角边框让人觉得舒适。但是在功能方面,搜索框中的ctrl k似乎没有什么用,作为用户并不能够明确该快捷键是用来干什么的,以为是搜索按钮的快捷键但是测试发现并没有反应。

改进建议: 建议在鼠标指针悬浮时能够提示这个快捷键的作用,或者在用户第一次使用时明确告知用户快捷键的功能和效果。


消息框: 点击右上角小铃铛后出现
在这里插入图片描述
评价: 风格还是不错的,但是在内容上不是特别友好,对于同一个用户的操作未进行归并,比如被同一个用户恶意重复关注取关就会产生大量的记录消息,以及自己关注取关他人也会产生过多的记录。
改进建议: 建议对同一用户的连续相同操作进行归并整理。


项目运行和管理: 此为项目创建运行以及我的项目页
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
评价: 外观风格还是不错的,排版不会拥挤;功能上,用户能够快速创建一个项目,使用起来也比较方便。
改进建议: 运行速度还是有待提高。


动态页面: 此为用户动态页面,用户可以在页面下方进行评论,可以收藏、运行项目。
在这里插入图片描述
在这里插入图片描述

评价: 外观风格还是可以,显示的信息比较全面。但是评论后,展开的评论就立马收回了,而且评论的风格有点简陋。
改进建议: 建议用户评论后仍然保持展开的评论,并且对评论的样式风格进行一定的美化,而不是简单的文本布局。


采访:
请添加图片描述


综合评价:

  • 【优】InsCode在外观上看还是挺令人感到舒适的,所有页面的风格也统一。
  • 【优】支持用户多途径登录,尤其是可以使用CSDN登录,在CSDN已经登录的情况下无需再次扫码登录。提供了很多的便捷。
  • 【优】内容上比较丰富,也提供了很多模板,提高创建项目的速度。在交互上设置用户使用引导,并且图标设置合理清晰,能够使用户快速上手网站的使用。
  • 【优】项目不占用本地内存,有项目交流的区域,设置项目审核的机制,减少了“垃圾”项目的存在净化了社区讨论的环境。
  • 【缺】用户基数不够,活跃度不高。
  • 【缺】在一些基本功能的细节方面处理的不够到位,降低了用户体验舒适感,比如评论后会收回展开的评论,以及评论二级评论,对方不能收到评论的消息提醒等。
  • 【缺】参数过滤还是不够完善。
1.2 BUG
1.2.1 首页输入框出现无法响应的问题【四级】
  • Bug发生时的测试环境: Windows 10 家庭中文版 Microsoft Edge浏览器。

  • Bug的可复现性及具体复现步骤:
      可复现性: 概率发生(50次出现了29次)。
      复现步骤:
    在这里插入图片描述

  • Bug具体情况描述:
    多次点击搜索后概率出现无法进行下一次有效搜索【可以结合地址栏发现参数并未传入】,必须F5刷新网页后才能恢复
    在这里插入图片描述

  • Bug分析:
      可能原因: 检索数据库的过程中还未有返回结果就进行下一次搜索会造成参数缺失,函数功能卡顿或一直等待上一次结果值的情况,造成无法进行下一次搜索。
      解决方案: 可以先获取用户输入,过滤输入的参数,然后进行数据库查询,可以先让用户等待禁止再次键入,或者用户进行下一次搜索时立马停止上一次的查询。

1.2.2 项目标题空白符并未实现完美过滤【三级】
  • Bug发生时的测试环境: Windows 10 家庭中文版 Microsoft Edge浏览器。

  • Bug的可复现性及具体复现步骤:
      可复现性: 必然发生。
      复现步骤: 复制“ㅤ”粘贴后点击保存

  • Bug具体情况描述:
    根据输入空格被过滤,可见在功能上是希望实现对空白符号过滤的,然而输入“ㅤ”,这个特殊空白符并未实现有效过滤。
    在这里插入图片描述

  • Bug分析: 可能原因:在过滤的正则表达式上遗漏了部分特殊空白符。解决方案:扩充过滤的字符串,修改过滤的匹配规则。

1.2.3 “清空通知”功能未实现问题【四级】
  • Bug发生时的测试环境: Windows 10 家庭中文版 Microsoft Edge浏览器。

  • Bug的可复现性及具体复现步骤:
      可复现性: 必然发生。
      复现步骤: 如下图所示在这里插入图片描述

  • Bug具体情况描述:
    点击“清空通知”并未实现该功能。
    在这里插入图片描述

  • Bug分析:
      可能原因: 接口配置出错或者未配置相关接口。
      解决方案: 对接口进行测试,重新对接接口。

1.2.4 空白字符串内容回复出错【四级】
  • Bug发生时的测试环境: Windows 10 家庭中文版 Microsoft Edge浏览器。

  • Bug的可复现性及具体复现步骤:
      可复现性: 必然发生。
      复现步骤: 在回复输入框中输入空格,点击回复。可以再点击取消,然后继续在输入框中键入。

  • Bug具体情况描述:
    在回复输入框中输入空格,点击回复发现一直不成功,点击取消后再次点击输入框依然无效。回复按钮无法响应处于一直加载的状态。
    在这里插入图片描述

  • Bug分析:
      可能原因: 在数据预处理中出现卡死或者存储数据库时空白字符的字符串出现问题。

1.2.5 二级回复并未实现通知也未指明回复对象【二级】
  • Bug发生时的测试环境: Windows 10 家庭中文版 Microsoft Edge浏览器。

  • Bug的可复现性及具体复现步骤:
      可复现性: 必然发生。
      复现步骤: 回复他人的二级回复。

  • Bug具体情况描述:
    在他人发布项目下回复他人的二级回复(回复下的回复),输入框提示有显示“@你所回复的人”。但是回复后,展开的回复立马收起而被回复者(二级回复者)并未收到你回复的通知。

  • Bug分析:
      可能原因: 并未实现该功能或者通知接口出现问题。

1.3 结论

  体验下来,整体界面布局还是不错的。但令我意外的是像“清空所有消息”这种功能竟然没有实现,不清楚是不是我对这个功能有什么误解还是真就压根没有用。而且首页的全局搜索框虽然对参数进行了过滤但是却会发生频繁搜索后失效的问题。
  再者,既然有做到参数过滤,对空白符号有一定的处理,那么这种处理就应该是完善的,而不应该出现项目名称用特殊空白符能够通过过滤,也不应该出现空白符评论造成评论卡死失效的问题。
  在主要功能方面,确实为用户提供了便利,相应的图标和简洁的布局使用户能够快速上手,核心的功能还是很不错的。

类别 评分 (满分 10 分, 良好 8 分, 及格 6 分,聊胜于无 3 分, 很差 1 分)
功能 核心功能9
细节参数过滤是否全面具体?在用户对二级评论回复时为何收起已展开的评论?5
用户体验操作简单,登录方便,没有过多的广告,界面整洁9
辅助功能界面布局美观7
差异化功能这个软件独特的功能. 它对用户的吸引力有多大?8
效能占用内存, 启动速度, 内存泄漏情况9
总分率满分60 用现有分数/60计算而得78.33%

我的结论是:好,不错!

第二部分 分析

1. 开发时间估计
1.1 项目开发流程表

  已知开发团队人数为6人左右,并且都是计算机专业大学毕业生,在有专业UI和ChaGPT等技术的支持下,使得完成此软件的所有功能所估计的开发时间如下表所示:

阶段任务预计时间
1需求分析和设计3周
2UI设计3周
3前端开发6周
4后端开发5周
5测试和调试3周
6发布和部署1周
1.2 项目开发时间预估理由
  1. 项目规模和复杂程度: 项目规模还是比较大的,复杂程度也较高,要实现在线项目管理不是一个简单的事。因此在对需求分析和设计方面需要花费较多时间以保证后续工作的效率。

  2. 开发团队的技能水平: 开发团队的技能水平会影响开发时间预估。若项目中的开发成员经验水平不高,那么开发速度必然受到限制,而大学毕业生如果没有较多实践经历,那么开发速度也是比较慢的会遇到很多问题,因此开发时间上的时间要比有经验的老手来的长的多。

  3. 工作流程和工具: 高效的工作流程和适当的工具可以加快开发的速度。而工具的选取和流程的安排其实也涉及到团队的技术水平的高低。如果选对了工具,那么开发速度将能有大幅的提升。

  4. 可用资源: 可用资源,包括人力、物力、财力等,也会影响开发时间预估。 一个项目是需要时间和人力以及金钱作为支撑的,而大学毕业生在这方面的资源比较欠缺,因此开发速度受限。

  5. 可用技术和第三方组件: 选择合适的技术和第三方组件可以加速开发进程。 现有诸多的框架以及教程还有ChatGPT这类工具和技术能够大幅加大开发速度,提高开发效率,提供更多的开发思路和技巧。

2. 同类产品对比排名

  InsCode: 在功能和外观上,水平都还不错,但是仍然存在一定的缺陷,使用方面配合CSDN能够提供诸多的遍历和快捷,可以配合GitCode一起使用。
  IT屋: 主要是信息的收集整合分类,提供诸多教程,但是缺少互动性,更像是一个字典供人查找翻阅。
  Product Hunt: 是一个分享新产品的社区,里面汇聚了来自世界各地Idea,内容丰富多样。


  排名:

  • 国内网络稳定性以及性能:Inscode ≈ IT屋 > Product Hunt
  • 市场竞争力:InsCode > Product Hunt >IT屋
  • 用户态体验:Product Hunt > InsCode > IT屋
  • 综合:InsCode ≈ Product Hunt> IT屋
3. 软件工程方面的建议

  在测试方面,测试出了不少的问题,可见在测试阶段和工作上应该增加时间经历。在功能上出现了部分功能压根就不起作用的严重问题,应该做好需求分析,也要选择更为恰当的管理模式,因为这些错误可能是在交流对接过程中出现了问题。此外,要加强前后端的交流和对接,避免认知偏差,误解等现象的出现。

4. BUG存在的原因分析
  1. 测试样例可能不完备,选取的样例不充分不合理,造成部分数据仍然存在问题。
  2. 测试不充分,在次数方面可能没有重复测试。
  3. 前后端对接可能存在问题,导致部分的功能并未实现或者有问题。
  4. 开发人员经验问题/思维严谨性导致,部分需求可能未被很好的实现。

第三部分 建议和规划

1. 市场概况

了解市场概况:为了提高这个软件/网站/服务,在竞争中胜出,首先需要了解目标市场,并且了解市场规模和增长趋势。这可以帮助我们更好地定位产品和服务、制定市场策略、识别机会和挑战。

编程项目技术分享类的网站市场是相当大的,并且一直在不断增长。随着科技的发展和数字化转型的需求增加,越来越多的开发者、程序员和技术爱好者都需要在这些网站上获得高质量的、实用的编程知识和有效的学习资源。

具体到用户数量方面,以下是一些可能适用于该类型网站的概括性数据:

  1. 直接用户数量:虽然无法确切测量技术分享网站的用户数量,但我们可以通过一些流行的技术分享网站的访问量来推断出它们有多大的用户基数。例如,像Stack Overflow、GitHub、codecademy等知名技术网站每个月的访问量都在数千万甚至上亿级别,显示出了该领域的巨大吸引力。

  2. 潜在用户数量:由于技术分享网站可以为没有编程经验的新手提供入门机会,同时也为经验丰富的开发者提供进一步提高技能的机会,因此其潜在用户数量很大。这包括技术公司的员工、自主学习者、教育机构中的学生和老师等等。

  综合来看,编程项目技术分享类的网站市场正在不断扩大,用户数量也在逐步增加。如果打算在这个市场上开发一个项目,建议深入研究目标用户群体,了解他们的需求和兴趣点,并提供有价值且易于使用的知识分享平台,以吸引更多的用户并获得市场份额。

2. 市场现状

目前市场上有很多编程项目技术分享类的网站。以下是一些常见的产品:

Stack Overflow: 作为目前最大、最受欢迎的技术问答社区,Stack Overflow 汇集了全球各地的程序员和开发者,提供了丰富的技术内容、问答互动等服务。

GitHub: 以开源代码托管平台为主,提供了强大的版本控制、协作开发等功能,极大方便了程序员和开发者之间的协作与交流。

Codecademy: 作为在线学习平台,Codecademy 开始时主要提供基础的编程语言学习课程,现已拓展到更广泛的计算机科学和数据科学领域。

FreeCodeCamp: 通过教育和公益事业相结合的方式,FreeCodeCamp 提供了一系列的 IT 课程,旨在为有志于成为自由职业者的人们提供培训机会。

Udacity: Udacity 是另一款在线学习平台,不仅提供编程语言和计算机科学课程,还包含了诸如人工智能、大数据分析等高级课程。

  每个产品的定位、优势和劣势都不同。例如,Stack Overflow 的优点是数量庞大的问答库、丰富的社区互动和支持多种编程语言等;而劣势可能在于不直接提供在线教育服务。相反,Codecademy 和 FreeCodeCamp 专注于在线教育领域,但缺少 Stack Overflow 那样大规模的技术问答板块和成熟的协作平台。

  这些产品之间存在一定的竞争关系,因为它们的服务对象和功能有很大的重叠,甚至有些边界模糊。例如,Codecademy 和 Udacity 在一些高级编程语言学习方面有重点关注,因此会直接竞争。而其他产品则在其优势领域内巩固市场位置,如 GitHub 的开源代码托管地位。

  总体来说,编程项目技术分享类的网站属于成长阶段,其用户数量和市场份额仍然在快速增长。然而,由于竞争激烈,每个产品都需要在市场中找到自己的特色并保持不断创新。

3. 市场与产品生态

  Inscode 的核心用户群体主要包括开发人员、软件工程师和技术团队等。典型用户是那些需要频繁编写代码以提高工作效率和代码质量的人群,其学历可能涵盖从高中毕业到硕士及以上各阶段,年龄也可能跨越不同阶段,但一般集中在20岁至50岁之间。

  由于 Inscode 能够解决编码过程中的重复性劳动和错误率高的问题,因此它的潜在需求在于节省时间和改进代码质量。对于一些忙碌的工作人员和团队来说,这个需求更为迫切。在表面需求方面,Inscode 用户往往需要一个能够支持多种编程语言和开发环境的工具,同时为其提供智能化的建议和优化选择。

  Inscode 的用户群体之间存在紧密联系,因为他们通常都在相同的领域和行业从事着类似的编程工作。因此,有利用他们之间相互作用二次构成特定用户生态的可能性。例如,Inscode 可以针对不同的编程语言或开发环境,提供适合该特定领域的自动化代码生成和相关服务,以满足不同用户的需求。

  在子产品方面,Inscode 可以通过与开发环境、集成开发环境(IDE)、DevOps 工具等相互配合,提供更完整的自动化服务,进一步拓展其覆盖范围。同时,Inscode 还可以与其他 AI 技术相结合,比如机器学习模型调整、智能推荐等,实现更高级别的功能和优化措施,构建完整的产品生态系统。

4. 产品规划
4.1 新功能设计: 自动错误检测和修复工具。

理由: 在编写代码时,常常会因为一些小问题导致代码出现 Bug,这不仅降低开发效率还会影响产品质量。而自动错误检测和修复工具可以帮助程序员在编码过程中快速识别和解决问题,提高代码的可读性和可维护性,进而提升产品质量和生产效率。

4.2 用户使用我们的产品/功能可能有以下几方面的优点:
  1. 提高生产效率: 自动错误检测和修复能够让程序员更快地完成编码工作,提高生产效率。

  2. 提高代码质量: 避免漏洞和错误等问题,提高代码质量,降低出错率。

  3. 方便易用: 功能简单易懂,容易上手操作。

  4. 创新点: 自动错误检测和修复工具是传统 IDE 工具无法替代的创新功能,可以帮助用户快速定位代码错误并及时完成修复,提高开发生产效率。

4.3 NABCD分析:

1. 需求(Need): 程序员需要一个能够较好处理代码出现错误的工具,在短时间内定位和修复问题。

2. 可得性(Access): 新功能集成在已经被广泛应用的 Inscode 软件中,可以便捷地得到。

3. 收益(Benefit): 自动错误检测和修复功能能够提高生产效率、代码质量并方便用户使用。

4. 不确定因素(Cost): 新功能的运行成本和维护成本需要消耗一定的资源支持。

4.4 人员配置建议:

  开发工程师 * 3: 负责核心功能开发及系统优化,人数较多主要是为了保证时间进度。

  测试工程师 * 1: 负责测试新功能稳定性和可靠性,保证产品质量。

  UI 设计师 * 1: 对用户界面设计进行优化,使 Inscode 更加美观易用。

  运营专员 * 1: 负责新功能推广、宣传等运营工作,增加新功能的曝光度和用户参与度。

4.5 周计划设计:
编号这个作业属于哪个课程时间安排
1需求调研和规划,准备开发环境。第1-4周
2开始开发自动错误检测和修复工具。第5-8周
3集成测试和功能优化工作。第9-12周
4新功能测试和 bug 修复等问题。第13-14周
5上线前收尾各项工作完成。第15周
6新功能上线并发布。第16周
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值