×

Loading...
Ad by
  • 推荐 OXIO 加拿大高速网络,最低月费仅$40. 使用推荐码 RCR37MB 可获得一个月的免费服务
Ad by
  • 推荐 OXIO 加拿大高速网络,最低月费仅$40. 使用推荐码 RCR37MB 可获得一个月的免费服务

@

Over-Engineering 现在是讨论的热门,大量IT oursourcing 的失败使很多企业开始警觉,对vendor bubble做法看法日趋谨慎。我不知道IBM大量裁减是不是和oursourcing到IBM的项目数量减小有关,只知道IBM现在的利润是增长的,迹象好像自相矛盾。欢迎深入讨论。

One interesting discussion thread about over-engineering in project:

"Whether I practice TDD is irrelevant. Over engineering existed in Java long before TDD came to the forefront. Every project I come onto (commercial/financial) it is the same story. Java 'architects' over-engineer their creations and that code stays the same for years. 90% of interfaces in these type of scenarios only have one implementation and only ever will.

My experience tells me to add interfaces to implementations as and when they are needed, not before. "
Report

Replies, comments and Discussions:

  • 工作学习 / 专业知识杂谈 / 做SAP的不需太牛, 凡是从软件底层一件件做起,构成公司home-grow application framework的:SQL Proc/Func,LDAP, DAO, ODBC, DB Wareh, J2EE/.NET,JSF/AJAX, C/C++ Plug-In,都知道什么叫软件的Over-Engineering,和对企业的危害。:-)
    • 缺乏规划和战略眼光,管理层的责任。
      • 我的观点是,找个有真正行业经验的IT Mgr/Proj Mgr/Senior DBA/Senior Arch,在现有的人力,资源上,作系统的增值开发,从长远看,比oursouring to SAP vendor,being charged $200-300/h,take yrs to get sys mature, and still rely them to cont,要好得多。
        • Naive!
        • 等你开发好了,市场已经失去.Stupid business idea.
          • 我指的是企业内部开发。保守的做法是:雇几个half-year term consultants,做一个pilot project,进行knowledge transfer,这样做较容易跨越knowledge learning curve,然后内部人工接茬做。看来这里都是开发商业软件的,没有着眼企业内部管理的朋友。
            出发点不一样。
            • 没几个象你那样混到管理层的,你这里是知音难觅啊~
            • did you ever work for big company?half year? a few consultants?Pilot project?可笑!!那样开发出来的东西最后根本就是垃圾.不懂开发和软件维护就不要胡说.
              • 看来你不懂我说的pilot project 的含义。
                • 你到网上翻翻,看看招SAP Consultant一般要求多少年经验,就知道至少多少年能培养出能干点事的Consultant。
                  • 我从来就没有质疑过consultant 能力。我讲的是有关企业内部项目成本核算,和在一定budget下的新技术继承,和项目管理。
                • 你真会夸夸其谈,真正执行你就会知道,根本和你想象的是两回事
                  不过跟你说这些真是白费劲,你根本不懂大型项目的复杂程度,几个CONSULTANTS加上半年就想定调,太可笑了
                  • You are such a typical coder lacking of context focus. The so-called pilot project here I refer to is a SMALL project but SUFFICIENTLY COMPLEX enough to show key features of new technology, which will be adopted in future projects.
                    Half a year is the dedicated deadline for such a project which will be demo-ed to managerial level.
                    • 知道你说的pilot project 是什么意思。大型ERP系统的深度和广度远不是半年能够探到的,技术上倒不见得有什么新颖的,就是复杂庞大,靠的是经验。
                      • 他不懂DEVELOPMENT就会瞎说软件管理?半年连High Level Reuqirement都不一定出得来,还PILOT PROJECT.不懂装懂,还充内行.
                    • 没做过设计,别瞎说,让内行人看了笑话,没有全面了解用户要求的PILOT PROJECT注定是失败的.而
    • SAP的确搞得挺复杂的,可谓Over-Engineering的典范。
      大家不就是混口饭吗,有人搞些复杂的东西可以养活另外一大批人,挺好。
      • Over-Engineering 现在是讨论的热门,大量IT oursourcing 的失败使很多企业开始警觉,对vendor bubble做法看法日趋谨慎。我不知道IBM大量裁减是不是和oursourcing到IBM的项目数量减小有关,只知道IBM现在的利润是增长的,迹象好像自相矛盾。欢迎深入讨论。
        One interesting discussion thread about over-engineering in project:

        "Whether I practice TDD is irrelevant. Over engineering existed in Java long before TDD came to the forefront. Every project I come onto (commercial/financial) it is the same story. Java 'architects' over-engineer their creations and that code stays the same for years. 90% of interfaces in these type of scenarios only have one implementation and only ever will.

        My experience tells me to add interfaces to implementations as and when they are needed, not before. "
        • J2EE是另外一个 Over-Engineering 的例子。俺的看法很简单,做的东西要dummy都能用,这东西将来肯定有市场。那些人为复杂的东西,统统bullshit
          但是bullshit能带来paycheck的话,也很好!
          • 六年前曾开发类似rolia网站的东西,有人建议用J2EE, 有点overkill,我做了系统设计和关键模块的开发,做出了一个小web portal,适合中,小型网站,这是采用best practice,并且没有over-engineering的例子。
            • 你这个..这个不是你该画的图吧? 这么细节? MANAGER?
              • 6年前,小developer.
                • 哦,看贴不仔细:-) 我还觉得你养些什么人么,这个活还要你做:D
            • 看你这个网站的设计方案有意思
              1) XSLT技术的采用可以商讨。俺本人不太喜欢XSLT,缺乏逻辑性(巨烦descriptive语言)。如果用也好像从逻辑上讲该是Renderer的一部分啊。
              2) 开发这个网站的时候Hibernate还不成熟吗?为什么不拿来用而要自己开发object-rational table mapping tool呢(你的database access helper interface)?
              3) 静态网页多吗?如果多,好像用Apache更爽。把Apache推到Tomcat前处理clients的requests,只有动态需求的网页才pass到瞳猫,performance和scalability会不会更好呢?
              4) 砍掉EJB对于不用distribution的系统来说真的是个好主意。
              5) MySql是相当不错的选择。

              系统还在运行吗?让rolian给你测试一哈,大家一块上........
              • 静态页一般只是HELP html. 你可以看到,jsp is a view template, which integrates other JSPs in a predefined table. 我那时喜欢用xslt是因为webpage desginer 可以设计portlet xsl,business programmer将portlet html pieces合成page。
                • 嗯,既然用XLST,就没必要jsp,索性把数据model彻底和显示分开,由XLST定义显示,包含portlet, 好像逻辑上更清晰
                  • One of J2EE Best Practices: Use Servlet as Controller and JSP as View Container.
            • 服了你,就这么小规模的架构也画这么多图,我画这种设计图通常每个MODULE是一个PROCESS
              • 一个小的网站,用你的方法,用3-4个方框就可以画完流程,问题是没有细节,什么也没说。
            • 看了你的那个图. 感觉就是技术术语的堆砌而已. 基本没有business的内容. 倒有一点点象deployment diagram. 各位同仁怎么看?
              • 又看了看, 那个图好象什么也不是. 除了你自己, 估计没有一个developer知道从哪里开始. 各位developer说说, 你们看出图示的这个网站是做什么的吗? 能否发个稍微象样一点的.
                • agree. it's just a generic framework. no workflow, no page prototype, no data model ...
          • 另一个用 AJAX 但只采用 javascript,不用 overkill framework 的例子, 是我去年做的一个Java servlet plug-in 的小模块:在线实时多国语言翻译。见URL. 把鼠标移到你想要翻译的地方,一个小窗口就会弹出,给出法,德译文,动态译文来自:http://babelfish.altavista.com/
    • 牛哥就是牛,随便开个话题,就成热点,在如此注重眼球经济的今天,搞挨踢太屈才了,应该去搞Marketing。