软件实施工程师项目经验(转)_实施工程师项目案例-程序员宅基地

技术标签: 实施  项目管理  

在项目实施的时候,有些独特的地方,需要有独特的工具来帮助。

前天晚上,和一位做了多年实施项目带领的朋友吃饭。

    我笑着跟他说:实施,能不能不实施?!不去人,也不搞实施,把软件卖了就OK,你们做好IT咨询就可以,把什么数据准备、培训、协调业务部门和信息科需求、推动上线、报表制作都让客户做。咱也不赚他的实施费用。因为你们是个合伙成立的小公司,你们如果也是从开发到定制化到实施到支持,你们根本没有那么多人,项目周期又这么长,销售价格竞争又如此激烈,你们赚不了几个钱。实施尤其是最耗成本的,你们好不容易拿到的单,实施完剩不了多少,所以你们这么多年公司也没有大发展,不断在年年求生存。

    他说:你纯粹是白日作梦。我一直在想怎么能缩短点或干活轻快点,你还在做梦不实施。不实施,人家买你的啊。企业那帮人,连数据准备都不想录入,你让他们自己实施?

    我说,我虽然没有你实施的客户多,但我也做过灯塔标杆客户。再说,我多年统管开发、实施、服务三大部门,没个方法能搞定么?我给你介绍一下我的一些心得。可能不会真的让你不去实施,那样确实可能带来客户连单都不签的危险。咱们一起交流一下怎么能让实施尽可能的短。能短一点也是一点。我这个人就有个习惯,能改进我就不在原地踏步。这个改进方法不行,我就继续想其他改进方法,不断尝试不断推进,哪怕一点改进我都要去实现它。量多了就会引起质变。许多人就等着大机会大改变,对小改进懒的动,我不赞同。

我说说我在项目实施和项目管理上的一些好的方法和心得。

    做实施,最怕的不是人家使用中出现各种麻烦。而是业务部门抵制用,不想用,出各种各样理由,项目进展很慢(真不知道过去是怎么签单了)。究其原因就是:你们用软件能做到的,我用EXCEL也能做到。我现在就用的挺好,你们的软件还挺难用,还不根据我的需求我的习惯修改。修改了我就用。

    完了。原来我们辛辛苦苦研发出来的管理软件,跟一个电子表格没啥区别。人家EXCEL还可以盗版免费用,网上随便下载。我们这个还花钱,还有时候有BUG,还要服务器,还要专职系统维护。

    实施人员没招了。都是些刚出身社会一两年,学生气和学生思维习惯都还没有摆脱,就让来实施管理软件,并且给人家管理人员讲软件中的管理理念。这有点勉为其难。

    其实有些管理软件不仅仅是减轻工作量,用电脑代替人工这么简单。它还蕴藏着丰富的管理经验。但说到管理经验,就很玄妙了。管理这个东西,是个公说公有理婆说婆有理的东西。很多人经常一说,他们管理落后。啥叫管理落后?你具体说说。说不出来了,指东打西的说的不到点子上。

    如果先进的管理理念说不出来,有些软件就跟做手工一样了。

    这是很多实施管理软件人的难题。先进的管理理念说不出来。因为自己就是个实施人员,又没有管理过企业,又没有多少管理经验,也就管过1-2个人,怎么能说服人家天天待在企业处理业务的管理人员呢。无法说服人家,人家就觉得这个管理软件就跟EXCEL一样,还不如EXCEL好使,人家肯定不用,没法上人家用起来呀。怎么办呢?

    针对这个现象,我专门从软件附着的管理理念中抽取出了管理模型KPI、管理模型计算公式、管理模型流程。把管理模型KPI一亮,都是管理人员很喜欢的和利润费用成本相关的东西。他们就来劲了。然后就给他们展示这些KPI是怎么得到的。计算公式上场。计算公式中的值是怎么得到的呢。管理模型流程上场,是这么走流程就可以得到。那这么流程怎么能保证让各个部门一致的顺利的走下来呢。好啦。管理软件,水到渠成,客户老板立马拍板,谁拖延了上线就问谁的责任。

    好的开端有了,就需要做实施的第一步,数据初始化。

    做实施,在实施的前期,最大的时间消耗就在数据准备。这是一座信息化大楼的基础啊。基础出了问题,就会引起输入的问题,更会引起输出的问题。越发现的晚,以后调整的难度越大。我曾经遇见一个实施人员的案例,就是数据准备这块没做好,上线十来天才发现。最后他发现是他的问题,就自己偷偷改后台数据,没想到还改乱了,系统更是问题百出,客户急了,他也慌了。最后紧急救场。但仍然有一部分数据已经错误很难对齐了,给企业带来了当月财务处理核算很大的问题,我们不仅开除了员工,还给客户赔了钱,真是损失惨重。

痛定思痛。

    首先做的第一项决定就是严厉测试数据字典准备功能。每一个基础数据录入窗口界面,都各种边界测试,非法字符测试,乱点乱按测试,删除默认值测试,机器反应速度慢测试,突然断网测试,突然断电测试,严把数据口。有些基础数据是互相关联的,就要严格测试数据关联性,保证前置数据没有准备好,后续数据字典不准进入维护窗口。

    第二步就是封锁数据库。把数据库访问权限严格控制。所有视图、存储过程加密。所有更新删除插入语句留下日志审计,修改前修改后的字段信息日志。每条记录的最后更新时间和更改人留下日志。停用标志的停用时间和停用人的日志。这样增加了数据的安全性。

    第三步,错误日志。一旦发现了没有程序预先想到的处理的错误,就立即终止软件,把软件的错误界面快闪自动保存成GIF文件,真正内部错误,都保存下来,可以点击按钮通过网络发送到公司报告。

我还专门组织编写了数据准备手册。详细的数据准备操作流程,输入输入规范约束默认值不可为空不可重复等等都说明的很清楚。而且还给了一份清单,每通过一步,就打一个勾。如果这个清单上的列表,每项勾都打好了,说明数据准备阶段就完成了。很清晰,很了解自己目前的工作进展。

    其实,实施,做数据准备是非常耗费时间的。他们过去的数据用了那么多年,有很多重复,废旧,编码或命名不规范的数据。而且没有人愿意做数据准备。因为基础数据往往挺多,录入就是个人工活,还要校对规格和价格,否则以后业务处理就有问题。

    所以,实施人员一般去了才去整理过去的数据。说整理吧,人家过去的系统还不了解,又不是自己公司开发的。而且居然大多没有文档。数据结构根本不明白。就是根据数据瞎猜。

到了数据录入阶段吧,人都溜的贼快。反正你在现场,反正你着急回家,反正你的老板正焦急的催你上线节省费用早日上线早日催尾款。于是,只要自己一个人录入一个人校对,其他人都在偷着乐。这种实施,真不是人干的活。怎么他们上线用软件,他们自己不忙,实施人员倒是成了长工。唉,谁让人家是出钱的呢。有钱就是娘啊。

现在,我力求实施人员能不去现场做数据准备就不去,给他们按照数据准备手册按照流程给他们信息科培训几次,模拟操作几遍,就回到公司,不会在那里继续干耗。他们拖时间是他们自己拖。他们自己不想上线,他们的老板会找他们算帐。而且现在已经做的这么简单安全稳定了,客户的信息科他们都会自己根据安装手册做了。如果他们还懒还说不会,就说不过去了。

我的朋友开始限于思考状态中。
    做实施,在实施中期,最耗费时间的就是培训。需要把人聚集起来,需要培训教室,还需要定点,还需要组织人,还需要模拟练习的机器。这就很难办了,业务部门是用户使用者,但他们都在工作中,让他们扔开工作来培训,谁来接替他们的工作,大家都很忙。另外,培训教室也是个事,那么多人需要培训,即使按拨来,也好几拨,哪有那么空闲的地方搞培训教室。人还有时到不齐,还需要重复培训。培训一次,不会,还需要再次培训。累啊。

    针对这个问题,我们也想了招。这都是被迫了,老板要讲究成本和时间和人力。你搞不定,你就下课。

我首先,让培训专员制作了培训课程、培训教材、培训考试卷、模拟练习学习版软件、视频教学软件。在没有实施的时候就发下去光盘,让他们自己看视频看帮助看教材做练习。懒的看懒的学?可以,我还有培训。

到了真正的培训期,网络教室管理软件又派上了用场。他们每个机器都配个随身听那种耳机,随便一个耳机就可以,街上批发有许多,花不了多少钱。我在信息科电脑跟前坐,他们在他们的电脑跟前坐,根本不用培训教室,也不用他们离岗。他们的电脑一律显示的是我的电脑的演示。我边操作边讲。他们边听边看。

    在讲的过程中,我也启动了我机器上的录像软件。讲完后,谁忘了听或者有事或者没听懂,都可以重复看。

谁想浪费我的培训苦心,随便听听,把培训当玩。我这里还有考试卷,考试打分。然后报给他们领导。而且还从中选出优秀者做业务标兵。这就很尴尬了。谁也不想当科室里的落后者。爱怎样就怎样的科员我还比较少见,因为现在的企业都不养闲人。

我的朋友眼睛开始闪光,兴奋中。

    做实施,后期最大的时间就花在了上线后的监控运行上。那个客户端出现了问题,或者功能不会操作了,就需要立即赶去处理。由于上线后第一个星期,你正跑到18楼解决问题,4楼的用户就给你打电话了,让你去解决。刚解决好4楼,15楼的用户又给你打电话了。你的手机不断,挥汗如雨的奔忙在楼层之间,电梯人还多,每层都停,让你累的半死一个上午也解决不了几个问题。

    现在网上很多免费的或收费很少的软件,如网络教室管理软件,如网吧管理软件,如远程监控软件很多。你给每个客户端在装PC的时候就都标配装上。这样,你以后就可以在信息科就可以掌控所有的计算机。那个计算机出了问题,你连接过去就看到了解决了,电话一交流,甚至内部IM系统一交流就全搞定了。

我的朋友不断点头称好。

    在项目的维护期,就涉及到版本更新的问题。尤其是有些行业客户,需要你在实施过程中就修改需求定制化软件,否则不修改完不让上线,非要按照他们的习惯做才肯用,自然更新版本不断。

而客户端非常多,更新一次非常累。而且哪个更新了哪个忘了更新,更新的版本一致不一致,都会引起数据异常的问题,以后报表不平,查问题就很困难了。所以,为了更新,网上有很多局域网内文件同步软件,可以设置定时监测更新,如中午吃饭的时候正好自动更新,也可以设置每次启动计算机自动监测更新。你也可以用用。

我的朋友脸有点窘说:嗯,确实是个点子。我现在更新仍然需要一台台的安装更新覆盖。更新一次确实挺累。

    我说:我现在已经改进的更好了了。直接在软件中集成同步功能了。客户端软件一启动的时候,先自动监测服务器上的版本一致不一致?如果不一致,就自动更新同步服务器上的软件文件。但是客户的局域网由于这权限那权限,网络安全设置极为怪异,所以有时服务器数据库能访问,但就是无法访问文件夹。这样的情形我们的同步功能也考虑了,一旦检测无法同步,会自动提示版本不一致,需要手工版本同步。就不允许他继续登陆软件继续使用,否则他机器上的软件还是旧的,BUG仍然没有修复,他输入进去的数据还可能是错误的,给后续的技术服务会带来很多的困难。

    我过去经常遇到这样的情形:网络管理员打来电话说版本更新了仍然软件功能不好使。最后双方争论的很厉害,客户支持部呢说他没更新,网管说更新了。客户支持部说再更新一次,可能更新时候有异常,网管说已经再次更新了。客户支持部说:那我远程支持连接看看。他说无法上网。只好出现场。如果这个客户在海南岛就惨了,成本居贵。去了一看,是有的更新了有的没有更新。更新一次,OK,全搞定了。惨,3分钟搞定的问题,却花了飞机出差,也花费了大量客服支持人员找问题的时间,客户满意度还不行。

    自从软件有了同步和版本监测功能,客服支持电话少多了。而且由于一次机缘,客户的服务器必须定时在线数据上传,我们又利用这次机会,做了在线更新探测。我们一旦发现问题更新了软件,就放到了我们的支持服务器上。客户的服务器有驻留软件定时探测,一旦发现有新更新,自动下载更新,可以更新数据库,也可以更新文件。服务器更新完了,客户端就会自动按照服务器的版本变化自动更新了。从此,客户满意度提高了不少。因为有的客户还没有发现那个BUG的时候,就已经被我们更新了。客服的工作更轻松了。

上线还有一个小窍门,这个也能帮助你缩短时间。这也是我的一个心得。

    我记得我做灯塔客户的时候,两家客户在不同的两座城市,但是两座城市比较近,2个多小时的路程。我实施完了A客户,去了B客户那里继续实施。但是A客户打了电话,说需要有些工作需要支持支持。我就去了。因为我已经实施他这家了,所以他也不好意思继续用我。我来支持他们,也是一是人情二是近。于是我一去了他就问我这次能在他这里待多少时间。我说大概1天。于是,他会立即召集他的下属,把平时积累的问题都拿了出来,非常配合也工作节奏非常快工作效率也非常高的完成了。如果我说大概能待3天,估计他的人影在第三天才能出现。这就是人的惰性,时间不催赶着他,他总觉得还有明天。

    所以,如果你去上线实施,如果一开始不明确告诉所有人,你必须1月后离开,而且必须实施完毕,那么他们半年都上不了线,即使上了线也是用的松松垮垮。如果限定项目时间,努力奔着这个时间,而且限定好项目此阶段着重解决的三个问题,他们就会工作节奏快的多。注意,不限定项目边界,项目时间目标都是假的,很容易就超过项目时间,再想遵守项目时间就很难了。

    我过去还实施过一家客户,没有实施前就是个松松垮垮的企业。小城市,人们中午11点下班后还回家买菜做饭,不像北京大城市中午回不去必须吃工作餐。他们还有午休时间。所以,小城市的生活是安逸的。但是我想快速实施。我早就准备好了很多项目过程管理表格和项目进度汇报流程。一去了,各种表格方法一拿出来,他们一看,来的人非常专业,混是不好混的,于是心情揣揣不安看我会如何。我每天邮件报告给我的老板、他的老板、项目涉及到的每个人,通报今天的工作内容和明天的工作计划。本来大家都觉得很难啃的一个客户,被我按计划时间完成。大家都一开始笑称我需要在那里买套房安家才能实施完,没想到我这么快。

    这个案例就说明,你自己得过且过不正规,别人更就不把你当回事。你举止文雅谈吐内涵,别人也不好意思在你面前大放厥词。

    我的朋友很尴尬的说:我服了你了。我实施多年,也没有想出你这么多招。总觉得什么都动不了。这些方法我们现在一个都没有用。如果用了,我相信能缩短现在一半实施周期。缩短了周期,就能减少成本。成本低了,利润就高了。

    我说:我也是没有办法,老板逼的,老板向我要效益啊。人在压力中,自然就能想出办法。你如果觉得无法突破,那么你真的就无法突破了。我就是由于不相信这个老规矩就破除不了,所以就大胆思考大胆尝试,最后还真管用。这些方法不仅仅能降低成本。你实施周期短了,你可以实施更多的客户,这是一个开源节流的好方法。企业利润,不外乎多赚钱,少花钱。我全办到了。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yiluyangguang1234/article/details/40781567

智能推荐

vue项目中引用tailwindcss与heroicons_tailwindcss icon-程序员宅基地

文章浏览阅读1.1k次。heroicons vue tailwindcss_tailwindcss icon

python字符串设置字体_Python字符串的操作-程序员宅基地

文章浏览阅读320次。默认以此为事例:name = "my name is fix zhang"1、首字母大写print(name.capitalize())结果:My name is fix zhang2、统计字符串中的数量print(name.count("a"))结果:23、自动补全剩余字符,文字位于中间print(name.center(50,"-"))结果:---------------my name is ..._python如何把字符串转成font可操作

回归三大评价指标均方误差(MSE):均方根误差(RMSE)平均绝对误差(MAE)平均绝对百分比误差 MAPE-程序员宅基地

文章浏览阅读7.4w次,点赞30次,收藏277次。对于回归预测结果,通常会有平均绝对误差、平均绝对百分比误差、均方误差等多个指标进行评价。这里,我们先介绍最常用的3个目录平均绝对误差(MAE)均方误差(MSE):均方根误差(RMSE)​平均绝对百分比误差 MAPE平均绝对误差(MAE)MAE 的值越小,说明预测模型拥有更好的精确度。The MAE is used to measure the average abso...

什么是RSS?-程序员宅基地

文章浏览阅读1.1k次。相对于BLOG来说,RSS的知名度相应会低很多,而且至今还没有一个非常贴切的中文词汇,也许以后无需中文名,大家都习惯于直接叫RSS了。RSS之所以同BLOG一样会被认为是热门词汇的一个原因,个人推测,应该是许多分析人士认识到RSS将要对互联网内容的浏览方法所产生的巨大影响。  RSS是一种描述和同步网站内容的格式,是目前使用最广泛的XML应用。RSS搭建了信息迅速传播的一个技术平台,使得每个人都成

Linux Debian9安装Go_debian 安装go1.12-程序员宅基地

文章浏览阅读954次。介绍Go,也称为golang,是由Google开发的一种现代开源编程语言。Go在许多应用程序中越来越受欢迎,它采用极简主义的开发方法,帮助您构建可靠,高效的软件。本教程将指导您下载和安装Go,以及在Debian 9服务器上编译和执行基本的“Hello,World!”程序。先决条件要完成本教程,您需要访问Debian 9服务器和具有sudo权限的非root用户,如使用Debia..._debian 安装go1.12

【总结】I/O多路复用及epoll的工作原理_io多路复用的原理和实现epoll-程序员宅基地

文章浏览阅读682次。目录第一部分 epoll原理最直观讲解第二部分 I/O多路复用之水平触发和边沿触发模式 第三部分 epoll的具体使用方法1.创建epoll实例:2.修改epoll的兴趣列表:2.事件等待:4:LT模式与ET模式5 EPOLLONESHOT事件第一部分 epoll原理最直观讲解转自知乎高分回答 https://www.zhihu.com/questio..._io多路复用的原理和实现epoll

随便推点

ctf base全家桶递归解密_qzz|kqbjrrs8qzrqdcywr4_doq7~jyo>0t4r4__aqzq9|rz+k_-程序员宅基地

文章浏览阅读6.2k次,点赞4次,收藏15次。base家族人丁兴旺,常见的有base16、base32、base64、base58、base62、base85、base91、base92、base100,在ctf中还有一些加密的组合,如zlib+base64,这是常用的网络通信的手段, zlib 压缩可以将字符串体积明显缩小(只有较长才能体现出来),而base64可以将刚刚压缩的二进制码变成可见字符,便于在语言中进行传递及网络通信。在ctf中,如果字符串可以使用base64解密,而解密后又有很多不可见字符,那就可能是zlib+base64的编码方式,对_qzz|kqbjrrs8qzrqdcywr4_doq7~jyo>0t4r4__aqzq9|rz+k_q!r#mr90+nr4_4nr%>ipo>0s{r

单臂路由可以实现不同VLAN之间的通信!_单臂路由可以联通不同vlan吗-程序员宅基地

文章浏览阅读84次。配置条件:1----必须要创建接口的子接口!!!!2---- IP地址配置必须是网关地址。即:图中int g0/0/1.1和it g0/0/1.2_单臂路由可以联通不同vlan吗

python用input输入列表_python怎么用input函数输入一个列表-程序员宅基地

文章浏览阅读8k次,点赞5次,收藏18次。在Python3.0以后,键盘输入使用input函数>>> x=input>>> 123123在命令行没有任何显示,输入123后直接赋值给x,并打印。仅仅使用input是无法解决大部分数据处理的,通常输入的字符串需要分割处理,python使用split()函数进行分割>>> x=input()1,2,3,4>>> xlist=x.split(",")>>> print(xlist)['1', '2..._xlist=[] for i in range(3): xlist.append([]) for j in range(3): x=eval(input

Unity 工具类 之 AR/VR Gaze 凝视/按键/鼠标 点击 UI/游戏物体 的交互方式实现_unity 鼠标放置 对应vr-程序员宅基地

文章浏览阅读2k次。Unity 工具类 之 AR/VR Gaze 凝视/按键/鼠标 点击 UI/游戏物体 的交互方式实现目录Unity 工具类 之 AR/VR Gaze 凝视/按键/鼠标 点击 UI/游戏物体 的交互方式实现一、简单介绍二、实现原理三、注意事项四、效果预览五、实现步骤六、关键代码七、参考工程一、简单介绍在Unity 的VR/AR开发中,一些工具类的整理,方便后期使用。在AR/VR 中,一般都会用到凝视交互,本节介绍,在 Unity ..._unity 鼠标放置 对应vr

moment.js当日时间默认值-程序员宅基地

文章浏览阅读723次。var Date = moment().millisecond(0).second(0).minute(0).hour(0);把当天时间设置为0:0:0转载于:https://www.cnblogs.com/JerryWang24/p/7569696.html_moment.js 默认今天

不用加减乘除符号的情况下实现加法运算(js代码)_js 不用+运算符做加法-程序员宅基地

文章浏览阅读518次。1.题目描述写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。2.解题思路根据按位异或,可得到没有进位的加法结果,关键在于怎么把进位再与得到的结果相加,才可以得到最后的结果。其中进位的情况是两个都为1时,与按位与运算的逻辑结果一致,但进位是与前一位相加,因此需要左移一位。3.具体的代码实现function Add(num1, num2){ // write code here //按位异或得到的无进位的加法 //按位与并且左移一位为进位值,进位_js 不用+运算符做加法

推荐文章

热门文章

相关标签