监理公司管理系统 | 工程企业管理系统 | OA系统 | ERP系统 | 造价咨询管理系统 | 工程设计管理系统 | 甲方项目管理系统 | 签约案例 | 客户案例 | 在线试用
X 关闭
建筑工程项目管理软件

当前位置:工程项目OA系统 > 建筑OA系统 > 建筑工程项目管理软件

从一个失败的项目说起——需求和设计

申请免费试用、咨询电话:400-8352-114

  由于是一个小项目,感觉需求也简单,再加上时间紧,如果从需求开始一步步来,时间肯定来不及,在这种情况下,项目就匆匆的开始了。为了节省时间,分层、设计等等都不去考虑了,想到哪写到哪,完全瀑布式开发。直接结果是,完工时间一拖再拖,最后不得不决定下一版本整个推倒重来。项目失败的原因有两个:需求分析不到位、架构设计不合理。

  需求和架构设计是相辅相成的,如果需求分析做的好,架构设计合理,那么就可以灵活的适应变化的需求,这是理想的状况。如果需求好了,架构有不合理的地方,项目也可以实现,只是以后的维护会有困难。架构好了,需求没有做好,随着需求的进一步完善,项目也会完成,这是容易实现的一种状况。如果都没有做好,象这个项目一样,就只能有两种选择:

  1、尽早重来,这样虽然会推出项目的完成日期,但总的来说还是省了时间,也可以交出一个满意的项目。

  2、通过架构的修补、需求的完善,先在规定时间交出一个不完善的版本,等下一个版本在重新开始。

  好的需求,会加快项目的进度,也可以给开发人员的设计提供帮助。项目开始前一定要做好需求和设计,至少要有明确的思路,匆忙开始的项目很可能会失败,至少也会走弯路,而走弯路花的时间很可能会超过在需求和设计上省下来的时间,更不用说失败的项目所造成的后果。需求和设计难做时,也可以先动手实现一个版本,让客户体验,这样可以防止设计上迷失方向,在设计上走错路。

  小型项目是不是还需要设计?

  我以前一直认为,项目小,完全可以不做任何设计,类、接口等都不用去想,分层也是不必要的,因为做设计会花时间,实现设计也会花比直接写代码(如双击按钮,在事件中写代码,而不去掉用已经封装好的实现。)花更多的时间。简单有效的方法就是边想边写,这样可以有最快的开发速度。但通过这个项目,我认识到,小的项目,也可能存在你现在还没有发现的陷阱,如果采用上面的开发方式,遇到陷阱时就不能灵活应对,因为架构不好。更不用说,经常要变化的需求,等需求一变,又是头痛的时候,还是因为架构不好,最后设计越来越糟,到处都是重复的代码,时间在逐渐的流逝,而项目的进度会越来越慢,你最后发现,要想让项目完美的实现已经不可能了,时间都浪费在一些重复的劳动上,而有好的架构,这些都是可以避免的。人也会变的绝望,面对着象线团一样的代码,根本没有了工作的激情,也没有了动力。再加上一些小项目有时候会牵扯到几个系统,按照这种设计,根本没有办法进行单元测试,集成测试又会耗费太多的时间,有时根本就不能测试。结果只有痛苦的重新开赛。

  而有好的设计,情况就会完全不同,开始会慢一些,而随着项目的进行,一切会逐渐的明晰,你也不会惧怕陷阱和需求的变化。看着项目在一天天的完善,心情也会开心。最好项目会成功。

  因此,即使是小的项目设计也是十分必要的。

  什么是好需求?

  需求要从客户的角度去寻找,需求是客户要求的抽象,而不是具体的表现,这样做的需求才能对以后的设计产生积极的影响。而一些具体的要求可能都是易变的,这些可能是商业政策,而不是真正的需求。需求总是易变的,这就要求架构要有灵活性,灵活性不是靠提前设计实现“你认为将来会有的需求”,而是靠抽象,这样可以在需求变化时,架构做最少的修改。从开发者角度说,需求是架构必须要实现的要求,要把抽象的需求再扩展到具体。这样需求就经历了从具体(客户的描绘)到抽象(架构,好的需求)再到具体(实现)的一个过程都是自己的理解,有不合理的地方请指教,刚才图书馆借了本关于需求的书,以前对需求了解太少了,上学时学的印象不深,只有碰到问题才能加深理解。

发布:2007-04-14 15:27    编辑:泛普软件 · xiaona    [打印此页]    [关闭]
相关文章:
建筑OA系统
联系方式

成都公司:成都市成华区建设南路160号1层9号

重庆公司:重庆市江北区红旗河沟华创商务大厦18楼

咨询:400-8352-114

加微信,免费获取试用系统

QQ在线咨询

泛普建筑工程项目管理软件其他应用

项目管理工具 禅道项目管理软件 梦龙项目管理软件 微软项目管理软件 装饰管理系统 装修预算软件 项目计划软件 项目进度管理软件 软件项目管理工具 材料管理软件 工程项目管理软件系统 项目管理系统 施工管理软件 建筑工程项目管理软件 工程管理软件