针对软件开发的精益管理

文章转自IBMDvloprWorks。DvOps是一种精益应用程序

DvOps旨在更好地集成IT操作和软件开发,从而提高对业务更改的联合响应能力。这些业务更改可能包括对某个问题单做出响应或者提供业务所需的新服务。DvOps旨在完成以下目标:

缩短某个更改请求变成可接受响应的时间。

减少实现更改服务而浪费的时间和精力。

在从操作到开发再到部署的整个阶段中实现更加流畅的请求。

平衡企业解决需求的能力。

这和采用精益计算原理(称为精益技术)的目的相同。可以将精益技术描述为一种思维方式和一组技术集合,它们可用于管理和改善端到端周期时间(或交货时间),并充分利用某个企业的能力来优化整个流程的资源流(库存)。

LordKlvin提供了一个人们所熟悉的短语“测量就是为了发现”,通过测量来了解精益可视化技术(如价值流程图(valustramingmapping),包含产品流测量)带来的影响。流测量包括对库存进行端到端(黑盒)和分步(白盒)测量,测量流程时间,以及成品花费在存货阶段(等待处理)的时间。

这里进一步扩展DvOps最初的定义范围,包括了以下原则:

DvOps代表企业实现持续软件交付的能力,使企业能够抓住市场机遇并缩短客户反馈时间。

它跨生命周期并跨企业地扩展了精益和敏捷概念,在所有环节实现了更丰富的反馈周期。

在整个企业范围实现精益转换能够支持更高效的交付,持续的反馈则有助于更有效地确定工作方向。

采用DvOps帮助企业在实现交付速度和可靠的结果之间取得平衡。

从这一点来看,可以推断出以下结论:

DvOps旨在精简扩展后的包括软件在内的生命周期,比如:

IT:从问题识别到成功解决。

实现持续工程:从嵌入式软件规范到成功的集成。

产品开发:从最初的理念到成功推向市场。

服务交付:从提出业务要求到令客户感到满意。

DvOps就是将精益原则和实践应用到这些方面。

过去,精益原则一直应用于制造业、后台流程和物流业。这些流程具有更好的可预测性,与DvOps所支持的流程相比缺少变化。对软件(Poppndick和Poppndick,)和一般性知识工作(Odgard,)应用精益原则并不是什么新鲜事物。本文对已有的实践做法进行了扩展,将DvOps作为一种以工件为中心的业务流程,这样就可以将精益实践和测量顺利应用到DvOps流程。

在应用精益实践和原则时,必须增强流测量以检测瓶颈和低效率事件,从而找到机会进行改进并采取措施。以工件为中心的一个关键优势是可以很容易地指定和增强流测量。

以下小节介绍了这种以工件为中心的观点以及为什么应用于DvOps。您将了解到如何应用它以指定流测量。本文最后概括性介绍了两种关键使用模型:项目指导(programstring)和持续改进。

DvOps是一种以工件为中心的流程

您可以通过两种方式呈现一个流程:

以操作为中心:将按照执行流程以最终创建产品所需的操作以及它们的顺序描述流程,可以通过流程图或IDEF图进行描述。

以工件为中心:用最终的产品和它们的生命周期描述流程。最终的产品被作为状态机对待,它们将进行状态转换。通过状态转换获得成品,以这种方式指定每一个流程步骤。

所有流程都会让最终的产品完成它们的生命周期。以工件为中心的观点将描述要做的工作,而以操作为中心的观点则会描述完成工作要做的步骤。例如,在定义一个软件开发流程时,以工件为中心的观点将会描述完成一个代码模型需要做些什么;比如必须减少代码、构建代码并成功通过系统集成测试。程序员需要完成从“设计”到“创建”代码模型的工作,而不是具体告诉他们要采取哪些步骤来完成从“设计”到“创建”的转换(打开一个IDE,创建一个文件,编写代码,进行一次代码审查,运行单元测试,统计bug等等)。程序员(事实上包括所有知识工作者(knowldgworkrs))都讨厌被告知如何完成自己的工作。实际要做的步骤以及每个步骤所需付出的努力都是无法提前预知的。知识工作涉及太多变化因素,因此难以实际预测每个具体步骤。

精益技术通常应用于需要处理相同或非常类似的成品的流程,如制造业。事实上,这些流程的目标是最小化产品输出的差异变化。以操作为中心的观点很适合此类流程。如果您要生产某种灯泡,那么每个灯泡都是相同的,因此每个流程步骤都可以提前指定。如果要处理问题单或业务请求,由于每一个问题单或业务请求都是不同的,因此实际操作步骤也会因此不同。有时,工作人员需要查询日志,装入内核转储(krnldump),努力重现问题,添加一个新的跟踪并运行新的测试脚本,亦或者什么都不需要做。因此,要对DvOps应用精益原理,您必须考虑到成品(工件)和流程的差异性,需要采取以工件为中心的观点。

对以工件为中心的流程采取价值流程图

其中一种重要精益转换技术就是价值流程图,如图1所示。在学会观察:通过价值流程图来提高价值和消除MUDA(Rothr,Shook,Womack,Jons,年)一书中,您可以了解价值流程图(VSM)在实现转换时的应用及其指标。您可以通过许多方式使用VSM:

使用VSM帮助所有相关人员原样呈现成品流程。

使用流程测量找出在哪些位置浪费了时间和精力,并设置基准和目标。

使用流程内(in-procss)测量来判断是否能够通过提高效率来打破瓶颈,比如实现自动化或消除无价值的行为,或增加处理能力。

利用这些信息确定一个具有更加流畅流程的潜在VSM。

计划并实现必要的更改,从当前VSM迁移到目标VSM。

持续进行改进。使用测量来监视流程并按计划做出调整。

图1.一个简单的价值流程图

图1是一个简单的价值流程图例子。它显示了流程步骤和每个步骤的时间。通常,每个流程步骤都关联了执行流程所需操作的详细描述。比如,用于制造流程的操作描述可能是以下步骤:

从库存中取出零件。

检查零件的毛边。

将部件放到钻床钩子中。

以15毫米为间隔,钻出洞1和4。

更改为22毫米间隔。

钻出洞2和洞3。

拆除零件。

使用钢丝网对洞进行抛光。

图1使用了以下符号:

最左侧的架状图标显示零件库存,零件将经历整个流程。

I图标表示库存的零件数量。

虚线箭头为拉出箭头(pullarrow),表示步骤1首先由工人从库存中取出一些部件。

其他箭头为推送箭头(pusharrow),表示完成一个步骤的员工将工作推进到下一步骤。

要对以工件为中心的流程应用价值流程图,首先要识别出流程工件。每个工件具有自己的生命周期,即工件从开始到完成需要经历一些不同的状态。

例如,一个简单的业务请求状态模型包括以下阶段:

提交

批准

开发

部署

客户评估

关键点在于对于以工件为中心的工作,流程步骤涉及到状态转换的过程。

具体地讲,价值流程图中的流程块表示将工件从一个状态推进到下一个状态所做的工作。对于这种情况,流程步骤与操作描述并没有关联,而是与完成状态转换的标准规范有关。

采用这种方法有两个优势:

它描述了要做的工作,而不是如何完成工作。

它真正地捕捉了价值。价值大致是在工件遍历其生命周期的过程中产生。

有了这种映射后,库存就是指给定状态下工件的数量,而时间则根据工件转化为给定状态所需时间的统计趋势测定。这些测量将在下面的小节中介绍。

要创建价值流程图来更加忠实地描述DvOps团队如何工作,需要一个更详细的状态模型。对于价值流程图,有两种工件状态:

流程状态:经历一次状态转换,具有多个指定资源的其中一个。

等待状态:处于积压状态,等待团队挑选并被分配一个资源,从而实现状态转换。

以这个DvOps为例。设想一个业务分析师决定是否存在新Wb服务需求。分析师将特性提交给IT组织,后者为它分配一个优先级并置于积压状态并等待开发。在某些时候,开发经理将选择该项工作,这样整个软件流程就会开启。在这个例子中,这被当作完全封装的子流程。最后,开发出带有该特性的新应用程序并等待IT部署。现在这项工作处于IT积压状态。当IT选择了这些工作后,它会再次进入等待状态,这一次将等待来自分析团队的客户反馈。这个示例的最终状态就是该特性被交付给客户并完成评估。

对于一个软件应用程序的新特性,这个例子可以具备以下流程状态模型:

提交以分配优先级(等待状态)

进行考察(流程状态)

获得开发许可(等待状态)

工作(流程状态)

完成(等待状态)

部署(流程状态)

部署(等待状态)

客户评估(流程状态)

完成客户评估(最终状态)

在本例中,价值流程图类似于图2所示。

图2.DvOps的价值流程图示例

在这个价值流程图需要注意的地方是:

流程块与状态转换是对应的。

库存或积压表示等待状态中的工件。

团队从他们的积压工作中取出工件并推入到下一个团队的积压工作中。

推入操作可以并且经常来自于上游。例如,在部署阶段未通过测试的一个新特性将被重新推入到开发积压工作中。

注意,使用价值流程图并不以任何方式暗示这是一个瀑布流程。然而,您可以使用价值流程图表示不同流程之间固有的低效性。例如,在一个典型的瀑布流程中,工件将被堆叠到一组积压工作中,等待进入下面的阶段。例如,收集所有代码等待进行系统测试。价值流程用于理解工作在流程中的进行情况,不管团队使用什么流程。

测量

如图3所示,在价值图中可以找到两种测量:

流测量:解释工件如何经过状态转换。这些测量包括端到端(lad)时间,流程中每个状态的时间(底部的线),以及字母I开头的每个状态(符号)中工件的数量。

流程状态测量:描述团队在实现状态转换过程中的效率。这些测量将检测是否因为处理能力不足或流程效率低下而引发瓶颈问题。流程块中的黄色方框提供了有关流程低效性的测量。

图3.价值图上的测量

流和流程测量是一前一后使用的。流测量用于找出需要







































北京治疗白癜风一般多少钱
北京看白癜风去哪家医院最好


转载请注明地址:http://www.yujinxiangqiangzhi.com/rjdz/10116.html


  • 上一篇文章:
  • 下一篇文章:
  • 公司简介 广告合作 发布优势 服务条款 隐私保护 网站地图 版权声明