`
danizhg
  • 浏览: 1018 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

大公司里的小敏捷(1)

阅读更多
现在讨论敏捷过程已经不是一个新鲜的话题了,新技术公司大都在应用敏捷去改变现在的开发状态,但是不得不说,在一些传统的软件公司或者传统的Leader的领导下,我们的team怎么去敏捷那。我这里有点不成文的想法,希望和大家讨论:
1、数据的敏捷————对于一个项目来说,保证质量当然是需要良好的测试,而良好的测试对数据的要求是非常高的,那么我想应该从需求阶段开始准备数据了,而且要维护好数据,保证数据的同步。

2、应对变化:快速的开发pototype。这点很重要,要让客户有一定的体验的话,这个是必需的,我很看好grails,这是个快速开发的好方式,而且,这样的话对于一些辅助性的数据的保持也是很好的方式(ps 现在好多function的测试人员联数据库的select都不会。。。)

3、性能至上:说这句话真的不是说业务function就不重要了,我觉得应该一开始就要关注性能,这基本上是每个大型JavaEE不可回避的问题。

(待续)
分享到:
评论
17 楼 comet12345678 2008-02-02  
gigix 写道
comet12345678 写道
Lucas Lee 写道
我以前也以为性能问题总是可以到最后再调整。
不过几年前一次失败的经历让我改变了这个看法。
那是在hibernate和EJB流行之前,我们自己按面向对象方法开发一个b/s的CRM系统。
最大的问题之一就是性能问题,最严重的是按用户权限过滤可看到的数据,是在数据load后挨个过滤而不是直接在sql层面用where过滤。
可想而知,会是多么慢。

所以,对于性能问题,我的看法改为:根据经验在开始时估计一下大概的瓶颈和负载能力(是否能合适),然后到后期再调整。如果有疑问就要先做性能测试,不能盲目认为性能是小问题(特别是没有直接经验,直接在这里看人家说的人,呵呵)。


   性能问题既可能是实现问题,也可能是结构问题,结构问题在开始就要考虑,实现可以局部调整。

但是不要忘了,最严重的性能问题,是难以定位难以修复的那一类性能问题。而难以定位难以修复,往往是由于代码质量低下造成的。而代码质量低下,很多时候正是因为过早地考虑性能造成的。


      所以开始考虑的是结构问题,而不是实现细节。
      不过,代码质量低下,再好的架构,再好的方案都没用了。
16 楼 gigix 2008-01-31  
comet12345678 写道
Lucas Lee 写道
我以前也以为性能问题总是可以到最后再调整。
不过几年前一次失败的经历让我改变了这个看法。
那是在hibernate和EJB流行之前,我们自己按面向对象方法开发一个b/s的CRM系统。
最大的问题之一就是性能问题,最严重的是按用户权限过滤可看到的数据,是在数据load后挨个过滤而不是直接在sql层面用where过滤。
可想而知,会是多么慢。

所以,对于性能问题,我的看法改为:根据经验在开始时估计一下大概的瓶颈和负载能力(是否能合适),然后到后期再调整。如果有疑问就要先做性能测试,不能盲目认为性能是小问题(特别是没有直接经验,直接在这里看人家说的人,呵呵)。


   性能问题既可能是实现问题,也可能是结构问题,结构问题在开始就要考虑,实现可以局部调整。

但是不要忘了,最严重的性能问题,是难以定位难以修复的那一类性能问题。而难以定位难以修复,往往是由于代码质量低下造成的。而代码质量低下,很多时候正是因为过早地考虑性能造成的。
15 楼 comet12345678 2008-01-30  
Lucas Lee 写道
我以前也以为性能问题总是可以到最后再调整。
不过几年前一次失败的经历让我改变了这个看法。
那是在hibernate和EJB流行之前,我们自己按面向对象方法开发一个b/s的CRM系统。
最大的问题之一就是性能问题,最严重的是按用户权限过滤可看到的数据,是在数据load后挨个过滤而不是直接在sql层面用where过滤。
可想而知,会是多么慢。

所以,对于性能问题,我的看法改为:根据经验在开始时估计一下大概的瓶颈和负载能力(是否能合适),然后到后期再调整。如果有疑问就要先做性能测试,不能盲目认为性能是小问题(特别是没有直接经验,直接在这里看人家说的人,呵呵)。


   性能问题既可能是实现问题,也可能是结构问题,结构问题在开始就要考虑,实现可以局部调整。
14 楼 抛出异常的爱 2008-01-30  
Lucas Lee 写道
我以前也以为性能问题总是可以到最后再调整。
不过几年前一次失败的经历让我改变了这个看法。
那是在hibernate和EJB流行之前,我们自己按面向对象方法开发一个b/s的CRM系统。
最大的问题之一就是性能问题,最严重的是按用户权限过滤可看到的数据,是在数据load后挨个过滤而不是直接在sql层面用where过滤。
可想而知,会是多么慢。

所以,对于性能问题,我的看法改为:根据经验在开始时估计一下大概的瓶颈和负载能力(是否能合适),然后到后期再调整。如果有疑问就要先做性能测试,不能盲目认为性能是小问题(特别是没有直接经验,直接在这里看人家说的人,呵呵)。

这就是为什么翻页没被取消的原因。
PS:对于敏捷的系统来说
把load后的数据挨个过滤
改成到sql里加where条件
叫作重构。
这是敏捷可以接受的变更

我的看法是把所有的性能问题要变成需求来作。
而不是bug来修改。
13 楼 LucasLee 2008-01-30  
我以前也以为性能问题总是可以到最后再调整。
不过几年前一次失败的经历让我改变了这个看法。
那是在hibernate和EJB流行之前,我们自己按面向对象方法开发一个b/s的CRM系统。
最大的问题之一就是性能问题,最严重的是按用户权限过滤可看到的数据,是在数据load后挨个过滤而不是直接在sql层面用where过滤。
可想而知,会是多么慢。

所以,对于性能问题,我的看法改为:根据经验在开始时估计一下大概的瓶颈和负载能力(是否能合适),然后到后期再调整。如果有疑问就要先做性能测试,不能盲目认为性能是小问题(特别是没有直接经验,直接在这里看人家说的人,呵呵)。
12 楼 抛出异常的爱 2008-01-30  
gigix 写道
花花公子 写道
对于性能,忘了是谁说的,“当它成为一个问题,它才是问题”。

我告诉你一个从大量咨询项目中得到的经验

如果一个人感到自己的项目有严重的问题
但是又不能/不敢/不愿说出到底是什么问题
他就会说有性能问题

凡是有人跟你说他的项目有性能问题,你就大胆的猜他在需求/质量/沟通上有问题。真正有性能问题而不能用常见的敏捷实践解决的情况出现概率之小,以致于我每次都敢拿一顿晚餐来打赌。

听了这话。。。。我再加一顿。。。
明天再去酒桌上调研一下。
11 楼 windedge 2008-01-30  
抛出异常的爱 写道
dearwolf 写道
2、应对变化:快速的开发prototype。这点很重要,要让客户有一定的体验的话,这个是必需的,我很看好grails,这是个快速开发的好方式,而且,这样的话对于一些辅助性的数据的保持也是很好的方式(ps 现在好多function的测试人员联数据库的select都不会。。。)

测试员不应该会....
而且原型开发是瀑布的典型用法.

敏捷开发用原型开发又怎么了?

原型的主要目的是重复....
我并不是说原型不好,
对于瀑布来说.....
但是你见哪个敏捷的东西是用原型拷贝出来的?
敏捷是把模块先搭出来....之后重用.


对原型的理解不一样?希望看到更深入的探讨~
10 楼 gigix 2008-01-30  
花花公子 写道
对于性能,忘了是谁说的,“当它成为一个问题,它才是问题”。

我告诉你一个从大量咨询项目中得到的经验

如果一个人感到自己的项目有严重的问题
但是又不能/不敢/不愿说出到底是什么问题
他就会说有性能问题

凡是有人跟你说他的项目有性能问题,你就大胆的猜他在需求/质量/沟通上有问题。真正有性能问题而不能用常见的敏捷实践解决的情况出现概率之小,以致于我每次都敢拿一顿晚餐来打赌。
9 楼 庄表伟 2008-01-28  
chengren 写道
花花公子 写道
对于性能,忘了是谁说的,“当它成为一个问题,它才是问题”。

嘿嘿。。。
那你的硬件服务器是怎么规划出来的呢?


不是他规划的...
8 楼 balaschen 2008-01-28  
引用

1、数据的敏捷————对于一个项目来说,保证质量当然是需要良好的测试,而良好的测试对数据的要求是非常高的,那么我想应该从需求阶段开始准备数据了,而且要维护好数据,保证数据的同步。

这样还敏捷么
不要乱用新鲜词
7 楼 chengren 2008-01-25  
花花公子 写道
对于性能,忘了是谁说的,“当它成为一个问题,它才是问题”。

嘿嘿。。。
那你的硬件服务器是怎么规划出来的呢?
6 楼 抛出异常的爱 2008-01-25  
大部分的观点还是很有价值的.
等待楼主继续
5 楼 花花公子 2008-01-25  
对于性能,忘了是谁说的,“当它成为一个问题,它才是问题”。
4 楼 xly_971223 2008-01-25  
引用
性能至上

这就是胡扯了 性能是最后考虑的一个问题
只要不写出低级代码 性能的瓶颈就集中在那么几点,专门解决就可以了
3 楼 抛出异常的爱 2008-01-24  
dearwolf 写道
2、应对变化:快速的开发prototype。这点很重要,要让客户有一定的体验的话,这个是必需的,我很看好grails,这是个快速开发的好方式,而且,这样的话对于一些辅助性的数据的保持也是很好的方式(ps 现在好多function的测试人员联数据库的select都不会。。。)

测试员不应该会....
而且原型开发是瀑布的典型用法.

敏捷开发用原型开发又怎么了?

原型的主要目的是重复....
我并不是说原型不好,
对于瀑布来说.....
但是你见哪个敏捷的东西是用原型拷贝出来的?
敏捷是把模块先搭出来....之后重用.
2 楼 dearwolf 2008-01-24  
2、应对变化:快速的开发prototype。这点很重要,要让客户有一定的体验的话,这个是必需的,我很看好grails,这是个快速开发的好方式,而且,这样的话对于一些辅助性的数据的保持也是很好的方式(ps 现在好多function的测试人员联数据库的select都不会。。。)

测试员不应该会....
而且原型开发是瀑布的典型用法.

敏捷开发用原型开发又怎么了?
1 楼 抛出异常的爱 2008-01-24  
3、性能至上:说这句话真的不是说业务function就不重要了,我觉得应该一开始就要关注性能,这基本上是每个大型JavaEE不可回避的问题。

瀑布汗....这样是敏不起来的.
敏捷这东西是指在开始时只考虑最少最有必要的东西.

2、应对变化:快速的开发prototype。这点很重要,要让客户有一定的体验的话,这个是必需的,我很看好grails,这是个快速开发的好方式,而且,这样的话对于一些辅助性的数据的保持也是很好的方式(ps 现在好多function的测试人员联数据库的select都不会。。。)

测试员不应该会....
而且原型开发是瀑布的典型用法.


1、数据的敏捷————对于一个项目来说,保证质量当然是需要良好的测试,而良好的测试对数据的要求是非常高的,那么我想应该从需求阶段开始准备数据了,而且要维护好数据,保证数据的同步

这点放最后....至少要放到页面的敏捷之后...

相关推荐

    敏捷论坛-姚元庆-这里敏捷“静悄悄”

    “春天工程”涵盖了多个产品,如移动营销宝、金融小店、营销管家、营销派等,它们为银行的客户经理乃至全体员工提供了强大的移动营销工具,覆盖了多种渠道和平台,如手机、PAD、掌银、微信、小程序等。通过这一工程...

    大产品小团队携程敏捷技术与管理转型实战6134859.epub

    敏捷并不是什么新玩意儿,但它已经成为这个瞬息万变的互联网+科技商业时代的主流管理运营体系。如果一个企业还没开始拥抱敏捷并付诸实践,那它很快就要被淘汰了! 现在我们遇到的问题大多是如何让敏捷落地,如何把...

    大敏捷的本质.pdf

    ### 大敏捷的本质 #### 赵卫 (David ZHAO) ##### 敏捷教练及顾问 ##### IBM大中华区敏捷及DevOps卓越中心主管 --- ### 大敏捷概述 在探讨“大敏捷”的本质之前,我们需要理解何为“大敏捷”。通常来说,“大...

    敏捷开发,敏捷开发,敏捷开发,敏捷开发

    敏捷开发的核心价值在于通过小步快跑的方式,快速迭代产品,并在每个迭代周期内收集用户反馈,从而确保产品的最终形态能够最大程度地满足用户需求。 #### 二、45个高效开发习惯 本书详细介绍了45个帮助开发人员...

    敏捷开发最佳实践-九大实践

    以下是对“敏捷开发最佳实践-九大实践”的详细阐述: 1. 完整团队:一个完整的敏捷团队通常包括开发者、测试者、产品经理和设计师等角色。所有成员共同参与决策,协作完成项目,确保团队内部沟通高效,从而快速响应...

    迈向下一代敏捷

    黄邦伟博士通过具体的案例展示了如何利用这种小框架来实现模块化的敏捷实践,从而使企业能够在不断变化的市场环境中保持竞争力。 #### 五、敏捷开发的新视角:Super Scrum 黄邦伟博士在文中提出了一种名为“Super ...

    阿里云飞天云敏捷版(小飞天)技术白皮书

    阿里云飞天云敏捷版(小飞天)全方位地满足企业客户利用CaaS(Container as a Service)进行应用现代化上云的需求。飞天敏捷版包含了阿里在公有云上的最佳实践和Docker企业版的安全能力,打造企业一体化化的本地容器...

    敏捷项目管理——敏捷石蕊测试

    ### 敏捷项目管理——敏捷石蕊测试 在当今快速变化的商业环境中,敏捷方法论因其灵活性和响应性而受到广泛推崇。对于那些希望确保自己的项目遵循敏捷原则的人来说,“敏捷石蕊测试”提供了一套简单而实用的标准。...

    小规模团队敏捷开发Scrum

    ### 小规模团队敏捷开发Scrum #### 敏捷开发概述 敏捷开发是一种以人为本、迭代、增量的软件开发方法论,旨在快速响应变化,并通过早期和持续交付可用软件来满足客户需求。Scrum作为敏捷开发的一种实践框架,尤其...

    [免费PDF高清]精益和敏捷开发大型应用指南之读书笔记.rar

    《精益和敏捷开发大型应用指南》是一本深入探讨软件开发领域的专著,旨在结合精益管理和敏捷开发的方法,为构建大规模应用程序提供实用的指导。书中的笔记涵盖了关键概念、原则和实践,对于理解这两种方法如何协同...

    Flash敏捷开发:快速学习敏捷软件开发

    ### Flash敏捷开发:快速学习敏捷软件开发 #### 敏捷软件开发概述 敏捷软件开发是一种迭代的方法论,用于管理新软件开发项目的过程。它强调快速响应变化、客户满意度以及持续改进。与传统的瀑布模型不同,敏捷方法...

    敏捷开发基本概念

    1. 重视人和交互高于过程和工具:敏捷开发认为人的交流和合作是推动项目成功的关键,而流程和工具虽然重要,但不能替代人际间的沟通。 2. 可以工作的软件高于详尽的文档:敏捷强调的是通过频繁交付可用的软件来证明...

    软件项目管理论文:敏捷在软件开发中的应用

    本文从敏捷方法的定义,提出背景,实施方法等方面对敏捷方法进行描述,并与...简言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。在实践中,开发人员

    敏捷开发与测试

    敏捷开发与测试要求项目规模不宜过大,通常适合于20至40人左右的团队。对于更大规模的项目,敏捷方法需要结合实际进行适当的调整和创新。对于那些对系统的关键性、可靠性、安全性有较高要求的项目,敏捷方法可能需要...

    敏捷思维:架构设计的敏捷视图

    【敏捷思维:架构设计的敏捷视图】 在IT行业中,敏捷思维逐渐成为现代软件开发的核心理念,它强调灵活适应变化,快速迭代,并注重团队协作。本文将深入探讨敏捷思维在架构设计中的应用,重点关注如何创建既灵活又...

    敏捷mini培训总结

    敏捷开发是一种以人为本、灵活应对变化的软件开发方法论。它强调快速反馈、团队协作和持续改进,以提高软件开发的效率和质量。敏捷宣言是敏捷方法的核心指导原则,包括四个价值观:个体和交互胜过过程和工具,可以...

    华为敏捷开发介绍

    为落实敏捷软件开发在我司的顺利推行,使广大软件开发管理者和开发人员深刻领会敏捷核心理念,熟练掌握敏捷实践方法,从而达到增强应对需求变化的能力、提高产品质量、提升开发效率和缩短交付周期等方面的目标。...

    Scrum实战 敏捷软件项目管理与开发

    作为经验丰富的敏捷和精益教练,Andrew帮助许多公司在实际项目中成功地实施了敏捷(Scrum)和精益(Kanban),培训美国和其他国家的开发团队。  Phuong-Van Pham目前是一家大公司的项目经理。她拥有的认证包括PMP、...

Global site tag (gtag.js) - Google Analytics