软件开发中的“左移”是什么意思?

2024-04-20 20:36
文章标签 意思 软件开发 左移

本文主要是介绍软件开发中的“左移”是什么意思?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我曾经有过一个经理,在讨论我们的项目时提到,我们需要尽可能地将我们的工作左移

几个月后,在一次面试中,面试官问我是否知道“左移”是什么意思。

除非有人没告诉我一个秘密的软件舞蹈,我现在就来告诉你左移是什么意思。

(本文视频讲解:java567.com)

在软件开发中左移是什么意思?

左移是一个技术术语,意味着尽早在你的软件项目生命周期中尝试识别问题。

'左’表示项目的开始,这个短语的意思就是“让我们尽可能早地发现我们的问题、阻碍和困难”。

软件开发生命周期

假设你在一家银行开始了一份新的软件工程师的工作。

你的软件开发生命周期可能如下所示:

image-110示例软件开发生命周期

  1. 首先,产品经理提供需求。
  2. 然后由业务分析师完成这项工作的分析。
  3. 为 UI 的外观创建设计。
  4. 开发人员现在做自己的规划。
  5. 然后开发人员开始工作!
  6. 逐步构建功能并进行测试。
  7. 项目在通往生产环境的过程中经过各个环境。它通过了开发、测试。它到达了预生产环境,并发布到生产环境。
  8. 项目进入维护期。您检查日志中的任何问题,修复任何出现的错误。

在这个周期中,将我们的工作向左移的一些示例可能包括以下内容:

  • 技术团队检查需求,以确保可以在预期的时间内完成所有要求的内容。
  • 架构师在规划阶段早期介入,试图制作技术文档并发现开发人员可能面临的任何边缘情况或问题。
  • 设计师可能根据设计制作基本原型,以明确期望的内容。
  • 当开发人员进行规划时,他们有足够的时间进行彻底的审查。这不是一个简短的 15 分钟会议。他们被期望制作类图、代码架构改进、准确的估算,他们为他们的单元测试套件制定计划,并确保相关文档得到更新。
  • 测试人员进行手动测试,以及自动化测试。他们像真正的用户一样使用软件!

我们通常在何时发现问题?

让我们想想在项目中常见的捕获错误的时间。试着想想你何时更愿意发现问题。

  • 在项目结束时,当所有代码都已编写并且已经发布到生产环境 2 周时
  • 当您将其发布到预生产环境时
  • 测试环境的测试人员
  • 开发人员正在编码中间时
  • 开发人员正在进行规划时
  • 设计正在创建时
  • 架构师正在制作他们的架构图时
  • 产品经理正在指定需求时

在这个时间线上,您可以最轻松地对问题做出响应,减少最少的时间,并迅速纠正问题的地方是在最开始。通过将工作向左移动,您可以帮助团队达到这个目标。

有许多方法可以捕获错误

左移是一个短语,但它基于一个整体方法,帮助我们尽早发现问题,实现快速迭代周期来交付软件。

那么,还有哪些步骤我们可以尝试来帮助我们将工作向左移

除了更好地规划事物之外,我们还能做什么?

  • 您可以对代码库进行语法检查,捕获拼写错误、常见错误和不良设计。
  • 您可以在您认为有益的代码库部分引入类型检查。
  • 您可以增加单元测试覆盖率。
  • 您可以增加集成测试覆盖率。
  • 您可以在团队中引入代码质量保证。
  • 您可以为部署引入日志记录和度量警报。

只需记住,您的项目流程越深入,从错误中恢复的难度就越大。尽可能在最左侧捕获问题!😉

因为如果您的团队找不到错误,您可以肯定一个用户会找到。

结论

我希望这对你有用,并解释了“左移”是什么意思。尝试将这种思维方式融入到你的开发生命周期中,看看会发生什么。

(本文视频讲解:java567.com)

这篇关于软件开发中的“左移”是什么意思?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/921253

相关文章

Maven创建项目中的groupId, artifactId, 和 version的意思

文章目录 groupIdartifactIdversionname groupId 定义:groupId 是 Maven 项目坐标的第一个部分,它通常表示项目的组织或公司的域名反转写法。例如,如果你为公司 example.com 开发软件,groupId 可能是 com.example。作用:groupId 被用来组织和分组相关的 Maven artifacts,这样可以避免

【软件工程】软件开发模型

三、瀑布模型  四、几种软件开发模型的主要特点 题目 判断题 选择题 小结

? extends T 和 ? super T分别是什么意思?有什么不同?

<? extends T>首先你很容易误解它为继承于T的所有类的集合,这是大错特错的,相信能看下去你一定见过或用过List<? extends T>吧?为什么我说理解成一个集合是错呢?如果理解成一个集合那为什么不用List<T>来表示?所以<? extends T>不是一个集合,而是T的某一种子类的意思,记住是一种,单一的一种,问题来了,由于连哪一种都不确定,带来了不确定性,所以是不可能通过add

路由器的Loopback地址是什么意思?

本地环回接口(或地址),亦称回送地址(loopback address)。 此类接口是应用最为广泛的一种虚接口,几乎在每台路由器上都会使用。常见于如下用途: 1 作为一台路由器的管理地址  系统管理员完成网络规划之后,为了方便管理,会为每一台路由器创建一个loopback 接口,并在该接口上单独指定一个IP 地址作为管理地址,管理员会使用该地址对路由器远程登录(telnet )

集成电路学习:什么是SDK软件开发工具包

SDK:软件开发工具包         SDK,即Software Development Kit(软件开发工具包),是一套由软件提供商或其他组织提供的开发工具集合。这些工具旨在帮助开发者更快速、更便捷地创建、测试和部署软件应用程序。以下是对SDK的详细解释: 一、SDK的定义与组成         定义:SDK是一套包含编程工具、代码示例、技术说明文档、调试和测试工具等内容的软件包,有

从知识视角理解软件开发

软件构造中的核心知识:业务知识与架构知识 在软件构造过程中,最关键的两类知识是业务知识和架构知识。业务知识回答“什么是正确的软件”,而架构知识解决“如何正确地构造软件”。从这两个方面深入理解软件构造,可以帮助我们在设计和开发过程中做出更明智的决策。 1. 业务知识:定义正确的软件 业务知识是关于如何解决现实问题的知识,包括业务的目标、规则、限制、和已有的解决方案。它定义了“正确的软件”是什么

第二章 可行性研究与软件开发计划简记

第二章  可行性研究与软件开发计划 可行性研究的任务:回答所开发的软件系统有无可行的解决办法或者这个系统值得开发么。 可行性研究大体可分为三个大的方面:工艺技术、市场需求、财务经济状况。 可行性研究的目的:就是尽可能的用最小的代价在尽可能短的时间内确定问题是否能解决。 可行性研究的解决方案:一般集中在 1.技术可行性2.经济可行性3.操作可行性。

软件工程技术专业软件开发综合实训室解决方案

一、行业背景与前景分析 1.1 软件工程技术专业就业前景 近年来,中国的软件行业取得了显著的成就,即便在全球经济受到新冠疫情冲击的情况下,仍保持了强劲的增长势头。据工业和信息化部发布的数据,2021年我国软件和信息技术服务业的业务收入达到85371亿元人民币,同比增长18.3%,远超同期国内生产总值的增长率。这一成就不仅体现了中国软件行业的韧性和发展潜力,也为未来的持续增长奠定了坚实的基

软件开发教学:基于数字药店系统源码的医保购药APP开发策略

本篇文章,小编将详细探讨基于数字药店系统源码的医保购药APP开发策略,并提出一些开发中的关键技术要点。 一、数字药店系统源码的功能概述 数字药店系统源码是构建在线药店的基础,它集成了药品信息管理、订单处理、支付系统、用户管理等核心模块,旨在实现药品销售的全流程数字化。一个典型的数字药店系统包括以下几个主要功能: -药品信息管理:支持药品分类、库存管理、药品搜索和详细展示。 -订单管理:

【Get深一度】小波分析概念3——正则性是什么意思,通俗解释

正则性英文是regularity,正则性一般用来刻画函数的光滑程度,正则性越高,函数的光滑性越好。通常用Lipschitz指数k来表征函数的正则性。 度量函数的正则性时,消失矩的概念是重要的,若消失矩的阶数小于正则性指数,这是小波度量不出该