`
jasph77
  • 浏览: 5791 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

我经历的--敏捷开发

阅读更多
    关心敏捷很久,今天看了某牛人的帖子 http://www.iteye.com/topic/254179?page=1
    突然发现,原来我也一直在敏捷嘛。

    记得去年(2007)跳槽到Ah公司,就接手一个棘手的项目。因为项目前期投入不够,工期一拖再拖,已经引起客户的不满。
    公司决定派我跟项目的主要开发者小zhu一起到客户那里做现成开发。一到现场,跟客户沟通以后就进入紧张的开发过程,拿着需求文档,一条条的开发,完成一个需求,就交付客户使用,收集意见,然后再改,再交付客户,收集意见......如此迭代,到达客户最终满意。
    经历了3个星期每天早8点,半夜12点后,客户终于开始满意。在我接手项目的一个多月以后,项目验收会召开,接下去好几期的客户培训。2个多月以后慢慢结束项目开发。开始接手公司另外一个项目的开发任务。


    第二个所谓的;敏捷;是在去年9月份左右(应该算1.5个项目),6月份因为公司要转后台系统架构,准备上J2EE。公司需要做java的人才,我也有意转java开发。
    经过2个月学习,8月份开发ZH项目的前期开发准备工作,技术部经理的指导下,在一个来自亚信强大外援支持一下,把系统一点点搭建起来,好像在8月底ZH项目顺利签约,9月初,我和例外一个做VC++的同事小song,我和前期做工程的先去,小song后来到,开赴现场。
    服务器上架,开发搭建,VC部分的加入,投入紧张的开发工作,进过努力,终于在十一前,完成基本数据流的运转、入库,业务数据的同步。十一以后,因为上海项目的启动,开赴上海,又是服务器的上架、装系统、开发系统搭建,小song的加入。
    功能的完成,交付客户。
    客户需求的提出,协商,确认;编码,测试,交付客户;收集意见,然后再改,再交付客户,收集意见..........客户OK。
    客户提出新的需求,协商,确认;编码,测试,交付客户;收集意见,然后再改,再交付客户,收集意见.........客户OK。
    如此不停的迭代,又是早8点、半夜12点,在过年前几个礼拜终于基本完成客户需求。
    中间在上海过了一个圣诞节,平安夜去自我放假了一个晚上,逛了商业外滩。外滩很美、就是气氛不对。2个大男人平安夜逛大上海,又是2个穷人。

    今年(2008)6月份中旬,过了年以后一直都在准备的上海HSJ的项目终于签约,项目的庞大和重要性,公司几乎所有的开发能力都开赴上海做现场开发。有了java项目经验的积累,我重新设计了系统架构,引入了spring/hibernate,系统进行模块化开发,我有了2个同事跟我一起做,根据2个人不同特点:一个做核心数据的流转层开发,一个做业务逻辑层开发。因为6月底因为个人原因要离开Ah公司,反倒落了个清闲,但是并不是说对自己的工作不负责任,只是不想做太多东西,等我离开了,影响了项目,更多的起了一个监督者、帮忙者的作用。中间还跟技术部经理da peng,因为是否引入消息bean中间件,意见相左,最后我模仿消息bean的机制自己写了个消息bean。其实我很想完成整个项目的开发,毕竟项目前期我投入了几乎全部的精力在上面,还自己写了一个类spring的东西,虽然后来没用上。听说上个月(9月份)的时候,项目已经顺利验收,但稳定性不是很行,我估计是没有引入消息中间件有很大原因。

   
    每次敏捷以后,技术提高很快,身心极度疲惫,原因有三:工期紧压力大,跟客户打交道累,生活条件艰苦。 ;
    敏捷的效果是老板最喜欢看见的,开发效率极高,在非常短的时间内交付,大大节约了生产成本。
    但对于员工来说,压力非常大,感觉有点变态(其实本人还是比较喜欢这种开发模式),
    但是从长远来说还是弊大于利,问题有四:
    一、软件产品质量(代码优美度,BUG率,用户体验效果)上,因为为了敏捷,大打折扣。质量是产品生存之道,软件也不能例外。
    二、文档缺陷,为了赶工期往往文档就省掉。大大增加了后期的代码的维护难道,如果一旦模块原有开发人员离职,将会是一场灾难。
    三、滥用人力,员工经常处于这种高压力下面,会很疲惫。随着工作时间、和年龄的增长,会厌倦工作,最后离职,造成人才流失。公司的技术无法得到沉淀,不利于公司长远长远发展。
    四、还没想到 :-)
分享到:
评论
31 楼 jasph77 2009-10-23  
30 楼 29 楼

在没仔细看别人文章之前,妄加评论。是非常不礼貌的。

还有你们只提出问题,不解决问题。 这样是不负责任的

男人要有责任感。
30 楼 seekgirl 2009-09-08  
他这个不是敏捷,他妈妈该叫他回家吃饭了
29 楼 darkjune 2009-09-07  
看一下敏捷宣言, 再理解一下其他的内容
28 楼 jasph77 2009-03-26  
hansen-van 写道
1.你们的项目不是真正的敏捷开发,应该算是增量和迭代开发相结合的方式。
2。敏捷开发以测试驱动开发为基础,倡导测试先行,因此,在做开发之前,针对所有的业务的单元测试已经完成,以后的开发工作就是相对于这些测试写业务逻辑。
3.而且,敏捷开发是非常强调代码的质量的,关键问题要有统一的编码规范。
4.敏捷开发强调沟通和合作,达到统一的思想,是一种以人为核心的开发方式。因此,一般需要用户和开发人员一起工作。而不是做完就让用户验证,这样效率不高,项目随时都处在风险的边缘。
5.如果真正的敏捷开发,为什么不去看看敏捷开发的原则和方式,然后就行开发。强烈建议看看有关敏捷开发的原则和方法。


嗯嗯,什么时候找本敏捷的书看看!
其实什么叫敏捷开发,也还不是很明白。
27 楼 gurudk 2009-03-25  
taboo 写道
不加班的敏捷在国内绝大部分公司都不可行


加班是软件业的现状,不要扣到敏捷上面。
26 楼 taboo 2009-03-25  
不加班的敏捷在国内绝大部分公司都不可行
25 楼 gurudk 2009-03-23  
这种强度,敏捷的有点惨烈,敏捷要有节奏感!
24 楼 hansen-van 2009-03-21  
1.你们的项目不是真正的敏捷开发,应该算是增量和迭代开发相结合的方式。
2。敏捷开发以测试驱动开发为基础,倡导测试先行,因此,在做开发之前,针对所有的业务的单元测试已经完成,以后的开发工作就是相对于这些测试写业务逻辑。
3.而且,敏捷开发是非常强调代码的质量的,关键问题要有统一的编码规范。
4.敏捷开发强调沟通和合作,达到统一的思想,是一种以人为核心的开发方式。因此,一般需要用户和开发人员一起工作。而不是做完就让用户验证,这样效率不高,项目随时都处在风险的边缘。
5.如果真正的敏捷开发,为什么不去看看敏捷开发的原则和方式,然后就行开发。强烈建议看看有关敏捷开发的原则和方法。
23 楼 黑男爵 2009-03-05  
应该说引入的迭代的概念还是比较容易解决客户满意度这个问题。
不过,现在还真很少有看到公司能够完整的实现XP开发的。毕竟老板嘛,利益优先。
22 楼 tuti 2009-02-11  
敏捷开发的意义在于,
年景好的时候,大家都有钱赚。
经济危机的时候,不要担心倒闭裁员。
21 楼 lqql 2009-02-11  
其实敏捷的作用是最大潜力的挖掘员工在8小时内的工作效率.
问下自己,你能完全集中精力8小时来进行开发?完全不可能.
敏捷的作用是提高效率而不是增加工作时间
20 楼 抛出异常的爱 2009-02-11  
tuti 写道
jasph77 写道
   
    但是从长远来说还是弊大于利,问题有四:
    一、软件产品质量(代码优美度,BUG率,用户体验效果)上,因为为了敏捷,大打折扣。质量是产品生存之道,软件也不能例外。
    二、文档缺陷,为了赶工期往往文档就省掉。大大增加了后期的代码的维护难道,如果一旦模块原有开发人员离职,将会是一场灾难。
    三、滥用人力,员工经常处于这种高压力下面,会很疲惫。随着工作时间、和年龄的增长,会厌倦工作,最后离职,造成人才流失。公司的技术无法得到沉淀,不利于公司长远长远发展。
    四、还没想到 :-)

    开发者不能对产品质量引以为豪的,不是 “敏捷开发”
    软件不能进行长期有效维护的,    不是“敏捷开发”
    员工对工作环境不满意的,        不是“敏捷开发”

    对于程序员来说“敏捷开发”基本意味着“美好生活”。
   

更高的生产力 != 美好生活.
还要有个真正了解敏捷意义的老板才行.
19 楼 tuti 2009-02-11  
jasph77 写道
   
    但是从长远来说还是弊大于利,问题有四:
    一、软件产品质量(代码优美度,BUG率,用户体验效果)上,因为为了敏捷,大打折扣。质量是产品生存之道,软件也不能例外。
    二、文档缺陷,为了赶工期往往文档就省掉。大大增加了后期的代码的维护难道,如果一旦模块原有开发人员离职,将会是一场灾难。
    三、滥用人力,员工经常处于这种高压力下面,会很疲惫。随着工作时间、和年龄的增长,会厌倦工作,最后离职,造成人才流失。公司的技术无法得到沉淀,不利于公司长远长远发展。
    四、还没想到 :-)

    开发者不能对产品质量引以为豪的,不是 “敏捷开发”
    软件不能进行长期有效维护的,    不是“敏捷开发”
    员工对工作环境不满意的,        不是“敏捷开发”

    对于程序员来说“敏捷开发”基本意味着“美好生活”。
   
18 楼 lqql 2009-02-11  
这叫敏捷...汗啊....这是小公司作坊式生产.
和敏捷相差比较大.敏捷正常的第一条是不加班的
17 楼 zousch 2009-02-06  
Element & lina 写道
典型中国式敏捷开发,lz应该醒醒。

外国式的敏捷是什么样的?
16 楼 Element&lina 2009-01-23  
典型中国式敏捷开发,lz应该醒醒。
15 楼 抛出异常的爱 2009-01-23  
jasph77 写道
glacier3 写道
这个也叫敏捷?!

到底何为敏捷?

你的实践中很多都是不可后退的.
就是说改变方向的能力弱.

引用
  客户需求的提出,协商,确认;编码,测试,交付客户;收集意见,然后再改,再交付客户,收集意见..........客户OK。
14 楼 jasph77 2009-01-23  
glacier3 写道
这个也叫敏捷?!

到底何为敏捷?
13 楼 jasph77 2009-01-23  
iamredeye 写道
可以说是迭代,但是不是敏捷还值得商榷


没说自己就是敏捷,自己感觉像而已。
12 楼 jasph77 2009-01-23  
kaverjody 写道
funny, how can you call this Agile??

第一,产品质量:
请参考scrum里面描述的Done Definition。

第二,文档缺陷:
working software over comprehensive documentation。敏捷宣言第一条,你认为你自己是敏捷?

第三,加班:
Agile processes promote sustainable development.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.
敏捷原则中的一条,你认为你自己是敏捷?

不要跟谈理论,最讨厌发引用一堆英文的家伙。
弄得以为自己非常强,懂E文似的。

相关推荐

    敏捷开发管理

    华为在软件开发管理领域经历了从传统方法到敏捷开发的重要转变,这其中包括了从集成产品开发(IPD)模式逐步过渡到敏捷开发的过程。本文将深入探讨这一转型过程中的关键节点以及敏捷开发的核心理念和实践。 ### IPD...

    软件开发方法-敏捷开发项目和可用性

    敏捷开发是一种旨在提高软件开发效率和适应变化的开发方法,其核心理念在于通过迭代和增量的方式,快速响应需求变更,提高软件的可用性和用户满意度。然而,敏捷开发在实际操作中可能会导致用户体验的问题,因为其...

    轻松Scrum之旅:敏捷开发故事

    本书《轻松Scrum之旅:敏捷开发故事》就是基于敏捷开发思想的实践经验,讲述了一个外企的一个新团队如何从零开始实施敏捷,经历挫折、失败、进步、成长,直到项目成功结束的故事。本书的创作完全是由 4 位作者共同...

    敏捷软件开发实践

    《敏捷软件开发实践》是一本深受读者喜爱的书籍,它不仅介绍了敏捷开发的核心理念,还深入探讨了如何将这些理念付诸实践。这本书通过一系列实用的例子和建议,帮助开发者更好地理解和应用敏捷方法论。 #### 二、...

    轻流-无代码--—企业敏捷数字化转型利器-2020.7-18页精品报告2020.pdf

    报告指出,由于信息化、数字化以及5G、云计算等技术的飞速发展,企业管理的不确定性和复杂性增加,管理软件开发方式经历了变革。传统的自主开发和外包开发方式存在周期长、成本高、不能快速适应企业不断变化的业务...

    敏捷开发:管理者的成功路线图白皮书

    然而,正如汽车行业的丰田和消费电子行业的戴尔所进行的精益生产转型一样,软件开发领域正在经历一场从僵化的、过程驱动的方式向更加灵活、以业务价值为导向的方法转变——这就是敏捷开发。 #### 敏捷开发概述 ...

    ISTQB-FL敏捷测试工程师培训大纲_v1_0

    ISTQB-FL敏捷测试工程师培训大纲提供了在敏捷开发环境中测试工程师所需掌握的知识和技能。大纲详细划分了敏捷软件开发基础、基本的敏捷测试原则、实践和过程以及敏捷测试方法、技术和工具三个主要学习模块。 首先,...

    一个真实的敏捷开发案例

    ### 敏捷开发案例分析:一个真实的Scrum项目经历 #### 背景与挑战 本文探讨了一个实际的敏捷开发案例,该项目旨在为荷兰铁路系统创建一个名为PUB的发布系统,用于集中控制所有车站的信息显示和音频广播。荷兰铁路...

    敏捷开发之旅.pdf

    敏捷开发的发展经历了几十年的时间,不同的时间点有不同的方法和理念出现。例如,1957年出现了增量开发方法,1970年瀑布式开发方式被正式提出,而到了1990年代,各种敏捷方法如Scrum、极限编程(XP)、水晶方法...

    2.分论坛:方法论与智慧化-姜信宝-敏捷回顾工具箱

    在软件开发及项目管理领域,敏捷方法论因其高效性与灵活性而备受推崇。其中,回顾会议作为敏捷实践中的重要环节之一,旨在帮助团队不断改进工作效率与产品质量。本次分享由资深敏捷专家Bob Jiang带来,主要围绕...

    前端开发简历模板-前端开发工程师-6年-苏州.docx

    * 消息推送中心:基于 Vue.js 框架,使用 npm 安装公司封装好的组件,以固定模板开发前端页面,提升开发效率,适应敏捷化开发模式 * 人脸识别小程序:基于原生的微信小程序开发,渲染 Camera 组件,动态设置 Camera ...

    敏捷与架构敏捷与架构

    13. **稳定化**:在敏捷开发中,稳定化的架构意味着有一个可靠的基础,可以支持频繁的交付和变化,同时保持系统的稳定性和性能。 总之,敏捷与架构的结合是实现高效、灵活和高质量软件开发的关键。通过采用敏捷方法...

    无代码--白皮书:企业敏捷数字化转型利器精品报告2020.pdf

    无代码开发的敏捷性体现在能够迅速构建应用,适应企业需求变化,并在短时间内完成系统的开发、测试和部署。传统开发方法需要数月甚至数年时间才能完成一个系统,而无代码开发可以将这一时间缩短到一周之内,提高了95...

    软件工程与软件敏捷开发实践.pptx

    ### 软件工程与软件敏捷开发实践 #### 第1章 软件工程概述 **软件工程**是一种系统化、规范化、可量化的软件开发方法。它关注于软件产品的设计、构建、测试和管理等方面,旨在提升软件开发的效率与质量。 - **...

Global site tag (gtag.js) - Google Analytics