


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、作者:佚名 我在程序员的时候,我一开始追逐这个API怎么用,数据库SQL怎么写更优化,Dcom技术的细节,然后我发现我写出来的产品为了符合客户需求必须要大量修改,但是我的代码却粘在了一起,第一个感觉就是一个函数太长,一看就头痛,而且一个函数干了好多事。这些事本来可以一段一段的,每段写上注释,然后有意义命名,自己管理错误和内存,然后把这些函数连在一起,然后我作了这些:1、小函数;2、写上注释;3、有意义命名;4、自己管理错误和内存;5、流程函数;最后我发现我这些函数可以组合成各种各样的流程,我的程序终于好修改了,我很高兴。但是我又发现,我的界面和我的流程混在了一起,另一个程序也想使用我的函数,但
2、是我的函数中有对我的特定界面关联的代码,我不能连界面一起都给他,因为他有他的界面,但作的事我已经实现了,于是我把功能函数和界面控制分开了我就作了这些,我的代码很容易理解,即使新员工,只要他看完业务手册和数据结构,他就明白我代码为什么这么写。而且我的函数由于都是自己负责输入参数和输出参数的校验,有明确和统一的报错信息,所以很容易找到错误进行BUG修复。由于我的程序都是小函数组成的,都有明确报错,所以错误很容易找到,经过测试组的专业测试后,我的代码很稳定,即使出错,也扩散不大,都是小bug,对系统整体没有大影响虽然我在前进的过程中也经历过困惑,一心钻在OOP和设计模式中。但是有可能是功力不够,不得
3、其解。看着Delphi的源码,应用了很多的OOP和模式,并且他的类库多年发展也没有多大的改变,所以深信OO和模式的威力,而对自己的能力很灰心。但是代码还得继续写,还想进一步提高,于是才摸索出现在的一套做法。既实用又简单应用,每个人都能办到。我认为我的代码方法已经可以满足现在的产品制造,并且在软件性能调整上也积累了一些珍贵的经验。我发现性能最容易提高也效果最明显的就是用SQL profilter,优化SQL。优化代码,因为涉及到业务,很不好着手。优化数据库结构,由于代码都是构建在特定数据表之上,所以这是最难改的地方,但是我高兴了没多久,我又遇到问题了。因为我的程序即使再好改,但是客户的需求真是千
4、奇百怪,我每天在接听用户的电话,并且修改用户千奇百怪的问题。我很烦。于是我作了实施员。我想真正看看客户到底怎么回事。于是我理解了很多。我明白了很多的事情不是技术和软件所能解决的,而是现实环境的弊病。但是这个弊病还不是一个工程就能解决的,这是一个复杂的网。所以这些问题我就说服用户不要用软件来处理,因为软件是死的,而人的做法是灵活的。而且我发现用户虽然提了很多需求,但是有的需求他一个月用不了一次,但是修改起来却不容易。有的需求修改完,在实际应用中却发现不可行,那个需求只是客户想解决过去的问题而想的一个办法根本没有经过实际的校验。有的需求修改来修改去都是表面问题,在实际应用中才发现重点问题没有提需求
5、所以上线又搁下了,我作了总结:1、软件擅长大数据量计算和查询,还有数据联网共享,如果需求不能发挥软件特点,就不让软件实现。这样我少修改了一些;2、有的需求都是表面需求,修改了也用处不大,反而耽误了重点需求的提出和修改,所以告诉用户只修改核心功能。但是用户提了很多需求,不修改完不上线。后来发现,由于他们没有深刻理解我们系统的整体思想,所以没有上线实际用,根本不知道新改的功能是否好用。用户只是脱离了整体,单独思考想怎么就怎么,没上线根本他不知道后果,怎么说也不行,就得让他看见教训他才反悔,但是已经修改了。往往出现这样的情况。最后得出一个结论:一次只提三个需求,并且用书面提出,免的说了不算算了不说。
6、核心功能的需求修改可以满足80的日常使用就上线。这样我少修改了很多;3、并且我在实际做工程中,积累了大量的经验,写成FAQ,各种成功案例,让用户在没有提需求之前先看看自己到底有多少老软件实在不能解决而才买新软件帮助的事。新软件就是解决你过去解决不了的事。如果你没有解决不了的事,提什么需求;我的产品终于可以很快完成上线,所以可以大规模推广市场了,但是我们的产品制造又出问题了。因为客户越来越多,客户的需求越来越多。我们需要开发更多的系统,但是我们的时间有限,我们的人手有限,而且我们的人手大多是新手。怎么办。我们遇到了灾难。我们的代码质量因人而异。我们的版本管理混乱。我们的文档没有人编写,大家都被分
7、配到用户处去上线。怎么准备数据字典,怎么切换系统,怎么记录客户需求,怎么管理系统,怎么修改代码,我们没有任何记录。现场不能离开程序员一步,一离开用户出事了就不知怎么办,没有任何可查的资料。于是我又做了项目管理,我们缺少很多规范。事有千万,先从紧处来。写文档费时间,就开会给大家讲做事的经验。实施和代码修改需要什么必要规范就制定什么规范。在这期间最容易犯的错就是中央集权,什么事都必须自己做主。下属不管大事小事都请示你。我被搞的什么都干不了,都成了救火队员。我的团队陷入了混乱之中,因为我烦乱之中作了很多饮鸩止渴的决定。我于是又犯了一个错误,我说你们能决定的事尽量自己决定,不要问我,我权利下放。结果是
8、:各自作各自的事,互相不通知。有的事没人管,有的事多人修改,各有一套。我终于明白了,我作了以下总结:1、项目经理是找到得力的人,指导他们做事的方向。如果下属不知如何作时,及时提供给下属做事方法;2、制定规范,其实也就是做事方法;3、制定计划,分配人力去作。检查结果;4、有紧急事务立刻做出果断解决,继续前进;我的团队终于平静了下来,但是大家都很疲惫。大家干的很累,但是由于实施和修改消耗了大量的钱,我们没有赚钱,大家什么都没有得到。团队很灰心,也很失望。我下了计划,我自己都很灰心,大家认为再努力也不会再有结果,所以拖拖拉拉,进度和成本已成不可再提的事情。人,缺少了精气神,就什么都没有了。我们就是缺少了这些。我就开始重新建立团队的精神。我发现有人为了跳槽开始学习新的技术,而这
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论