精华内容
下载资源
问答
  • 敏捷开发12条原则

    千次阅读 2017-03-14 20:10:09
    我们遵循以下原则: We follow these principles: 1.我们最重要的目标,是通过持续不断地及早交付有价值的软件使客户满意。 Our highest priority is to satisfy the customer through early and ...
    我们遵循以下原则:

    We follow these principles:


    1.我们最重要的目标,是通过持续不断地及早交付有价值的软件使客户满意。

    Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.


    2.欢迎需求变化,即使在开发后期也一样。为了客户的竞争优势,敏捷过程掌控变化。

    Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.


    3.经常地交付可工作的软件,相隔几星期或一两个月,倾向于采取较短的周期。

    Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.


    4.业务人员和开发人员必须相互合作,项目中的每一天都不例外。

    Business people and developers must work together daily throughout the project.


    5.激发个体的斗志,以他们为核心搭建项目。提供所需的环境和支援,辅以信任,从而达成目标。

    Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.


    6.不论团队内外,传递信息效果最好效率也最高的方式是面对面的交谈。

    The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.


    7.可工作的软件是进度的首要度量标准。

    Working software is the primary measure of progress.


    8.敏捷过程倡导可持续开发。责任人、开发人员和用户要能够共同维持其步调稳定延续。

    Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.


    9.坚持不懈地追求技术卓越和良好设计,敏捷能力由此增强。

    Continuous attention to technical excellence and good design enhances agility.


    10.以简洁为本,它是极力减少不必要工作量的艺术。

    Simplicity--the art of maximizing the amount of work not done--is essential.


    11.最好的架构、需求和设计出自自组织团队。

    The best architectures, requirements, and designs emerge from self-organizing teams.


    12.团队定期地反思如何能提高成效,并依此调整自身的举止表现。
    At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
    展开全文
  • 敏捷开发12条原则 敏捷开发的核心原则之一是在每个sprint结束时交付可用的软件。 团队可以通过定义可靠的用户故事接受标准 ,以团队形式致力于冲刺, 自动化测试 ,演示冲刺结果以及成熟其他实践以确保代码完整并...

    敏捷开发12条原则

    敏捷开发的核心原则之一是在每个sprint结束时交付可用的软件。 团队可以通过定义可靠的用户故事接受标准 ,以团队形式致力于冲刺, 自动化测试 ,演示冲刺结果以及成熟其他实践以确保代码完整并可以投入生产来实现这一目标。

    采用devops惯例的组织 (包括CI / CD(连续集成/连续交付)管道 )开发了将代码推送到测试环境的自动化程序; 最先进的团队实施持续部署 ,在每次冲刺结束时或更频繁地将代码推送到生产环境中。

    [ 开发最佳实践:您应采用的5种方法 如何使测试自动化与敏捷性和发展性保持一致 •InfoWorld解释了在设备开发时代的监视 究竟是什么东西? 探索如何改变软件开发 ]

    问这些团队中的一些,他们下个月或即将发布的版本将交付什么,许多团队将很难回答这个问题。 询问他们如何确保优先事项对客户和最终用户产生积极影响,并且他们将承认有限的理解,覆盖范围和可见性才能充分回答此问题。

    然后考虑更深层的问题:

    • 一个看起来易于实现的用户故事多久一次导致在多个sprint中执行多个故事?
    • 从产品所有者在待办事项列表中列出新功能到完全交付给客户的时间,新功能的循环时间是多少?
    • 团队在重塑方向,还是随着团队提供新功能而不断发展的标准?
    • 团队是否被诸如聘用,升级基础架构,培训以及其他需要提前至1-2个冲刺的时间来计划和执行的活动所阻塞?
    • 重要的应用程序发布的时间,范围,活动或风险会使运营团队多久措手不及?

    如果您不知道这些问题的答案或已知问题,则您的组织可能需要做更多的计划。

    敏捷开发团队已经在技术流程和自动化方面进行了大量投资,以实现更频繁,更可靠的应用程序发布。 关于确保所交付的物品能够带来业务价值的步骤又如何呢?

    为什么敏捷团队难以计划

    我已经与许多敏捷领导者谈过他们的计划实践,以及他们是否花费时间在下一个冲刺之后开发前瞻性积压

    有人会说计划多个sprint并不敏捷。 他们的观点是,敏捷使产品所有者和团队能够听取客户反馈,查看通过应用程序生成的用户行为数据,并考虑其他信号以在每次冲刺开始时调整优先级。 他们的观点是“为什么要花时间去计划团队何时调整优先级?”

    其他团队希望进行计划,但尚未制定实践和协作以进行有效计划。 为了使产品所有者提供有关未来优先级的足够详细信息,有些努力。 其他人则从其产品所有者那里获得了太多的优先权。 大多数人都难以获得足够明确的要求,这使得计划变得困难且可能花费巨大。

    我一直从小组那里听到的一件事是,他们没有足够的时间进行计划,而且他们没有计划流程。 它们具有太多功能,用户故事, 技术债务 ,运营改进和其他开发优先级,从而使它们超载。 计划不是优先事项。

    为什么企业需要前瞻性计划

    成熟的公司和企业需要-而且很多都需要-敏捷团队的前瞻性计划和路线图 大多数组织都需要它们,以便计划与应用程序发布相关的其他业务活动。 对于软件公司,这可能包括开发营销材料,培训销售团队以及向主要客户通知新功能。 此外,如今,越来越多的企业开发满足内部和客户需求的应用程序。 这些组织还必须考虑对员工进行培训,并在新功能上更新客户支持功能。

    敏捷团队还必须考虑需要更长交付时间的需求。 例如,在引入新技术时,运营团队将需要时间在云或数据中心中进行安装和配置。 如果组织需要从服务提供商处雇用员工或招募新人员,则通常需要的计划远远超出了下一个冲刺。

    解决敏捷计划悖论

    与敏捷团队进行计划有几个需要考虑的原则。 这五个至关重要:

    1. 组织需要前瞻性的眼光。 它可以是愿景声明,战略计划或其他交流,可以就客户或用户的需求以及目标是哪些业务绩效指标树立北极星。 与真正的北极星不同,这种通信还需要灵活,并随着客户和业务需求的发展而迭代地更新。
    2. 团队需要时间来计划。 计划不是免费的,因此,如果企业重视或需要前瞻性计划,则经理必须在团队分配时间进行头脑风暴,审阅数据,直接向客户学习,投资概念验证并在几周前记录用户案例优先考虑实际故事。
    3. 团队需要一个已定义的计划流程,该流程必须与敏捷原则和适当的敏捷积压工具保持一致。 此计划过程需要有效地利用人们的时间,并具有明确的输出以及确定的角色和职责。 组织还应该考虑规划标准,并确定团队可以在何处进行自组织以解决其应用程序和技术的细节。
    4. 计划应该与敏捷开发团队使用的主要工件保持一致,尤其是与用户故事中的需求质量, 估计用户故事的步骤以及故事是否与技术,数据,安全性,用户体验和其他标准保持一致 计划还应该与操作需求保持一致,以支持生产环境中的应用程序。
    5. 规划实践需要机制来衡量有效性和影响。 团队是否按计划交付? 他们通过优先计划对业务产生影响吗? 他们是否使用发布后捕获的信息和数据来重新调整实践和优先级?

    这些原则可以导致广泛的规划实践。 大型组织可能会选择SAFe的PI计划流程,在创新和计划迭代期间计划计划活动。 灵活的组织应考虑持续的敏捷计划 ,其中团队致力于计划每个sprint的活动以及交付用户故事的工作。 一些组织可能还希望通过敏捷的产品和产品组合管理工具来实施计划。

    没有计划就容易迷路

    敏捷实践的优势在于,它们可以帮助团队专注于短期的,明确定义的交付品。 缺点是团队很容易在旅途中迷路。 团队应通过完整的故事回顾其交付历史,以评估其中期和长期绩效。

    团队是否说出他们将交付的内容并交付他们所说的内容? 交货对客户和最终用户有积极影响吗? 是否存在沟通和反馈循环,以帮助确定积压工作的优先顺序并优化需求?

    建立敏捷的计划实践可以帮助团队弥补差距。

    翻译自: https://www.infoworld.com/article/3438726/5-planning-principles-for-agile-development.html

    敏捷开发12条原则

    展开全文
  • (转)敏捷开发12条原则

    2019-09-13 16:13:26
    1.最优先的目标是通过尽早地、...敏捷过程控制、利用变化 帮助客户取得竞争优势。 3.频繁交付可用的软件,间隔从两周到两个月,偏爱更短的时 间尺度。 4.在整个项目中业务人员和开发人员必须每天在一起工作。...

    1.最优先的目标是通过尽早地、持续地交付有价值的软件来满足客户。

     

    2.欢迎需求变化,甚至在开发后期。敏捷过程控制、利用变化 帮助客户取得竞争优势。

     

    3.频繁交付可用的软件,间隔从两周到两个月,偏爱更短的时 间尺度。

     

    4.在整个项目中业务人员和开发人员必须每天在一起工作。

     

    5.以积极主动的员工为核心建立项目,给予他们所需的环境和支持,信任他们能够完成工作。

     

    6.在开发团队内外传递信息最有效率和效果的方法是面对面的 交流。

     

    7.可用的软件是进展的主要度量指标。

     

    8.敏捷过程提倡可持续发展。发起人、开发者和用户应始终保 持稳定的步调。

     

    9.简化——使必要的工作最小化的艺术——是关键。

     

    10.持续关注技术上的精益求精和良好的设计以增强敏捷性。

     

    11.最好的架构、需求和设计产生于自我组织的团队。

     

    12.团队定期地对运作如何更加有效进行反思,并相应地调整、 校正自己的行为。

    转载于:https://my.oschina.net/Skynet01/blog/3094287

    展开全文
  • 上篇敏捷开发之4句敏捷宣言中讲了敏捷开发的价值观,从这些价值观中可以引出下面的12条原则,它们是敏捷实践区别于重型过程的特征所在。在AgileSoftwareDevelopment-Principles,Patterns,andPractices(中文书名:...
  • 敏捷开发12条敏捷原则

    千次阅读 2014-12-30 14:51:49
    上篇敏捷开发之 4句敏捷宣言中讲了敏捷开发的价值观, 从这些价值观中可以引出下面的12条原则,它们是敏捷实践区别于重型过程的特征所在。在Agile Software Development - Principles,Patterns,and Practices...

    上篇敏捷开发之 4句敏捷宣言中讲了敏捷开发的价值观, 从这些价值观中可以引出下面的12条原则,它们是敏捷实践区别于重型过程的特征所在。在Agile Software Development - Principles,Patterns,and Practices(中文书名: 敏捷软件开发-原则、模式与实践)中对这12条原则分别进行了阐述,这里我就不重复解释书本的内容了,将从我个人的理解去讲解这些原则,希望大家多多补充独到见解。

     

    1。我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意

       规划迭代故事时必须按照优先级安排,为客户先提供最有价值的功能。通过频繁迭代能与客户形成早期的良好合作,及时反馈提高产品质量。敏捷小组关注完成和交付具有用户价值的功能,而不是孤立的任务。以前我们都用需求规格说明书或者用例来编写详细的需求,敏捷使用用户故事来罗列需求。用户故事是一种表示需求的轻量级技术,它没有固定的形式和强制性的语法。但是有一些固定的形式可以用来参考还是比较有益的。敏捷估算中使用了这个模板:“作为【用户的类型】,我希望可以【能力】以便【业务价值】“。使用基于用户故事的需求分析方法时,仍可能需要原型和编写文档,只是工作重点更多的转移到了口头交流。 

     


     

    2。即使到了开发的后期,也欢迎改变需求。敏捷过程利用变化来为客户创造竞争优势。
      敏捷过程参与者不怕变化,他们认为改变需求是好事情,因为这些改变意味着我们更了解市场需求。 

     

      

     

    3。经常性的交付可以工作的软件,交付的间隔可以从几周到几个月,交付的时间间隔越短越好
      迭代是受实践框限制的,意味着即使放弃一些功能也必须按时结束迭代。只要我们可以保证交付的软件可以很好的工作,那么交付时间越短,我们和客户协作就越紧密,对产品质量就更有益。虽然我们多次迭代,但并不是每次迭代的结果都需要交付给用户,敏捷开发的目标是让他们可以交付。这意味着开发小组在每次迭代中都会增加一些功能,增加的每个功能都是经过编码、测试,达到了可发布的质量标准的。
      另外敏捷开发项目中对开发阶段没有什么重要的分割,没有先期的需求阶段,然后是分析阶段,架构设计阶段,编码测试阶段等,在项目真正开始后,每次迭代中都会同时进行所有的上述阶段工作。

     


     

    4。在整个项目开发期间,业务人员和开发人员必须天天都在一起工作
      软件项目不会依照之前设定的计划原路执行,中间对业务的理解、软件的解决方案肯定会存在偏差,所以客户、需求人员、开发人员以及涉众之间必须进行有意义的、频繁  的交互,这样就可以在早期及时的发现并解决问题。 


     

    5。围绕被激励起来的个来构建项目。给他们提供所需要的环境和支持,并且信任他们能够完成工作。
      业务和技术是引起不确定的二个主要方面,人是第三个方面。而业务和技术又必须由人来执行,所以能够激励人来解决这些问题是解决不确定性的关键。只要个人的目标和团队的目标一致,我们就需要鼓舞起每个人的积极性,以个人为中心构建项目,提供所需的环境、支持与信任。 


     
     

    6。在团队内部,最具有效果并且富有效率的传递信息的方法,就是面对面的交谈
      在十几或者二十几个人组成的大团队中,文档是一种比较合适的传递知识和交流的途径。而敏捷团队一般不会很多人(大团队实施敏捷时也会分成多个小的敏捷团队),所以大量的文档交流其实并不是很经济的做法。此时面对面的交谈反而更快速有效。 


    7。

    工作的软件是首要进度度量标准。
      一般的工作都比较容易衡量任务进展,比如让你去搬运1吨的石头,我只要去称一下你已经搬运的石头重量就知道你完成多少了。而对于软件来说,在软件没有编码、测试完成之前,我们都不能因为代码编写了多少行,测试用例跑了多少个就去度量这个功能是否完成了。衡量这个功能是否完成的首要标准就是这个功能可以工作了,对用户来说已经可以应用了。

      

    8。敏捷过程提可持续的开发速度。责任人、开发者和用户应该能够保持一个长期的、恒定的开发速度。
      很多人都认为软件开发中加班是很正常的,不加班反而不正常,我对此有点不理解,这个可能是国情所致吧。敏捷过程希望能够可持续的进行开发,开发速度不会随着迭代的任务不同而不同,不欣赏所谓的拼一拼也能完成的态度,开发工作不应该是突击行为。我们不能指望说突击这个项目后就可以轻松了,因为完成一个项目后会接踵而来下一个项目,而只要还是拼拼的态度,下一个项目依旧会让你的组员再次突击。这时不知道有人会不会说,那我们就一直加班,也是“持续的开发速度”啊,这时可要注意了,持续加班智慧导致人疲劳、厌倦,保持长期恒定的速度也只是一种理想而已。 


    9。不断地关注优秀的技能和好的设计会增强敏捷能力。
      敏捷过程有很多好的技术实践可以加强产品敏捷能力,很多原则、模式和实践也可以增强敏捷开发能力。 《敏捷软件开发-原则、模式与实践》一书中介绍了很多设计,感兴趣的可以去仔细看看。 


     

    10。简单----使未完成的工作最大化的艺术----是根本的。
      我们不可能预期后面需求会如何变化,所以不可能一开始就构建一个完美的架构来适应以后的所有变化。敏捷团队不会去构建明天的软件,而把注意力放在如何通过最简单的方法完成现在需要解决的问题。这时有人会说,我已经预计到了肯定存在哪些需求扩展点,我们在一开始是否需要考虑呢?这时团队需要根据自己的理解去决定是否考虑,如果深信在明天发生了这个问题也可以轻易处理的话,那么就最好先不考虑。 


     

    11。最好的构架、需求和设计出自与自组织的团队

    敏捷中有很多种实践,大家都知道,迭代式开发是主要的实践方法,而自组织团队也是主要的实践之一。在自组织团队中,管理者不再发号施令,而是让团队自身寻找最佳的工作方式来完成工作。要形成一个自组织团队其实比较难。CSDN采访Mishkin Berteig中说到 自组织团队的第一个要素就是必须有一个团队,而不仅仅是一群人。一群人是一帮在一起工作的人,他们彼此之间并没有太多的沟通,他们也并不视彼此为一体。项目一开始,我们就会组建“团队”,但很多时候由构架师、需求人员、开发人员和测试人员组成的是一群人而已。他还认为,团队的形成必须经历几个时期。在经历了初期的磨合后,成员才会开始对团队共同的工作理念与文化形成一个基本的认识和理解。团队内会逐渐形成规矩,而且这些规矩是不言而喻的。比如,每个人都知道上午九点来上班,都会主动询问别人是否需要帮助,也都会去主动和别人探讨问题。如果团队成员之间能够达成这样的默契,那么这个团队将成为一个真正高效的工作团队。在这样的团队中,成员之间相互理解,工作效率非常高。在自组织团队中,团队成员不需要遵从别人的详细指令。他们需要更高层次的指导,这种指导更像是一个目标,一个致力于开发出更好的软件的目标。总之,自组织团队是一个自动自发、有着共同目标和工作文化的团队,这样的团队总是在向它的组织做出承诺。但是,实现这些承诺对于自组织团队来说非常重要。否则,一旦出现问题,团队成员之间就会出现信任危机。
      虽然敏捷开发小组是以小组为整体来工作的,但是还是有必要指明一些承担一定任务的角色。第一个角色是产品所有者(Product Owner)。产品所有者的主要职责包括:确认小组所有成员都在追求一个共同的项目前景,确定功能的优先级以便总是在处理最具有价值的功能,以及作出决定使得对项目的投入可以产生良好的回报。可以对应为以前开发中的“产品经理”。另一角色是开发团队(developer),这里的开发人员包括了架构师、设计师、程序员、需求人员、测试人员、文档编写者等,有时产品所有者也可以被看作是开发人员。还有一个重要角色就是项目经理(project manager)。敏捷开发的项目经理会更多的关注领导而不是管理。在某些项目中,项目经理可能同时也是开发人员,少数时候也会担任产品所有者。

      

    12。每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整
      由于很多不确定性因素会导致计划失效,比如项目成员增减、技术应用效果、用户需求的改变、竞争者对我们的影响等都会让我们作出不同的反应。 敏捷不是基于预定义的工作方式,而是基于经验性的方式,对以上这些变化,小组通过不断的反省调整来保持团队的敏捷性。

    展开全文
  • 敏捷开发12条原则

    2017-11-12 23:16:16
    敏捷过程利用变化来为客户创造竞争优势 3.经常性地交付可以工作的软件,交付的间隔可以从几周到几个月,交付的时间越短越好 4.在整个项目开发期间,业务人员和开发人员必须天天在一起工作 5.围绕被激励起来的个人...
  • 敏捷软件开发遵循的原则 1. 我们最优先做的工作是通过尽早地、持续地交付有价值的软件来使客户满意; 2. 即使到了开发的后期,也欢迎改变需求。敏捷过程利用变化来为客户创造竞争优势; 3. 以几周或者几个月为单位,...
  • 敏捷12条原则

    千次阅读 2018-08-02 22:36:31
    没有什么方法可以保证团队一定能开发出完美的软件,敏捷的团队也是同样地,所以,有一系列的原则来帮助敏捷团队。 最优先要做的是尽早、持续地交付有价值的软件,让客户满意。 欣然面对需求变化,即使在开发后期。...
  • 前段时间出了中文版的敏捷宣言和敏捷原则,于是来跟下风,按照自己的认识和理解,也来翻译下敏捷软件开发遵循的原则。 我们最优先做的工作是通过尽早地、持续地交付有价值的软件来使客户满意; 即使到了开发的...
  • [ZT]敏捷实践12 条原则

    2019-10-09 03:45:50
    摘自 敏捷软件开发--原则、模式、实践敏捷实践12 条原则,它们是敏捷实践区别于重型过程的特征所在。 1.我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意。 MIT Sloan 管理评论杂志刊登过一篇...
  • 敏捷实践12 条原则

    2009-06-27 10:49:00
    敏捷实践12 条原则,它们是敏捷实践区别于重型过程的特征所在。 1.我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意。 MIT Sloan 管理评论杂志刊登过一篇论文,分析了对于公司构建高质量产品方面...
  • 敏捷实践的12条原则 敏捷实践12 条原则,它们是敏捷实践区别于重型过程的特征所在。 1.我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意。 2.即使到了开发的后期,也欢迎改变需求。敏捷...
  • 敏捷实践12 条原则

    2005-01-24 10:59:00
    敏捷实践12 条原则,它们是敏捷实践区别于重型过程的特征所在。1.我们最优先要做的是通过尽早的、持续的交付有价值的软件来使客户满意。MIT Sloan 管理评论杂志刊登过一篇论文,分析了对于公司构建高质量产品方面有...
  • 五年前在学校的时候被要求翻译这12条原则。当时干活基本一个人搞定一切。所以没法理解这些原则们。现在参加工作几年后有点见恨晚的感觉。。。分享给刚工作的同学们~ 1: Our highest priority is to satisfy the ...

空空如也

空空如也

1 2 3 4 5 ... 8
收藏数 151
精华内容 60
关键字:

敏捷开发12条原则