不支持Flash

怎样成为优秀软件模型设计者的25条规则

http://www.sina.com.cn 2008年03月05日 08:25  赛迪网

  作者:执木

  1. 人远比技术重要

  你开发软件是为了供别人使用,没有人使用的软件只是没有意义的数据的集合而已。许多在软件方面很有成就的行家在他们事业的初期却表现平平,因为他们那时侯将主要精力都集中在技术上。显然,构件(components),EJB(Enterprise Java Beans)和代理(agent)是很有趣的东西。但是对于用户来说,如果你设计的软件很难使用或者不能满足他们的需求,后台用再好的技术也于事无补。多花点时间到软件需求和设计一个使用户能很容易理解的界面上。

  2. 理解你要实现的东西

  好的软件设计人员把大多数时间花费在建立系统模型上,偶尔写一些源代码,但那只不过是为了验证设计过程中所遇到的问题。这将使他们的设计方案更加可行。

  3. 谦虚是必须的品格

  你不可能知道一切,你甚至要很努力才能获得足够用的知识。软件开发是一项复杂而艰巨的工作,因为软件开发所用到的工具和技术是在不断更新的。而且,一个人也不可能了解软件开发的所有过程。在日常生活中你每天接触到的新鲜事物可能不会太多。但是对于从事软件开发的人来说,每天可以学习很多新东西(如果愿意的话)。

  4. 需求就是需求

  如果你没有任何需求,你就不要动手开发任何软件。成功的软件取决于时间(在用户要求的时间内完成)、预算和是否满足用户的需求。如果你不能确切知道用户需要的是什么,或者软件的需求定义,那么你的工程注定会失败。

  5. 需求其实很少改变,改变的是你对需求的理解

  Object ToolSmiths公司(www.objecttoolsmiths.com)的Doug Smith常喜欢说:“分析是一门科学,设计是一门艺术”。他的意思是说在众多的“正确”分析模型中只存在一个最“正确”分析模型可以完全满足解决某个具体问题的需要(我理解的意思是需求分析需要一丝不苟、精确的完成,而设计的时候反而可以发挥创造力和想象力 - 译者注)。

  如果需求经常改动,很可能是你没有作好需求分析,并不是需求真的改变了。

  你可以抱怨用户不能告诉你他们想得到什么,但是不要忘记,收集需求信息是你工作。

  你可以说是新来的开发人员把事情搞得一团糟,但是,你应该确定在工程的第一天就告诉他们应该做什么和怎样去做。 如果你觉得公司不让你与用户充分接触,那只能说明公司的管理层并不是真正支持你的项目。

  你可以抱怨公司有关软件工程的管理制度不合理,但你必须了解大多同行公司是怎么做的。

  你可以借口说你们的竞争对手的成功是因为他们有了一个新的理念,但是为什么你没先想到呢?

  需求真正改变的情况很少,但是没有做好需求分析工作的理由却很多。

 [1] [2] [3] [4] [5] [下一页]

本文导航:
·人远比技术重要
·经常阅读
·不要低估对软件规模的需求
·证明你的设计在实践中可行
·带工具的傻瓜还是傻瓜

发表评论 _COUNT_条
Powered By Google
不支持Flash
·《对话城市》直播中国 ·新浪特许频道免责公告 ·诚招合作伙伴 ·邮箱大奖等你拿
不支持Flash
不支持Flash