`
zhanyingle_1981
  • 浏览: 326291 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

敏捷开发的一些思考

阅读更多

最近两个月,加入一个engineering的项目,项目采取的是敏捷 Scrum的开发方式,我进入的时候, sprint3已经结束。本人经历了sprint4和正在经历sprint5。 虽然只是扮演普通开发人员的角色,在此过程中也积累了对敏捷开发的一些思考:

1. 关于Scrum Meeting
   理论上: Scrum Meeting每天一会, 全员参加,每个成员总结前面一天所做的事情: 完成的, 未完成的, 遇到的问题,然后是今天需要做的事情: 计划完成的事情
   实际中: Scrum Meeting执行力度不够,并没有坚持每天都开。
   建议:   1. 任命专人负责,pm或者sa, 负责开Scrum Meeting,实行问责制。
            2. 最好站着进行,能提高效率。

2. 关于任务安排
   理论上: 每个task的分割和安排都能达到合理的颗粒度,task的责任人明确知道每天的任务:内容,进度等。
   实际中: 出现过task的delay。
   建议:   1. 及时交流进度,Scrum Meeting的意义就在于此。
            2. 最好站着进行,能提高效率。
  
3. 结对编程
   理论上: Coding人员的安排,可以考虑结对编程。
   实际中: 基本是这么安排的,一个模块2-3个人,最多的模块4-5个。
   建议: 1. 结对编程的兄弟姐妹要加强沟通,最好是坐在一起, 至少能很及时方便的沟通。
          2. 对于能力一强一弱的,比较好安排,能力强的做主要部分,但需要分出基础部分给搭档。对于个人能力差不多的,需要强调沟通意识,尽量将任务划分的够清晰。

4. 关于文档
   理论上: 敏捷开发更注重coding的质量,觉得良好的coding比文档更能说明逻辑。
   实际中: 出现人员变动: 离职,新成员加入,尽管有设计文档,单只能说是概要设计,导致交接和新队员的融入遇到一些困难。
   建议:   1. 需要记录每个Sprint潜在的问题, 比如一个功能是分散在多个sprint中,而且是经过了多个人接手,每个sprint中完成的任务对功能的实现的影响是什么需要有记录,发生人员变动时
               才能比较好的理解已完成的,未完成的,目前存在的问题。
            2. 还是需要实现的人员提供比较详细的设计,并加强review。

5. 关于测试
   实际中: UT都是由开发人员自己完成,自己写代码,自己写测试,自己测试。 FT设计了统一的case, 实现并测试功能,没有测试人员,由开发人员实现了自己测。 前面的sprint做过集成测试,后面的sprint由于各组件都在变动和开发中,还没有到能做集成测试的程度。 曾经用hudson+maven+svn做过持续自动化测试。当中有段时间基本没看,后来强调了,加强了,但又松懈了。
   建议: 1. 安排专人负责测试: 包括FT的实现,测试以及自动化测试,需要实行daily build,加强QA。

6. 关于数据库。
   实际中: 由于开始的时候,各个组件采取单独开发,单独维护自己的数据,应该在sprint3,4中出现数据库的实例太多,既有开发用的,也有测试用的,还有测试性能用的,导致数据库管理方面出现了一定程度的混乱。 后来找了DBA进入项目组,负责维护所有的数据库。

0
0
分享到:
评论

相关推荐

    敏捷开发的实践与思考PPT课件.pptx

    敏捷开发实践与思考 敏捷开发是一种软件开发方法,它强调团队协作、快速响应变化、灵活适应需求和业务价值的 deliveries。敏捷开发实践的目的是为了提高项目的成功率,降低项目的风险和成本。以下是敏捷开发实践的...

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

    作者在亲身经历和观察了不同公司和团队后,开始深入思考敏捷开发背后的哲学思想和实践方式。这些思考和经验最终促使作者在IBM中国软件开发中心担任ScrumMaster角色,并由此积累了宝贵的经验。 ### Scrum的起源与...

    敏捷开发中编写高质量Java代码

    【敏捷开发中编写高质量Java代码】的实践策略 在敏捷开发模式下,代码质量的提升是项目成功的关键因素。为了确保Java项目的代码质量,我们可以遵循五个关键步骤: 1. **统一编码规范与代码样式** - 编码规范是...

    敏捷软件开发.pdf

    敏捷开发中的敏捷联盟(Agile Alliance)是由一些业界专家在2001年成立的,他们通过亲身实践和帮助他人实践,探索并推广更好的软件开发方法。 敏捷开发不仅仅是一种软件开发方法,它更是一种思维方式,它倡导快速...

    华为敏捷开发介绍华为敏捷软件开发解读V101.ppt

    华为敏捷开发介绍 华为敏捷软件开发解读V101.ppt是华为公司的一份关于敏捷开发的介绍文档,旨在提高软件开发管理者和开发人员对敏捷开发的理解和掌握。该文档涵盖了敏捷开发的概述、正确理解敏捷、我司敏捷开发实施...

    《敏捷软件开发》源代码

    7. 敏捷工具:书中可能还会介绍一些敏捷开发常用的工具,如JIRA、Git、Confluence等,这些工具在实际敏捷团队中扮演着重要角色,帮助团队跟踪任务、协同工作、管理版本等。 总的来说,《敏捷软件开发——原则、模式...

    测试驱动的软件开发 TDD (Test-Driven Development)+敏捷开发过程

    测试驱动的软件开发(TDD,Test-Driven Development)...总的来说,TDD 和敏捷开发相结合,为软件开发提供了一种高效、高质量的方法论,但需要开发者有较高的测试意识和技术能力,以及团队对敏捷原则的深入理解和应用。

    敏捷开发的落地实践(大团队、流程、测试、离岸开发、需求、估算等问题的解决实践)

    在敏捷开发的落地实践中,面对大团队、流程、测试、离岸开发、需求、估算等问题时,实践者需要有一套系统的方法论和工具集来应对这些挑战。以下是从文档内容中提炼出的关键知识点: 1. 敏捷开发与传统开发的对比和...

    传统企业敏捷转型的策略与思考.pdf

    然而,我仍可以就【标题】和【描述】中提及的主题——“传统企业敏捷转型的策略与思考”——提供一些详细的背景信息和知识点。 首先,传统企业在面临快速变化的市场和技术压力时,往往需要采取更加灵活和响应市场...

    敏捷软件开发+原则、模式与实践.pdf

    与传统的瀑布式开发方法相比,敏捷开发更加注重人与人之间的交流、协作和应对变化的能力。它通常采用迭代和增量的方式进行软件构建,而非一次性完成所有需求。敏捷软件开发的出现,是为了解决传统开发模式在快速变化...

    敏捷开发理论

    ### 敏捷开发理论 #### 一、敏捷开发概述与核心理念 敏捷开发是一种以人为本、迭代前进的现代软件开发方法论。它强调快速响应变化、持续交付可用的软件产品,并注重团队成员之间的紧密合作。 **核心理念:** 1. ...

    敏捷软件开发 英文版

    ### 敏捷软件开发概述 #### 一、引言:不可知与无法沟通 - **不可知性**:软件开发过程中遇到的问题往往...- **参考书目**:最后部分提供了一些关于敏捷开发的经典著作和参考资料,帮助读者深入了解相关理论和技术。

    敏捷开发的实践与思考PPT学习教案.pptx

    敏捷开发的实践与思考PPT学习教案.pptx

    论文参考:基于敏捷开发方法的企业信息化系统开发流程改进研究

    【摘要】:本文主要探讨了在敏捷开发方法广泛普及的背景下,如何改进传统的企业信息化系统开发流程。通过对传统流程模型的全面分析,论文提出利用敏捷开发方法来优化流程,强调了敏捷开发的迭代周期短、用户需求匹配...

Global site tag (gtag.js) - Google Analytics