程序员驱魔

有关引入信息系统如何帮助公司摆脱损失,降低成本和减少盗窃的材料很多。 事实证明,如此之多的邪恶都可以消除。

我的文章是关于较小的邪恶。 关于实施的破坏,关于永恒的“我在做正确的事,这是您的责任”,关于膨胀,关于小公司事务和对变革的抵制。

本文中的所有内容均来自个人经验以及使用示例。 我不假装本主题的唯一性和充分公开,这里没有更高的真理,我努力避免泛化,我不施加任何约束。

只是使用一些工具的经验以及它们如何帮助我的例子。

记录带有时间参数的用户操作


老实说,我不记得为什么要这么做,但是它派上了用场了好几次。 开发简单笨拙,只需要一个小时。 不适用于任何地方,因为 会消耗大量资源,并且数据会占用大量磁盘空间,因此您需要对其进行监视。

原理很简单:

  • 记录用户何时打开表单(文档,目录,报告,处理);
  • 他关闭时记笔记;
  • 记录他何时记录(如果它是存储的对象,例如文档或目录);
  • 记录它是新对象还是旧对象;
  • 记录您需要了解的有关对象的所有信息-链接,类型名称,用户名,表单名称。

结果,我们有了一个包含数据的大表和几个计算出的数字。 例如,我们知道“平均检查”-创建会计师的发票收据需要多少时间。 我们知道会计师返回到先前创建的文档以进行更改的次数,以及他在该文档上花费的时间。

当该机制派上用场时,我将举一些例子。

首先是消除小规模的破坏活动。 引入了一种在仓库中拣货的机制-店主应在包装箱中标记收集的物品。 仓库管理员被明确告知-无需狂热,仅在有空闲时间时才使用该系统。

一天后,货运经理开始运行,说店主拒绝装载汽车,他们说他们需要将数据驱动到某个系统中,并且每天需要2个小时来完成这项工作。 当然,我很快解释说,没有人给他们这样的命令。 我打开报告,看到了-他们每天花20分钟在每个人身上 。 他告诉经理,他告诉店主-仅此而已,他们再也没有这样的声明了。

第二个例子。 Findir订购一些用于管理资金的功能。 重要的不是因为它想要,而是因为这个会计循环对于较高的会计核算是不够的。 然后在一次股东大会上,他们问他-为什么,数据何时出现? 他说-存在错误,它不起作用,我们将编写任务供程序员最终确定。 我打开报告,表明他和他的女儿都没有输入文件或报告。 就是这样,介绍已经继续进行。

第三个例子。 会计说-我们需要扩大人员,增加了文件流。 要求管理层注意我的报告-提供统计数据,那里的增长情况以及在何处增长。

前额中的第一个计数-文档数和其中的行数-表明文档流没有增加。

好的,我认为,也许文档中有些复杂的东西,实际上起草这些文档变得更加困难。

我看一下“平均支票”及其对两名会计师的动态-不,似乎它没有增长,没有下降。

她突然意识到,一名长期工作的会计师最近休了产假,并且有两个新的人正在接替他的职位。 我比较了这三者的数据--,这就是。 与一位旧会计相比,两名新会计输入文件的速度更慢。

一切,扩张的状态已经被取消,您只需要等待,直到他们填满他们的手。 同时-有点自动化。

从第三个例子开始,跟随第四个例子,已经是肯定的了。 看到按对象类型进行的“平均检查”的动态,我们开始使用它来分析操作的自动化和变更的后果。 如果“平均检查”长大了,那么我们分析原因,观察人们的生活和进步。

记录指标值


从技术上讲,这是一个非常简单的解决方案。 它的本质很简单-编写查询来计算一些数字,并以所需的频率将其保存在系统中。 结果,我们掌握了该图的及时动态。

不需要记住很多数字,因为 它们是可复制的。 例如,您无需记住销售量-您可以随时回顾它。

但是,只有通过增加备份数据库才能复制一些数字。 例如,这是找出一个月前您的商品有多少负余额的唯一方法。 那些阅读我以前的文章的人都知道,这与Iceberg有关。

第一个用例。 抵消预付款存在一些问题-大量的同时挂在60.01和60.02上。 该功能是典型的,没有方法上的困难-只需在文档中指出正确的分析,就可以计算出预付款。 在会议上,会计说-没问题,我们会做。 在随后的每次会议上,他都会重复-我们正在做的工作很多,自动化程度很差。 他们看着我问。

我来了,我打开了指标的记录-未记录的预付款金额。 我认为-不,他们会这样做,他们会说无法识别的进步比他们纠正的增长更快。 我将指标分为三部分-年初的金额,月初的金额,今天的金额。

在下一次会议上,我显示了数字-它是怎么回事以及如何成为它。 年初和月初无法预料的预付款是一笔赌注-他们没有解决任何问题。 今天无法识别的预付款没有太大变化-这意味着现在通常可以起草文件。 结果,在2天内修复了旧错误。

第二个用例。 自动化的供应链,功能很简单-程序会说出您需要从供应商那里订购,接收和订购的数量。 单独地,指定的机制写出当前的赤字水平。 我们看-某些职位的赤字正在减少,而另一些职位则在增加。 不同的人负责这些职位。 在会议上,每个人都说-是的,我们按照命令执行所有操作,我们看,我们命令执行。 为什么赤字在增加-我们不知道,自动化可能不好,数字计算不正确。 每个人都对我looks之以鼻。

我直接面对-我看看向供应商下的订单。 我立刻无法弄清楚,因为 没有及时输入和更改文档-这是正常现象,因为 批准过程可能需要几天的时间,并且会一直进行调整。

我为每个供应商分别记录了两个指标的记录-早上可以订购多少物品,白天订购了多少物品。 瞧,“好”经理(整洁的女孩)下令订购系统所需产品的85-100%,“坏”的订购15%。 一切,遵守纪律的工作已经消失了。 有趣的是-供应商在看到此报告后被要求将其提供给他们使用(供应商本身,而不是其主管)。 我和他们的报告之间的区别很简单。 他们的报告显示了当前的残留物,而我的仍然显示了这些残留物的“寿命”。 都是一样的冰山。

固定思路


我好几次从程序员那里听说,想法都从他们那里窃取了,尤其是老板。 他们听了这个主意,然后说那没什么,过了一段时间,他们就把它当作自己的东西了。

我通常有很多想法,我不会判断质量,但实际上有很多想法。 几年前,我注意到我不记得他们了。 碰巧我几次想出一个主意。

然后,我在制片厂的网站Artemy Lebedev上看到他们在写想法 ,他们认为这很有用。 我决定做同样的事情-在任务会计系统中,我使自己分红,在那里我开始写下这些想法。 它仅在享有全部权利的情况下可用,因为 我只需要

然后,公司决定通过合理化建议将工作系统化-归档,评估,实施会计等。 我被问到是否可以自动化,我说-一切都已经自动化了,并展示了其机制。 我对其进行了一些修改,以便进行投票,评论,实现会计,任务设置等。 但这不是重点。

最重要的是,这些想法已经成为公共和固定的,并且很难窃取它们。 我的矿几乎是不可能的,因为 在为用户打开系统时,它已经包含了我的几百条记录。

第一个用例甚至不需要我的参与。 许多人都读了主意,当有人在某处提出建议时,读者会公开地告诉他-好吧,有一个主意,在系统中查看,那里就有讨论。 如果我不在场,那么发明人就会被派到我这里,通常他用“您提出了这个主意,我读了,很有趣,让我们付诸实施……”开始。

第二个示例与促进合理化建议系统有关。 自然,我将阅读跟踪附加到了固定想法的功能上。 事实证明,某些部门的员工真正努力使自己的工作变得更好,他们开始向系统提出建议。 但是仅实施了与自动化相关的建议,因为 他们是给我的,但这对我来说很有趣。

在会议上,经理们被问到一个问题-您如何执行提案? 您的员工有什么有用的建议吗? 许多人友好地回答-不是,没什么有趣的,都是胡说八道。 我展示了报告-他们根本没有进入系统,他们没有阅读任何想法,更不用说实现了。 为了以防万一,他们问员工-您能以口头形式还是通过邮件给您的经理建议? 他们说,不,没有这样的产物,总的来说,我们害怕抬起头来。

提供的数据表明,该过程已经开始。

数据采集


此机制的目的是扩展版本控制功能。 通常,版本控制(标准和非标准版本)都会捕获主要数据(目录,文档等)中的更改。 实际上,这还不够。

例如,“后退”具有“飞行”的不同变体。 传统方式是要么查看可能影响文档的更改,要么进行备份,将详细信息上载到Excel并比较转数。

问题还在于,一个人应该跟踪“剥离”的时刻。

结果,他制作了一种简单的机制,可以很好地存储旋转的复杂结构并对变化做出反应。 并通过查询配置要修复,卷积和周期性的数据区域。

无需详细说明,该机制会在一个小时内(这是任务的运行频率)发出有关数据区域变化的信号(“周转已经完成”。),指示数据区域,指示时间段,并可以查找主要数据。

是的,它允许“接受更改”-如果一切都是诚实的,则更改后的数据将成为参考,并且已经在对更改进行跟踪。

第一个用例。 人们开始抱怨仓库的数量激增(“我早上10点看,午餐5点看,我已经答应了客户,我也不傻,我看到一个星期没有动静”)。 会计说-我们与它无关,所有文档在一天内执行,没有追溯性更正。 我们看一下机制-瞧,今天的余额正在变化,因为上个月的势头已经改变。 随便看看-会计师一个月前介绍了一个新文件。 我们问-您在做什么? 她说,我没有时间。

第二个用例。 我记录了销售数据-仅仅是因为我在此数据区域上测试了该机制。 据认为,销售数据最多更改一周,然后在极少数情况下会出错。 在这里,我看-上个月的销售量发生了变化。 您了解,在过去的一个月中,销售经理已经获得了奖励。 我看到会计师已经变了-您在说什么? 原来,经理被迫,因为他太聪明了,他使客户感到困惑。 在此事件之后,会计师停止了这样做。

控制问题


功能控制任务,项目等 例如,在1C:文档管理中,可能已经看到了很多。 在那里,您可以控制任何(或几乎任何一个)对象,设置日期并弹出提醒。

我不喜欢典型的,因为 它不允许您进行多阶段控制-例如,使提示每隔一周间隔弹出10次。 因此,我做了一个简单的机制,其主要区别在于它允许您保留控制历史记录并在任何时间范围内进行扩展。

例如,我启动业务流程更改。 我正在写信,开会等。 我将这个问题写到我的系统中,放置一个控制点-一周后,我写了一条评论,例如“再次询问Vasya”。 一周后,我收到提醒,我再次问Vasya,Vasya说:“啊,听着,我们遇到了障碍,到目前为止没有时间。” 好吧,我说,我要讲的是下一个星期。 我看到一个提醒,我进去-我看到一个故事。 我再次问Vasya,Vasya再次出现堵塞。 我说-Vasya,您已经说过了。 Vasya发誓这是最后一次。 一周后,运动仍然开始。

它看起来像某种垃圾,似乎所有这些都可以通过邮件解决,但是,如本文开头所述,我不假装是事实。 当试图从不服从您的人那里得到一些东西时,使用此工具和方法已经对我有多次帮助。 您不能为他们设置任务,在这种特殊情况下超越顶峰并不是孩子的方式-人们根本不会做任何事情。

自动化成本核算


从技术上讲,这非常简单。 系统中有任务和项目的账目。 在每项任务中,都需要对人工成本进行一定程度的评估,无论是小时数还是扑克筹码得分。 我们知道程序员的薪水。 客户,他的单位和经理都是已知的。

我们收取程序员的薪水,并将其分配给一个月内解决的任务。 事实证明解决特定问题的成本。 它可以按项目,按客户,按单位组装。

使用的第一个示例是防止碰撞的保护,例如“它们不与我们打交道,它们不能解决我们的问题”。 我们打开报告,看看-是的,该公司在会计自动化上花费了250 tr 最后一个月。 或每年150万卢布。

这里的诀窍是,它以卢布计价-导演可以理解的一种计量单位。 如果您说“我们已经解决了会计部门的113项任务”,那么他不会渗透-他会说需要做更多的事情。 当您说“您花了150万在他们的任务上”时,他会很尴尬地说“花我另外的200万钱在他们身上!”。 他常常叹了口气,问簿记处应该花150万卢布来完成哪些任务。

第二个例子更有趣。 程序员经常抱怨他们按照用户的指示执行某种功能,然后他不使用此功能。 同时,他继续抱怨自己的工作自动化程度很低。

我们决定变得更加有趣。 在完成的任务中,他们不仅开始指示客户,而且还指示为解决此问题而创建或最终确定的元数据的名称-文档,目录等。

好吧,那很简单。 他要求质量服务负责人自动化对测量仪器的验证。 技术上简单的解决方案-有测量仪器,校准时间表和修正验证事实的文档。 自动化后,按预期方式,用户输入了一种测量仪器,一个验证文件和一个图表。

并且我们已经计算了成本。 假设这是30 tr。 我们知道元数据,我们知道对象的数量,我们将其一分为二-事实证明,在我们的系统中,30 tr花费在一种测量工具上 尽管测量仪器本身的成本为1 tr。

当下一次会议上的质量服务负责人开始说他需要自动化时,我们礼貌地问-“金游标卡尺”是怎么做的,以证明该公司花费了30 tr?

支持费用会计


在我们的技术支持下坐了一个人-值班员。 我经常听到他说“她是怎么得到的,一个愚蠢的傻瓜,每天都问同样的事情”。 起初,我并没有特别注意-您永远不会知道,那个人不记得了,否则我们应该负责。 然后,我以一种about回的方式发现一些用户故意对技术支持发起DDoS攻击,因为他们不喜欢IT部门。

组织了一个简单的编程解决方案。 他们制作了一份文件,以解决对技术支持的呼叫。 通常,当一个人需要自动化某些东西时,他还是会写任务,但是当他有问题时,他会在Skype上打电话或写信。

值班人员只是将姓氏和大概的维修时间打入了文件。 可以通过API读取Skype日志,但决定不这样做-您不会以这种方式计算个人交流和往来。

好吧,那很简单。 从上段我们知道技术支持的总成本。 我们将钱除以上诉时间,得出数字-公司是什么样的人和部门,他们自己花了多少钱。

第一个用例很平常。 当有人说他们不回答他的问题而他做得不好时,我们展示了这个数字。 你看,我的朋友,公司花了20 tr 每月。

使用的第二个示例更有趣。 我们称其为“无能的代价”。 不幸的是,我们的人力资源不是很精通会计的复杂性,他们不知道如何检查“ 1C程序知识”中对空缺的要求,但不想向我们发送测试。 因此,我们得到了不知道如何将记录保存在计算机中的会计师。

现在有一位会计师,薪水为30 tr。 每月,不含税。 并且有向该会计师提供技术支持的费用。 例如20 tr 每月-程序员很昂贵。 事实证明,会计使公司损失了50 tr 每月。 例如,副总会计师的费用相同。

这些数字使导演有点傻眼。 听到一件事是:“我们花费了50 tr。 每月为用户提供技术支持”-好的,您需要。 完全不同的事情-“这位会计师的无能使我们损失了20 tr。 每月。” 寻求技术支持的电话减少了。

难忘的


当我们称其为自动化成本时,客户会感到不便,但这只是暂时的。他会被责骂,也许他们会写出一些罚款,然后忘记。他得到了放纵,可以重新开始。

这种方法不适合我们,因为一切都再次变成“程序员不好”的状况。因此,我们采取了简单的行动-我们开始使用自动化成本的累积统计数据。

从技术上讲,这很简单-我们已经拥有了客户,部门和元数据的所有数据。我们开始废除放纵。

当再次出现关于我们无法解决任何问题或自动化程度不佳的谈话时,我们只是提出了报告并显示了累计金额。因为我们已按元数据细分了统计信息,其数量大致分为好坏两部分。

好的就是所使用的功能。不好-未使用。坏人是好人的两倍。

版本解析


1C和同一CouchDB中的版本控制系统以相同的方式工作-它们仅在记录时存储对象的版本。有些人完成了这些系统-例如,如果对象中的任何内容都没有更改,则不要保存版本。

我们的用户在听说我们分析了他们的工作(包括使用版本控制)后,便开始更频繁地重写文档。好吧,以防万一。

我们很沮丧,因为可能会失去影响和保护其利益的手段之一。但是程序员的想法是提出一个解决方案-让他们尽可能多地重写自己,我们将解析和分析版本以进行有意义的更改。

例如,会计师是狡猾的人,但是他们害怕破坏会计-如果重写对象,他们会更改一些无关紧要的道具,例如评论。正式地,该版本是新的,即使由于存在更改而被过滤掉了。

我们添加了诸如视图意义之类的实体。他们只是列出了对象的属性,其更改很可能是一个人的工作的正常反映,而不是IDB。相同类型的对象有多个视图。例如,在运输中更改项目是一项重大更改。更改帐户并不是很认真,但仍然是一项工作。在一个日期内更改文档的时间-不,可惜,只是孩子气。

因此,我们从意义上获得了变化的统计数据。用户当然会发呆,然后重新开始DDoS'it-在一分钟或一天之内更改一次重要属性。天真。

毕竟,我们有机会不按顺序比较版本,而是比较第一个和最后一个版本,而忽略中间更改。当季度关闭时,文档很有可能已经处于目标状态,您可以放心将其与创建日期的最新版本进行比较。

关联自动化和KPI


许多程序员,其上级和主管都担心自动化对业务的影响。程序员,完成的项目和解决的任务都会产生成本。并且有人员,部门,指示及其领导的KPI。

假定自动化应该是有益的,或者如他们在笑话中所说的那样是“好处”。但是实际发生的情况通常未知。

基于以上所述,很明显,我们有很多关于自动化的知识。并且有KPI部门订购了这种自动化系统。系统中某些东西被认为是自动的,例如销售。在Excel或其他地方手动考虑了某些内容。但是,所有的KPI都有-他们只是引入了某种激励系统。

作为真正的程序员,我们首先使所有KPI的会计自动化。那些不能根据系统计算的,只能从Excel下载。我们拥有代表公司员工和部门工作的所有数字。

我们自己又增加了一个指标-该部门的员工人数。正因为有这样的刻板印象,自动化可以很好地减少所需人员的数量,尤其是维护工作,例如簿记或经济学家。

有了KPI和自动化成本,就可以很容易地计算出相关性,因为所有数据都是参照日期存储的。例如,我们完成了一个价值200吨的自动化项目。 1月-相应单位的KPI应该更改。不是立即,而是说在2月,3月甚至6月。但是必须。否则,有什么意义呢?

奇怪的是,两者之间存在关联。例如,在采购工作中,我们完成了TOC自动化项目,其KPI不断增长。从那以后销量甚至都有增长最终,它们是采购自动化的目标。

但是有一些缺乏相关性的例子。例如,CRM的实施根本没有带来任何好处。创建一个站点,而不是以前的站点,没有带来任何效果。

尽管我们竭尽全力遏制公司的这种弊端,但是所有会计自动化仅带来负面影响,特别是对员工人数造成的影响。

但是,会计经济学家的自动化产生了积极的影响-我们失去了两名员工。他们没有被解雇-他们自己出于自己的原因离开了。但是我们建议-我们暂不采用新的,看看进展如何,我们在那里进行了很多自动化。主任同意了,一切都解决了。

在计算出相关性之后,管理层开始对自动化有所不同。好吧,对于程序员来说,当然。特别是考虑到没有人命令我们计算这种相关性的事实-这是我们的倡议。

没错,然后导演被替换了,一切都必须从一开始就开始。但是,大约六个月后,新董事也对相关计算表示赞赏。

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


All Articles