敏捷开发与敏捷思维_敏捷开发 思维导图 - CSDN
  • 大多数决定走向敏捷开发的公司最终都使用Scrum作为敏捷开发的方法。他们认为在他们大部分的团队里面使用Scrum就能够给他们带来作为一个敏捷开发公司的所有好处,但是这样往往会导致一个令人失望的结局。最主要的问题...

    大多数决定走向敏捷开发的公司最终都使用Scrum作为敏捷开发的方法。他们认为在他们大部分的团队里面使用Scrum就能够给他们带来作为一个敏捷开发公司的所有好处,但是这样往往会导致一个令人失望的结局。最主要的问题是这些公司应该考虑一些其他的方式。在开始Scrum之前,必须确定的是他们愿意采取敏捷的思维方式。你可以采用Scrum,但是首先你必须是敏捷的。 

     

    Scrum是否应该解决我们的问题?

     

    在我之前柏林的工作中,我们的团队有一个稳定的流程但是很少有自主权,我们依赖不同的团队,因此我们的能力被限制。所以我们认为Scrum可以使我们变得敏捷,相应的问题也会消失。

     

    于是我们逐渐开始Scrum并开始每天开一次Scrum会议。紧接着,我们决定将我们的迭代周期设置为两周,也就是说每两周我们就应该有一个新发布。于是问题来了,对于其他团队的依赖性导致我们的Scrum变得一团糟。除了我们在冲刺结束的2-3天前准备好我们的软件外,QA团队并没有足够的时间来审核我们的发布,TechOps团队也没有足够的时间来部署。以至于我们仍然是每45天甚至更久才发布一个版本。Scrum给我们带来的唯一一个改变就是增加了一系列的会议,很快这些会议也就失去了他们该有的意义。 

     

    这使得我们的发布缩短至每20-30天一次,仍然远长于我们最初制定的两周一次迭代。公司发展的很快也有了很多新的项目,但是没有新的TechOps工程师,所以他们没有足够的时间去处理每个人的每件事情。

     

    波兰的救援!

     

    就是在这期间,我们项目的领导从阿姆斯特丹调到了波兰,新的管理者已经有几年的Scrum经验,他们知道为了改进我们的效率,我们需要避免对其他团队的依赖。

     

    我们新的团队成员已经从开发到部署负责他们的产品一年多的时间了,在此之前,他们跟我们遇到过同样的问题。他们有一个很棒的解决方案:将项目迁移到AWS上。于是他们准备了一个很详细的预算,描述了迁移到AWS所需的费用并展示给了管理者。当他们看到这将会将我们的运维成本减少到一半的时候就欣然同意了这个方案。于是,在波兰团队的帮助下,我们能够在脱离对TechOps团队依赖的情况下同等程度的完成我们的工作。最终,在决定开始Scrum之后的四个月时,终于实现了每两周一个发布的目标。

     

    结语

     

    如果你想变得敏捷,只采用类似Scrum这样的开发框架是不够的,你必须改变思维方式,并且管理者也必须改变追求“万无一失”的观念。公司必须承担让团队变得跨领域且更自主所带来风险。如果在管理者和员工之间没有这样的信任,那么想实现敏捷开发就会变得更复杂。 

     

    我们很幸运有一个思维开放的管理团队,让我们负责整个开发过程也愿为此承担风险。如果你也同样幸运,不要再等了,赶快全面负责你的项目吧,你不会为这个决定后悔的。

     

    敏捷思维Scrum哪个是第一位?当然是敏捷思维啦。

    展开全文
  • 敏捷开发思维导图

    2020-07-23 23:30:40
    敏捷开发思维导图, 高效程序员的45个好习惯,帮助程序员理清思路,提供方向。
  • 敏捷开发思维导图?

    2019-01-04 13:53:21
    Leangoo敏捷开发工具思维导图 在Leangoo项目中直接创建思维导图 ,把团队成员都邀请进来,大家就可以在导图中一起编辑,进行头脑风暴。 多人在线、实时协作 创建好脑图之后,添加成员,可以共同编辑,实时同步...

    Leangoo敏捷开发工具思维导图

    在Leangoo项目中直接创建思维导图 ,把团队成员都邀请进来,大家就可以在导图中一起编辑,进行头脑风暴。

    多人在线、实时协作

    创建好脑图之后,添加成员,可以共同编辑,实时同步,实时协作。

    将节点批量引用至看板(需求看板,迭代看板,缺陷看板)

    Leangoo脑图的卡片编辑面板直接复用了看板上卡片的操作面板,极大地丰富了节点的存储内容和表现形式,让脑图的熟悉和使用变得非常简单方便。

    鼠标右键,可以打开节点,选择批量引用节点至看板上,

    可导出为图片。

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    展开全文
  • 很久没有写博客了,前面一直有接触敏捷开发的项目,也算是有些理解和感悟,这篇也是我在工作生活中有感而写的入门解释,作为理解一些相对抽象概念的通用思维方法,也借敏捷开发为例做下知识总结。后面可能还会对敏捷...


    很久没有写博客了,前面一直有接触敏捷开发的项目,也算是有些理解和感悟,这篇也是我在工作生活中有感而写的入门解释,作为理解一些相对抽象概念的通用思维方法,也借敏捷开发为例做下知识总结。后面可能还会对敏捷开发和其他的软件开发模式进行介绍,还有其他的一些分类等。

    认识敏捷开发

    在软件行业实际项目中,敏捷开发经常被提及。然而,对于刚刚开始从事软件开发行业的新人,可能对于敏捷开发只是听说过这样的状态。本文中博主将从最容易理解的方式,解释敏捷开发的概念理解和思考。

    1. 问题:是什么

    既然要理解一个新概念,首先要知道这个概念是属于什么,和它平行的概念都有什么。这个过程对概念的宏观理解是非常重要的。
    举例说明,现在需要解释什么是猫,就需要先搞明白猫是一种生物的类别,猫的概念是和狗、兔子、大象是平级的,猫属于动物,而不是植物,猫本身还有很多子品种,每一只具体的猫都属于猫的一个实例。
    回到敏捷开发,同理我们定位敏捷开发是一种开发模式,或者叫做软件开发方法。软件开发方法是因为软件行业在上世纪后半叶为了更加高效高质发展的产物,有点接近于从手工业到自动化工厂车间生产的转变,软件开发方法为这种软件的标准化生产提供技术和流程支撑。
    开发模式随着软件工程的不断发展、完善,已经经历了很多个阶段,在历史上也有这不同时期的流行开发模式,这些开发模式都是为了解决当时的软件开发问题而在老模式的基础上优化提出的。
    敏捷开发作为开发模式的一种,同样也是为了解决已有问题而被提出的,只不过是当前软件的规模、内容、产业、历史背景下的最新理念方式,相信敏捷开发也不会是软件行业的最后一个开发模式。
    当然,敏捷开发目前也发展出了一些具体的子类型,这里先不展开。一个软件可以参照敏捷开发的方法来进行软件产品生产,那么这个软件就是使用敏捷开发进行的。

    2. 想要什么特点

    现在我们对敏捷开发就已经形成了一个非常宏观的概念定义,那么下一步就是对概念进行描述了。按照我的学习习惯,与其去看官方概念,不如先看特征,因为这比较符合我们观察世界的方式。同样拿猫来举例,我们对猫的概念首先是基于它是由四条腿、一根尾巴、哺乳动物常见的头型、身体不大、肉食,灵活等等这类的特点来形成的。首先不管分类和学术的表达,我们先谈特点。
    敏捷开发从名字可知,这种开发模式的第一个特点就是快,高效,灵活、容易进行调整。其实却是如此,敏捷开发最重要的目的就是缩短开发周期,让软件更快的进入可以使用的阶段,并且软件能够应对更多变的需求场景,让开发能够根据外部情况的变化对软件最快地进行调整。
    我查阅了不少资料,对于敏捷开发的特点描述各不相同,有些还很专业很详细。但是我认为从学习的角度,敏捷高效就是敏捷开发最大的,也是真正的特点,因为其他所有的特点我认为都是为了实现这个目标的,而不是其他的目标。所以,在这里我们认为敏捷就是敏捷开发的最终特征。

    3. 为了实现特点

    描述完敏捷开发的效果和特点,就要解释这种开发模式是怎样实现敏捷的特点的。通俗地举例,如果我们现要以最快的速度做一件具体的事情,当然在软件开发就是做出一个可用的软件,我们就以做饭为例子,做饭的最终目标是提供吃饭的内容。开发模式作为具体的方法,怎样才能最快的完成这个目标呢?

    1. 为了以最快的效率给食客做成一顿饭,最简单最重要的是马上开始!开始拿起现有的原料开始准备,不要先考虑每一道菜的具体细节,先把握好主菜的内容,马上开始动手洗菜、切肉、下锅。敏捷开发的方式其实也是这样,所谓的避免不必要的开销正是这样,尽一切可能减少在计划和文档上面花费的时间,在基本明确了开发内容后就开始动手实现。
    2. 有了做第一道大菜的开始,然后还可以做什么呢?当然是尽快开始做第二道菜啊!在有可能的情况下最好第二道能够和第一道菜一样用最快的速度开始做,而不要等上一道菜完成。这就是敏捷开发的第二个方法,递增而不是连续的,不断地增加新的功能,在可以进行开发新功能模块的时候尽快同步开展,加快了项目总体的速度。
    3. 现在我们已经有多道菜在同时准备了,每一道菜都由一个厨师(团队)负责,那么为了不出混乱,比如两个师傅重复做了某个菜、漏了某个菜等问题,协作必不可少且极其重要。在敏捷开发中,所有的子项目组需要随时与其他项目组沟通情况,并且与利益相关者沟通。就算是不是自己负责的任务,也要和其他团队的人员保持沟通,因为这样其实能够避免没有意识到的问题发生。
    4. 有些菜式比较复杂,或者食客对于菜式呈上的次序要求,这时如果大家都忙于自己的事情,虽然存在相互的沟通,但是可能还是会因为信息的不对等问题出现,所以这时说真话就非常重要。要真实及时地告诉其他师傅,我这个菜做不完了,做完自己菜的人赶紧过来帮忙!对于敏捷软件项目的效率和质量,需要所有的信息都是真实可信的。例如一个常见的情况,一项复杂的项目组无法在某时间内完成任务,这时就需要成员第一时间真实地反馈进度信息,以便调整开发的策略,协调更多的资源来解决问题。
      以上其实就是敏捷开发的四条原则,是不是很符合我们在日常生活中思考问题解决问题的思路呢~

    4. 回到定义

    在以上内容的铺垫后,我们再看敏捷开发的定义,就能更容易够理解正式严谨的定义到底在说什么了:

    敏捷软件开发(Agile software development),又称敏捷开发,是一种从1990年代开始逐渐引起广泛关注的新型软件开发方法,是一种能应对快速变化需求的软件开发能力。它们的具体名称、理念、过程、术语都不尽相同,相对于“非敏捷”,更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发过程中人的作用。
    ——来自百度百科

    待续

    展开全文
  • 敏捷开发思想

    2019-04-12 22:55:16
    SCRUM 敏捷开发思想有什么关系?敏捷开发的模式分类(摘抄至互联网):SCRUM 的工作流程(摘抄至互联网)流程: SCRUM 是什么? Scrum是敏捷开发中的名词。 敏捷开发是什么? 敏捷开发(Agile Development) 是一种...

    SCRUM 是什么?

    Scrum是敏捷开发中的名词。

    敏捷开发是什么?

    敏捷开发(Agile Development) 是一种以人为核心、迭代、循序渐进的开发方法。

    简单的说的话:

    1. 它只是一种开发思想,而不是开发技术;
    2. 其次,需要明白,通过敏捷开发的项目,包含的诸多子项目,都会带有,已经测试结束,具备了集合和可运行的特征;
    3. 敏捷开发,初始,并不追求完美的设计以及编码,而是,尽可能快的先开发出产品的核心功能,以及发布可用版本。之后,才会在多余的生产周期内,根据需求,不断的完善升级与迭代产品。

    eg:对于Java全栈式开发工程师来讲,拿到需求,了解之后,第一件事,并不是先去完善后台代码,而是迅速的先将需求页面(网站),先实现。而后,才开始根据需求一步步实现功能。

    以人为核心是什么意思?

    一句话概括来讲的话,便是:

    不似瀑布开发的思想,往往开发完后,写了一堆的开发文档进行开发、
    而是,尽量的少写开发文档,只写一些必要性的文档,因为敏捷开发注重的是人与人面对面之间的交流。所以说它是以人为核心。

    迭代 是什么意思?

    类似与 单体开发 与 微服务、分布式开发的区别。
    一个是,将所有的功能实现后,方可测试与后续操作。
    另一个是,将所有的功能分为一个个服务或小功能,完成一个便可开发,测试,上线一个小功能。慢慢的完成总体。

    循序渐进自然,也可由上明白。

    SCRUM 与 敏捷开发思想有什么关系?

    Scrum是敏捷开发之后的方法的一种。

    敏捷开发的模式分类(摘抄至互联网):

    敏捷开发的实现主要包括 SCRUM、XP(极限编程)、Crystal Methods、FDD(特性驱动开发)等等。其中 SCRUM 与 XP 最为流行。

    同样是敏捷开发,
    XP 极限编程 更侧重于实践,并力求把实践做到极限。这一实践可以是测试先行,也可以是结对编程(eg:多人协调开发)等,关键要看具体的应用场景。

    SCRUM 则是一种开发流程框架。
    SCRUM 框架中包含三个角色,三个工件,四个会议,听起来很复杂,其目的是为了有效地完成每一次迭代周期的工作。

    SCRUM 的工作流程(摘抄至互联网)

    学习 Scrum 之前,我们先要了解几个基本术语:

    Sprint:冲刺周期,通俗的讲就是实现一个“小目标”的周期。一般需要 2-6 周时间。
    User Story:用户的外在业务需求。拿银行系统来举例的话,一个 Story 可以是用户的存款行为,或者是查询余额等等。也就是所谓的小目标本身。
    Task:由 User Story 拆分成的具体开发任务。
    Backlog:需求列表,可以看成是小目标的清单。分为 Sprint Backlog 和 Product Backlog。
    Daily meeting:每天的站会,用于监控项目进度。有些公司直接称其为 Scrum。
    Sprint Review meeting: 冲刺评审会议,让团队成员们演示成果。
    Sprint burn down:冲刺燃尽图,说白了就是记录当前周期的需求完成情况。
    Release:开发周期完成,项目发布新的可用版本。

    开发模型:
    流程图

    流程:

    1. 由产品的负责人,按照需求的优先级,优先取出一部分Backlog(需求清单)。
    2. 在每个Sprint(冲刺周期),开发团队根据计划,确定好每个周期的需求清单(Backlog)。既,在每段时间内需要完成的工作任务是什么。
    3. 对团队成员进行任务的分配开发。每天,团队都会开启Daily meeting(每天的站会)【既,明白自己之前完成了什么】。
      而后团队成员调整自己的Task状态【既,每个小任务的完成时间又该控制在什么时间内】,整个团队便更新自己的Sprint burn down(冲刺燃尽图)。
    4. 当这份Backlog(需求清单)完成之后,便会开启团队的Sprint Review meeting:(冲刺评审会议)。没问题的话,便会发布出发此阶段产品的发型版本(Release),且进行Sprint review meeting(回顾会议)

    写在最后,PS:此文内容,部分摘抄至互联网,如若,原文博主介意,可私聊。谢谢。
    自然,此文并不完善,欢迎各位点评。

    展开全文
  • 提到 “敏捷” 就仅仅代指“敏捷开发”吗?错了!  在近日德勤对140个国家的企业和人力资源高管进行的一项调查中显示,94%的参与者将 “敏捷和协作能力” 列为企业成功的关键因素。可见,当规划和规则不再奏效时,...
  • 敏捷开发可以说是IT领域的一个时髦的词语。一提到敏捷开发,很多人可能会说:“这个我很熟悉啊,我们团队就在使用它”。大家是否思考过到底什么是敏捷开发?当前项目适合采用敏捷开发吗?目前是否使用的是正确的敏捷...
  • 觉得这篇文章写的非常好,非常有助于大家了解敏捷开发,原文链接在下面 https://www.jianshu.com/p/eb8f4448c5c8 什么是敏捷开发敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。在...
  • 敏捷开发(软件project)是 “设计” 出来的。不是 “学” 来的…… 很多人都一直在质疑敏捷开发能否提高效率质量? 更有不少人以嘲讽。不屑的口吻看待软件project。 事实上,敏捷开发或者软件project, 无法提升...
  • 敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。 换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直...
  • 敏捷开发的缘来 随着信息技术的迅速发展和经济的全球化,对软件开发的生产率提出了更高的要求。然而一方面软件开发项目希望能够有更多的可预测性,另一方面用户的实际需求汪汪比较模糊而且常常发生变化,两者的不...
  • 如何进行产品的敏捷开发,如何进行项目管理,产品开发的流程,如何快速迭代
  • 敏捷开发,如何敏捷?我们需要一系列成熟的工具帮助我们敏捷。敏捷开发工具的适合以及选用,对开发项目起着关键性的作用。 此篇介绍我们在scrum敏捷开发中发掘的几款工具,方便更多新加入的开发者上手。 1. ...
  • 1,提要 软件开发是一个系统工程,包括最初的可行性分析、再到设计、开发、测试、维护等整个生命周期。在这个过程中某些阶段的失误或说是变化,都可能增加...传统瀑布模式和新型的敏捷开发就是其中最常用的方法,后
  • Story 演示活动可以帮助敏捷开发团队提高开发质量、降低返工带来的质量低下进度滞后的可能性。本文以作者黄文海的实际敏捷开发与管理的经验为基础,分享了具体实施 Story 演示的注意要点以及如何控制 Story 演示的...
  • 敏捷开发是个啥

    2019-04-01 10:18:32
    今天来篇正经的,从软件工程的角度来聊一聊敏捷开发模式,文章分两部分: 第一部分通过举例和对标其他行业聊聊软件开发模型的发展演进。 第二部分聊聊敏捷的核心思想。 敏捷开发是互联网界比较流行的软件开发模式...
  • 从传统开发模式的思维,转换到敏捷和迭代开发肯定会有很多的疑问,这些疑问通常是公司管理层对敏捷和迭代开发抱怀疑态度,或者没有信心的主要原因,因此,在本文中,我以问答的方式,试图去整理一下自已对敏捷和迭代...
  • 敏捷开发到底是什么?它从何而来?又如何演进至今?自“敏捷开发”这个词诞生之日起,已近 20 年历史,它从被人质疑,已发展到行业内几乎人人言必称“敏捷”。然而,“此敏捷”已非“彼敏捷”。2010 年之后,我的...
  • 敏捷开发-原则 模式实践  这的确是一本关于开发者的好书,对于我们开发者、研究人员,它提出了一个开发的全新的价值观(对我来说),甚至人生都有启发。需要认真阅读。 书中总结了敏捷开发的实例,确确实实更够...
  • 在 Quora 上有人提出了 " 为什么像谷歌这种公司的开发人员认为敏捷开发是无稽之谈?" 的问题,关于此,作为一名前谷歌工程总监,David Jeske 提供了一些个人见解,以下是 David Jeske 的回答。 对很多人来说,敏捷...
1 2 3 4 5 ... 20
收藏数 23,360
精华内容 9,344
关键字:

敏捷开发与敏捷思维