软件开发,我们还需要什么

不止一次我们的项目在靠开发人员硬扛着,bug来不及修改,文档还在猛补,项目经理又在催着出版本,每修改一个bug都要在代码的泥沼中摸爬滚打半天,却又在制造着另外的bug,为了文档而制造着根本没有参考价值的文档。每发布一个版本都要瞻前顾后并且总要无休止的加班,似乎开发人员永远有干不完的活。

我们不禁问自己,为什么会有那么多失败的软件,软件开发我们到底还需要什么? 

工具?我们不乏伟大的工具,IDE我们有eclipse、intelliJ、VC++等等,建模我们有Rose、together、Visio等等,配置管理我们Subversion、CVS、ClearCase等等,bug管理我们有ClearQuest、bugzilla等等,文档我们word、wps等,还有集成、测试甚至生成代码等等我们都有伟大的工具,工具我们不缺。流程?瀑布模型、迭代模型、UP、XP我们不缺流程管理的理论。知识?软件开发算是一项知识型的工作,我们的开发人员一般都是本科硕士毕业,况且搜索引擎如此发达的今天,知识根本不是问题,况且我们的软件开发需要多么高深的知识吗?

 优秀的理论支持、有能力的人员、先进的工具,这些我们都具备,我们所缺的只是一种软件开发的理念,缺少软件开发的情商。我们一开始学习编程知识接触到的就是C语言和数据结构,慢慢的一些结构化的思想就扎根于大脑,其实在商业软件中数据结构、算法很少涉及,我们所需要的仅仅是一种设计、开发的理念。比如用面向对象本来是一种简单的思想,目的是为了降低软件的复杂性而出现的,可是让熟悉了结构化编程的人去搞反而觉得很难。一些好的实践经验我们也经常提到,比如模块化、松散耦合、面向接口编程、类应只关注本职工作等等开发设计理念以及规范命名、详尽使用的注释、清晰的结构等代码规范以及每日构建、有效沟通、配置管理、bug管理等一些管理理念,这些做起来都非常容易,关键是懒惰是人的本性,不知不觉中我们就会犯着大家都在重复的错误。如果在项目开工之初就充分贯彻这些优秀的理念,在项目进行中无论时间多紧都持之以恒,并且项目进行中不断的反思代码中的坏味道,一经发现立即重构,相信我们的开发过程会进入一个良性的循环中去,我们的开发人员将会体会到什么是快乐开发。

posted on 2008-11-17 23:09 徐辛波 阅读(343) 评论(0)  编辑  收藏 所属分类: thinking in design


只有注册用户登录后才能发表评论。


网站导航:
 

导航

<2008年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

统计

常用链接

留言簿(1)

随笔分类

随笔档案

最新随笔

最新评论

阅读排行榜

评论排行榜