应用JSF、Ajax和Seam开发Portlets(1/3)
本文主要讲述了如何用JBoss Portlet Container 和JBoss Portlet Bridge创建新项目,怎样配置一个JSF应用去使用JBoss Portlet Bridge,以及JBoss Portlet Bridge所具备的功能。
作者 李剑 发布于 2008年9月4日 下午5时46分
继InfoQ中文站报道过“数字是有效沟通的要素之一但不是全部”一文后,敏捷中国社区中的讨论又热火朝天的持续了一段时间,本文对其中的讨论进行后续报道。"当然,Rick,当然",Sam说"你们开发人员总是这样,什么时候你们才会说'没问题'?听着,如果你愿意周末加班,应该是有奖金的。"Jeff Xiong说道:
所谓有意义的估计值,是指(1)偏差范围小;(2)朝正向或负向偏差的概率相当。比如我说"我在2050年前后偏差50年会死",这不是什么有意义的估计值;我说"我在2008年之后100年内会死",这也不是什么有意义的估计值。给出越有意义的估计值,提供越多的信息量,就意味着出现偏差的风险越大。王鹏飞则反驳说:
那么在一个事实与估计出现负向偏差(或者正向偏差,取决于你说的对象)则估计者会因此受到惩罚(加班)的环境下,估计者会采用什么样的策略来提供估计值,这种环境会对量化管理/沟通产生怎样的影响。我本来不觉得这是一个很有研究价值的主题。
未必如此.Jeff Xiong继续回应:
……
估计值的偏差程度和风险水平是由估计对象的信息的准确性和估算方法决定的, 与你的所说的"给出越有意义的估计值,提供越多的信息量"并没有内在的因果关系。Anderson在软件工程的敏捷管理书中提供了一组实际项目的参考数据: 信息量足够的项目, 估算偏差为+10%. 信息量极度缺乏的项目,估算偏差在200%甚至更多. 在那个故事中,Rick团队里的Fred对Whatsis是很了解的并且有在多个项目中应用Whatsis的经验. 这就为Rick有可能为Sam提供较为准确的估计数据奠定了基础。
另一个是估计方法的问题. 这直接影响到估计结果的精确程度。
我本人用FDD多年,我总结过一套"风险-人日"的参考值以及确定风险系数的方法, 我用的效果很好。XP中怎么估算,也应该有相应的方法. 为了让估算值尽量保险, 一般会为估算结果加上一个缓冲值, 也就是所谓的偏差。 至于公司环境和商业上的因素, 本身并不影响估算结果的准确性, 但会影响人们如何对待估算结果。
实际上我认为用数字沟通是一种简单有效的方式,比如说与其费半天劲跟老板解释重构有什么好处我不如告诉他重构需要3个人日不重构你将在未来3个月里损失 20个人日的生产率。但是,用数字沟通或者说任何形式的沟通必须建立在一个基础上即沟通有可能改变一些事情。这也是为什么我说这是个不搭调的故 事:Rick要想不加班该怎么做?我觉得如果他不是特别笨或者特别没经验的话他就不会考虑去做一个比较准确的估计来沟通。王鹏飞说道:
……
听数据的人怎么对待这个数据,会直接影响给数据的人怎么说这个数据。一个倡导用数据沟通的环境,首先必须是一个给出估算数据出现误差时估算者不会因此受到惩罚的环境。
我一直都承认环境和商业因素的影响, 管理模式/文化氛围本身就是组织和制度层面应该解决的问题。我强调的是,在信息充分的条件下,一个可接受的估算值还是能得到的, 不要以成本,模糊等等为托词.讨论来讨论去,两个人说得其实并不是同一个话题,正如Tim.wu对王鹏飞指出的那样:
我意思是说, 在项目管理中引入量化的手段是有价值的。估算是可以做的, 估算的结果准确程度依赖我们对项目信息的掌握的情况。其实风险识别,估算工作量的作用不仅在于给领导一个数字, 在确定需求优先顺序,开发计划等方面也有作用。
我又读了读我们讨论的那篇文章,如jeff说的,没有人认为数字沟通不好。:)项目开发是否需要用数字衡量?如何衡量?看起来这并非是问题的核心所在,要想学会用数字说话,首先要知道问题所在、数字的意义所在,还有就是,你身处什么样的环境,想用数字达到什么样的效果,为了不同的目的应该怎样使用数据。
引两句文中市场部门的原句吧。"如果我们能在这个月底前交给他,他愿意支付一笔额外的费用。我知道这对你来说有压力,但你总是能够搞定这种棘手的事 情。""你们开发人员总是这样,什么时候你们才会说'没问题'?听着,如果你愿意周末加班,应该是有奖金的。" "把数据拿出来再跟我谈!我可没有时间听你说这些'但是',我要尽快告诉客户没有问题。"
……
不知你有否空再读读那篇文章,其实这儿沟通的问题真的不是"引入量化的手段对项目管理的作用":) Rick即使做了量化工作,他的敏捷之路的结局还是很令人担忧的。
已知批发商给出了一系列的订单,但当他给出解决方案之后,乃至表示可以“用线性程序运行这些数据,这样计算机就会给你们一个惊人的报告——甚至会有很多数学符号”,方才明白对方想要的并不是怎样把成本减少到最小。
TT公司应该如何在3个生产厂之间安排这些订单
才能使总成本——生产加运输成本——最小
本文主要讲述了如何用JBoss Portlet Container 和JBoss Portlet Bridge创建新项目,怎样配置一个JSF应用去使用JBoss Portlet Bridge,以及JBoss Portlet Bridge所具备的功能。
在这篇文章里,Bryon Jacob和Chris Berry将和我们继续探讨AtomServer,它是基于Apache Abdera的完整Atom存储实现。作者还创建了几个Atompub规范扩展,其中包括自动标记、批处理和Feeds聚合。
InfoQ中文站的电子杂志《架构师》试刊第二期出版了!相比于上期,我们在内容的选择安排和版式上都根据读者的意见重新做了修正。“细节决定成败”,我们希望基于InfoQ中文站的专业内容,《架构师》能逐渐成为大家喜欢的电子刊物!
在本文中,Steven Haines探讨了Web应用性能调优问题。该领域过去更像是一门艺术而不是一门科学。他提出了一种称为基于等待调优的方法,使整个调优过程更加可度量,也因此更具科学性。
通常来说,改变技术路线时最艰难的部分是辨别语言语法之间的不同。这篇文章就为Java开发者提供了一份如何转向Flex基础语言ActionScript的指南。
本视频主要以财帮子为例,介绍了如何创建一个PV为百万级的Rails应用。其中包括:Rails应用的服务器架构、Rails Cache的优化、负载均衡的处理、Web服务器的调试、分布式解决方案、Open API的设计等等。
InfoQ首席架构师Alexandru Popescu在采访中谈论了InfoQ架构、Webwork与DWR、Hibernate与JCR、Hibernate可扩展性、最新的InfoQ视频流系统和InfoQ的未来规划。
相对于Java,.NET在持续重构方面所给与的重视仍然少为人知,大多数人对于重构是否真正属于开发过程,以及如何将其应用到开发过程中持观望态度。Danijel Arsenovski试图为你揭示这些谜题。
没有回复
回复