如何压缩时间?

手表是衡量我们行业任务的传统方式。 让我们计算一下时钟中使用了多少个指标。

首先,最重要的时间是我们放在客户端上的时间。 根据情况,我们要么提前约定时间,要么设定事实-程序员花费了多少。

第二个小时是程序员打电话给他们的,回答了“您需要多少时间来解决问题?”的问题。 如果我们事先与客户达成协议,那么这些手表将被出售。 如果在事后付款,则出于计划目的,我们请程序员进行评估。

第三个小时-程序员实际上在解决问题上花费了多少。 这款表很少与他本人称为的计划编号相吻合,这是正常现象-没有人知道如何精确地计划自己的时间,因为来自环境的许多力量都在程序员的工作上起作用-他分心,他没有心情,面对遇到无法预料的困难等

还有第四个小时-当我们为客户设定的金额不同于先前约定的金额时。 当然,如果我们的合作条件允许我们这样做。

现在要注意的问题是:您在哪里可以提高效率? 或以另一种方式:我们将提高效力吗?

一个模糊的答案是:程序员的效率。 好吧,我们将如何衡量? 我想提醒您,三到四种手表。

尝试告诉程序员:我们希望您增加工作时间。 他会回答什么? 程序员是一个很聪明的人,他在该研究所学习,他立即想起了第五个指标-一天的工作时间。 并大胆地告诉你-敬畏上帝,我一天不能工作超过24小时。

他还将记住相对论。 即使没有详细说明,也绝对是在提到压缩时间是不可能的-我们不是以接近光速的速度运动吗?

如果手表不缩水,那如何提高效率呢? 您怎么能谈论它? 你怎么能数呢? 程序员每小时花几个小时? 花半小时工作一个小时? 如何制定公式? 没有公式,您将不会进行任何计算,也不会设定目标。

让我们走到另一边。 想象一下,不是程序员,而是工厂工人。 在这里,他是可怜的家伙,整个机器都在轮班工作,并生产零件。 他的工作计划如何? 假设每个班次一百个零件。 更改持续八个小时,结果是一个部分需要4.8分钟。

现在想象:我们以衡量工作的方法来领导这名工人。 我们不再告诉他“做100个零件”,我们喜欢以小时为单位进行测量,因此新的工作计划听起来像是“每班8小时”。

当然,他首先会考虑我们是白痴。 他问-但是应该做多少细节? 没关系,我们会回答。 最主要的是手表。 我们了解其中存在差异,您去那里抽烟,与朋友聊天,但是我们想象平均要花费4.8分钟(每个细节)。 因此,在4.8分钟的工作时间里,我们要做100次。

当然,起初他当然会尝试遵循旧的计划,但是当他看到自己的计算结果时,他的生活价值将会发生变化-会说“在8小时的20个班次中就已经计算出了很多”。 如果只付机器上的时间,那么现在对他进行详细说明有什么意义?

如果到那时他们还没有将我们赶出工厂,那么我们将更改销售系统。 我们不会将零件出售给客户-发票会显示我们的员工所花费的时间。 客户要求提供100个零件,我们不去考虑,然后我们发送发票-8小时的专业工作。 客户感到惊讶,但同意并支付账单。 几天后,他又得到了一次“增加”-几个小时。 好吧,发生了什么。 工人不能在8小时内保持。

顾客开始反感-什么鬼,什么样的手表? 我们需要细节! 成块,成箱,托盘,无盖货车-没关系。 对我们来说,生产它们需要多少小时没有关系!

我认为,在这里,他们一定会把我们赶出去。 为客户分批退还内部和外部会计核算。 并将从事效率。

效率在哪里,它的公式是什么? 答案是显而易见的:工人,车间或整个工厂每单位时间的零件越多越好。 当然,要视技术而定,质量也要适中,不要备货。

但是效率的公式很明显-每小时件数。 而且管理工作的应用方向是显而易见的,以提高效率。

我们沮丧地回到了程序员那里。 而且,我们还需要一个简单易懂的公式来计算效果。 我们在那里有什么? 手表,手表,周围-手表。

现在您已经了解时钟出了什么问题。 时钟衡量时间-已经发生,正在发生并且将永远发生的无法控制的物理现象。 无论您是否工作,公司是否存在,是否关门,是否有客户,时间都会过去,而时间将以小时为单位。

您所能做的就是在《劳动法》规定的时间内管理您的活动,即 生产某种东西,并以某种方式衡量您生产的东西。

就工厂而言,一切都清楚了-有一个物理单位的度量单位。 件,公升,线性,平方或立方米。 与我们一起,程序员,该怎么办? 除了小时之外,该如何衡量我们的任务?

首先想到的是碎片。 但是这种想法不可行-任务之间的差异太大。

实际上,答案早已在所谓的中找到了。 灵活的开发方法,例如scrum。 该方法称为“扑克计划”。

扑克计划任务以什么单位衡量? 答案是不寻常的-无论如何。 称呼他们想要的。 狗,鹦鹉,凳子,穴位,眼镜-没关系。 最常用的名称是故事点(故事点,故事点)。 就个人而言,我喜欢更简单,更简洁的观点。 我将在进一步说明的过程中使用它。 您当然可以选择其他任何一个。

点的主要特征是它们的相对性。 这不是某些分类器的度量单位,而是每个公司甚至团队的唯一规模。 在两个不同的团队中,同一任务的评估方式可能不同。 某个地方-5点,某个地方-13点,等等。

点数-这是任务的实际大小。 我们缺乏的评估。

扑克筹划技术建议使用Fibonacci系列的估计值:1、2、3、5、8、13、21、34等。 点,其中每个后续元素等于前两个元素的和。 原因很简单:等级之间必须有明显的差异。 在例如5到6分之间选择一个评分是相当困难的。 轻松得多-5到8,或8到13。

该方法建议对团队进行如下评估。 必须向所有团队成员发卡并在上面写上标记(来自Fibonacci系列)。 您可以购买特殊的卡片来进行扑克筹划,如果您想获得一些美的话,但是为了简单起见,只需要普通的小纸片作为便条(例如贴纸)就足够了,而无需胶粘带。

因此,团队聚集在一起,每个人都拿着一张卡片。 宣布一项任务,列出其功能和详细信息,以便每个人都了解需要完成的工作。 之后,每个参与者都要进行自己的评估-选择其中一张卡片-并将其正面朝下放在桌子上(这样评估就不可见了)。

当每个人都进行了评估后,将卡片翻过来,并执行关键检查-不应有彼此分开的估计值超过斐波那契数列的一个以上元素。

例如,5和8年级是正常的,而3和8年级则不好。 估计中的过冲值表明某人不了解某些内容。 那些给出低评分的人要么了解太多(例如,已经解决了这样的问题),要么什么都不懂,而且过于乐观。

同样,高分可能表示对该任务有误解。 例如,程序员根本无法解决此类问题,或者它们与他不知道的平台机制相关联,以防万一,他对此表示赞赏。

无论如何,如果估计值相差很大,则需要进行第二次讨论-澄清细节,讨论细节并提供最大的信息。 进行讨论后,将重复评估。 如有必要,一遍又一遍,直到估算值彼此相差不超过该系列的一个元素为止。

有时,将一个团队成员排除在特定任务的评估之外很有用。 例如,如果团队中有一名实习生,那么至少向他解释,至少不向他解释-他将不了解任务的难度或难度,或者相反。 最后,他只是同意并提出期望的评分,以免延误团队。

这样的结果没有任何价值,因为它将扑克计划变成了空虚的形式。 因此,我建议一个简单的规则:只有对任务有了解的人才能参与任务的评估。 你不明白-只是坐下来听。

当然,有时会发生只有一个人能理解任务的情况。 例如,如果它属于某个非常具体的,很少使用的知识领域。 没关系,让我们进行一次评估。

有一个极端的情况-没有人知道如何解决问题。 没关系-我们确定发生了什么,然后我们将其找出来。

设置成绩后,将考虑算术平均值-这将是任务的最终成绩。 在灵活的方法中,他们将其写下来并挂在白板上,但是我建议您仅将其添加到您的信息系统中,以便在其中写下任务。 当然,您必须首先添加适当的字段。

另一种评估算法是不使用命令。 例如,分数可以由领导者,领导者或最聪明的程序员给出。 通常,他们在与扑克团队比赛数周或数月后继续使用此算法。

原因很简单:所有团队成员都必须习惯评估系统。 他们深入其中,学习了如何快速评估任务,并且没有像新闸门上的公羊那样看待要点。 养成习惯后,可以评估一个人。 当然,让团队有权表达自己的意见-没有人是完美的,领导者的估算可能不正确。

有时,团队在开始使用点时会遇到困难-没有人知道如何选择参考点。 我建议选择几个锚点-您定期解决的典型任务。

第一个锚点是最简单的任务。 据我所知,通常程序员花费的时间是15分钟的倍数。 您通常在15分钟内解决什么任务? 一个简单的报告? 将用户添加到数据库? 填写地址分类器?

该任务的得分应为1分。 将来,您将以它为指导。

您可以根据具体情况添加更多锚点。 例如,关于一个剩余寄存器的简单外部报告,没有花哨的内容,没有形式和模块中的代码-记为3分。 将必要条件添加到文档中并显示在表单上,​​而不处理输入和检查-设为2分。 等等

团队自己选择这些锚点,并与他们达成共识并在将来使用它们,这一点很重要。 估计是相对的,锚点将充当起点。

现在,我们所有的任务都以物理单位-点进行度量。 我们知道一周,一个月,一年等中完成了多少点。 我们知道每个程序员产生多少分。 我们清楚地看到多少点“权衡”了未解决的任务。

但最重要的是,我们知道效率是点数与小时数的比率。 当然,每天计算点数比较容易。

一位程序员每天产生4分,另一位程序员每天产生8分,第三位是2分。上周,我们获得了50分,本周达到了80分,这意味着我们的效率得到了提高。

提高效率的目标也变得显而易见:我们必须学会每单位时间产生更多的积分。 我们知道,时间不受我们的影响,但是解决的分数仍然是如何。 实际上,这就是我们将继续研究的内容。

点是关键的坐标系,将在以后的演示中使用。 这是必不可少的部分,不能跳过。 在计算出点之前引入其他方法几乎没有意义。 你明白为什么吗?

因为您无法评估所应用方法的有效性。 没有数字怎么理解,这是好是坏? 不可能,只是幻想而已。 当然,基于幻想和幻想的管理非常普遍,但不适合提高效率。

我会告诉您一个小秘密:通过实施一个以点数形式评估任务的系统,您已经可以提高程序员团队的效率。 有时甚至两次,我多次验证了这个假设。

原因很简单-存在真正的透明度。 幻象消失了,光棍节仍然存在。 加上客户支付的工时,您将获得一个功能强大的跟踪性能的系统。 人们看到了自己的数字后,就会开始工作得更好,因为他们将不再能够躲在时钟后面。

因此,请毫不拖延地记录您系统中的任务。 这一点都不困难,尤其是如果您使用1C平台上的系统-只需在存储任务的元数据对象中添加一个数字字段即可。 好吧,写一些关于点系统的报告-解决了多少问题,由谁,何时,有多少未接受工作,有多少正在等待客户接受,等等。

总结


  1. 仅在几个小时内衡量任务就失去了提高效率的机会;
  2. 最好以物理单位(点)衡量任务;
  3. 最好从团队扑克计划开始实施积分;
  4. 当评估体系对团队变得清晰时,您可以对一个人进行评估。
  5. 评分可以帮助您了解效果;
  6. 点数必须是自动化的。

Source: https://habr.com/ru/post/zh-CN450498/


All Articles