价值高于一切-企业软件开发谈
我们的一位副总管财务的,问软件部门的第一句话是:
这个系统能够企业带来多少价值?
第二句话是
它能提供什么样子的异常报告?
管理人员常喜欢说的一句话就是正常的不要拿给我看,我要看有问题的报告。
也就是企业运行中出现问题,你提供什么样的分析报告出来。
我举个例子:
一个供应商管理系统该作什么?
我想,大概是管理我们供应商的,
记录这些内容:
联系人,地址,电话,供应哪些物料,价格是多少,交货周期怎样,质信如何。。
错!
这些东西用个EXCEL表就作出来,我要干这些干什么??
管理,管理,就是要系统帮助我来管理和分析。
这个供应商管理的价值体现在哪里呢?
我们不能从数据往上看,而应该从业务向下看。
因此,我们尝试从业务上来说,
这个系统是帮助管理人员了解目前我们供货量比较的大,供货质量好的供应商。
细化一下:
找出TOP TEN供应商:
要求比较方面是,价格,交货周期,信用度,质量。
物料选择人员可以根据上面方面按不同的比重,筛选相应的供应商。
提供物料选择人员并未按照系统建议规则进行了供应商选择的异常报告。
这就是价值
接着再从业务来推我们需要哪些数据,哪些数据并不在本系统内(确定应用域),并确保这个系统能够融入到企业现有的这个信息化系统中。
系统实施的三个要考虑的因素:
在我们国内,很多家公司都争先上线ERP或者MRP,MRP2,SCM等等系统,甚至一些证券公司都说自己上ERP。
就我个人经历的和了解的情况来看,很多公司实施都是不成功的。
我分析了有以下原因:
1、公司内部缺乏IT信息化统一连贯的整体建设的目标
2、公司内部缺乏强有力的IT支持部门和CTO、CIO。
3、公司无法保证提供IT信息建设的资源(包括人力)
4、公司现有文化和价值观无法与购买的系统共融。
第一条原因很重要。多数公司自己都没有一个IT建设的统一而连贯的整体目标。
造成上线系统无法向一个统一的目标迈进,造成对人力物力的浪费。
第二个原因仅次于第一原因,
因为我曾经遇到一个老总,他是跟我这么谈的,
“为什么我们的系统不上ORACLE?”
我经理说,目前系统还不会应用到购买oracle的时候,并且我们很多系统已经运行在MSSQL上面。
“我们这么大的公司,难道买不起么?MSSQL安全性那么差,有机会就换掉吧。”
我相信在中国很多公司CIO和CTO要么没有,要么由副总兼任,这些副总可能由于其他事务缠身无法顾及IT信息系统建设,结果,公司的IT建设通常无法得到相应有力的支持,造成IT建设的失败。
第三个原因我懒得说了,
古语云:又想马儿跑得快,又想马儿不吃草。
--中国多数公司的通病。
第四个原因是一个企业管理的问题,一个企业(有点年头)都会有自己的企业的文化,因此,籍希望通过一个系统来改变这个企业的文化的人,最终,都会发现,企业文化决定了这个软件的价值,上线SAP的公司不要以为自己就跻身大公司,大企业了,最终这个软件的价值会被您的企业文化所决定的。
谈了这么多虚无缥缈的东西来说说实际一点的东西吧,
后面的内容作为一个IT人员从业的总结吧。
IT人员在一个企业该做的和不该做的事情
如果你已经从事该行业多年以上,这段文字请掠过,或者把你的经验共享出来。
1. 进入一个企业不该干的事情就是介入到大项目,如果你写代码,前三个月写的肯定是垃圾,不相信的请在一年后再看当时写的东西。(如果你还在那家公司里面)
应该看看公司系统流程图,去看看公司实际运行的流程,
与系统相关部门打打交道,去看公司的组织结构图,(因为软件毕竟是有人来操作,你不了解这些的用户的基本情况,作出来的东西肯定不会被喜欢。同时,通过系统相关部门人员的了解,你可以知道谁是系统的接口人,谁是这个系统成功与否最后的决定者,这在以后了解客户需求,争取资源打下基础)
这些看似与IT工作不相关,实际上,却是将IT工作作细。
我想,每个技术工作人员都认为,这些事情不要交给我,我只要作技术工作就行了。可是,作为IT人员,就必须要去参与到公司流程中去,要尝试站的业务逻辑的角度去考虑问题,(除了想法外,还必须是推动参与部门的工作,当然,通常在中国企业中,IT人员无法取得工作支持,怎么办?放弃还是继续推动? 想人之所不敢想,做人之所不能做(什么叫创造性工作,什么叫价值,怎么能在短时间获取更多的工作经验?不碰的头破血流,也叫成长?), 只有这样,工作被推进了,个人能力也得到大幅度的提高。)。
2. 不要在工作场合埋怨上一位同事所作的工作
因为第一你不知道人家是在哪种情况下作出的决定(有可能是客户变态的要求,也有可能给予的时间不够,也有可能无法得到相应的支持),第二,你的埋怨可能会导致你与现有同事的关系紧张。
能作的工作就是重构,了解后,做局部的重构,再了解,再作大一点的重构。
而且必须保持谨慎的态度,因为在你对整个企业系统没有完整了解前,你的改动可能会造成其他系统无法正常运行。
3. 不要盲目的上线新系统或者设计新系统
那么反过来该作的事情就是对现有系统的重构。
上面的重构指的是代码级别的重构,它通常发生在一个系统内,而这里指的是系统之间的重构。
比如说:
系统之间有没有功能重复?数据重复?
系统可以合并么?
各个系统之间数据交换是否有问题?
各个系统之间相应的接口是否合理?
我们的流程在各个系统之间能够形成统一的规划图?
最新的要求可以在哪个系统中完成?
等等
4. 部门内部要经常交流
如果一个企业IT部门建设比较好,这个问题比较好办。
如果一个IT部门属于每个人是各负责一部分系统,则可能出现交流不畅的问题。
艾,文人相轻麻,中国数千年的文化都这样。
所以,一定要主动交流,也许有人会说你有点狗拿耗子多管闲事。
这个时候,你得拿出点勇气来对自己说,走自己的螃蟹路,让人家说去吧。
其实,团队价值高,你个人的价值高。也所谓,皮之不存,毛将焉附。
欢迎大家也谈谈看法和经验,共同进步。