更多“什么是敏捷开发?”相关问题
  • 第1题:

    关于敏捷方法说法正确的是?

    A.敏捷方法是一类软件开发流程的泛称

    B.敏捷方法是相对传统的瀑布式软件过程提出来的

    C.敏捷方法可以用敏捷宣言(4条)、敏捷原则(12条)来概括

    D.敏捷原则通过一系列的敏捷实践来体现出来


    参考答案:ABCD

  • 第2题:

    以下关于敏捷方法的叙述中,错误的是( )。

    A. 敏捷型方法的认为个人胜过工具
    B.敏捷开发是一种以人为核心、迭代、循序渐进的开发方法
    C.敏捷型方法认为开发预先制定计划,遵循计划,不强调"适应性"
    D.敏捷开发方法中客户合作胜过合同谈判

    答案:C
    解析:
    敏捷开发(agile development)是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发的基本原则如下:
    ·个体和交互胜过过程和工具
    ·可以工作的软件胜过面面俱到的文档
    ·客户合作胜过合同谈判
    ·响应变化胜过遵循计划

  • 第3题:

    2008年上半年试题2
    当前企业中的业务都是在全球化、快速变化的环境中运营的,传统的软件开发过程无法适应由此产生的快速软件开发需求。20 世纪 90 年代后期,一些软件开发人员在“Agile Allicance 2001”中系统地阐述了敏捷开发的原则,试图强调灵活性在快速且有效地生产软件中所发挥的作用。目前,众多的软件生产企业已经在实际的软件开发过程中接纳并实践了敏捷开发方法中的基本原则。
    【问题1】
    敏捷开发有许多典型方法,包括极限编程(eXtreme Programming)、Scrum、Crystal、DSDM等。请问这些方法共同的基本原则是什么?
    【问题2】
    敏捷开发的支持者往往夸大该方法的优点,但是在实践中,敏捷方法的基本原则有时确实很难实施。请用200字以内的文字说明敏捷方法中哪些原则在实践中难以实施。
    【问题3】
    敏捷开发方法中最有名的是极限编程。请说明极限编程中的结对编程(Pair Programming)的概念。
    【问题4】
    敏捷开发方法在具体实践过程中,往往需要开发环境或工具的支持,一般称为快速应用开发技术和可视化开发技术。请用150字以内的文字说明快速应用开发技术所包含的工具有哪些,并简要说明可视化开发技术的基本概念和技术原理。


    答案:
    解析:
    一、试题分析
    这是一道关于敏捷开发方法(主要是XP方法)的问答题,共4个问题。在系统分析师考试指定参考用书《系统分析师技术指南》(张友生、王勇主编,清华大学出版社)中,详细介绍了敏捷开发方法和XP方法。
    【问题1】
    注重个体与交互,重点关注可以工作的软件,提高客户参与度,以积极的心态响应变化是敏捷方法论的核心价值观。为了贯彻这四大价值观,敏捷联盟提出12条区别于重量级过程的原则。
    (1)尽早、持续交付有价值的中间软件使客户满意。很多开发组织经常会在时间期限上进行没有原则地退让,其结果却是让客户一等再等,不仅没有按承诺兑现,甚至是时间超过一倍,但仍然不见软件的踪迹。这种不守信的状态,使得整个软件业走入了一个负螺旋发展。敏捷方法论提出了一种新的逻辑,将尽早、持续地交付可运行的中间成果,有价值的中间结果,使得客户能够尽早地、持续地了解到软件开发的进展,并且将需求的变化、系统的改进意见尽早地提出来,这会使得客户的满意度大大提高。
    (2)即使到了开发后期,也欢迎需求变化,利用响应变化创造竞争优势。敏捷方法论鼓励团队拥抱变化,通过应用各种技术来提高软件结构的灵活性,本着简单的原则进行设计,以响应变化的能力作为团队的核心竞争力。
    (3)经常交付可工作的软件,间隔时间可以是几周到几个月,间隔越短越好。由于敏捷方法论奉行“客户合作”、“客户参与”,而要让客户更加有效的参与,经常性、频繁地交付可工作的中间软件,将可以有效地加强开发人员与客户之间的沟通,从而将隐藏的需求变化及早触动。
    (4)开发全过程,业务人员和开发人员必须天天都在一起工作。在开发中,不仅需要客户参与开发,还应该包括代表客户的业务人员。因此在开发人员、客户、业务人员等相关干系人之间建立频繁而且密切的交流与沟通,将是使项目保持高度灵活性的关键。
    (5)为开发人员提供环境和支持,给予信任,以人为本地构建项目。敏捷方法论是崇尚“以人为本”精神的,认为项目成功的最关键因素是人,其意义超过过程和工具。建立一支优秀的团队,并在环境与精神上提供支持,给予信任,将是项目成功的关键。这也是与传统的“过程”为主的管理思想的最大不同。
    (6)团队内部,最有效的沟通方式莫过于面对面的交谈。在重量级方法论中,人们尝试着通过编写规范、精美的文档进行交流。而在敏捷方法论中则更加重视的是开发团队成员之间的面对面交谈,大家坐在一起,用一块白板,或是一张纸,一边绘制草图,一边交谈,这是最有效的沟通方式。
    (7)工作的软件是度量进度的最首要标准。要衡量工作进度,采用的基点不是文档的完成情况,不是已完成的代码行数,而是可以工作的软件完成了多少功能、实现了多少用例。这是敏捷方法论的共同点,因为只有可工作的软件才是有价值的。
    (8)提倡可持续的开发速度,责任人、开发者和用户应保持一个长期的、恒定的开发速度。软件开发绝不是短跑,它更像一场挑战耐力的马拉松长跑。因此,过早的冲刺、在前期过度的工作,将不利于项目按照持续的开发速度进行下去。因此,敏捷方法论反对加班,因为这样的行为会使得团队的精力过早耗尽,过早地对项目失去兴趣和信心,从而得到事与愿违的结果。
    (9)不断关注好的技能和设计会增加敏捷能力。保持软件高质量、简洁、健壮,是实现快速软件开发的重要途径。因此只有大家都致力于编写高质量的代码、不创造混乱,才能够提升敏捷能力。
    (10)开发者本质是简单的——使未完成的工作最大化的艺术。不管明天的需求,只采用符合今天需求的简单设计。因为谁也不知道明天是怎么样的?变化太快了,今天的设计考虑太多明天的需求,就有可能做了过多的无用功。
    (11)自组织的团队才能够做出最好的架构设计和需求分析。最优秀的团队不是被强权管理下的团队,而是形成了一个良好的协作,能够内部进行任务分解、协调的团队。
    (12)团队应定期在如何更有效工作方面进行反省,然后对自己的行为做出改进。不断地回顾、总结,并从中找到团队未能最有效工作的瓶颈点和问题点,并且通过细致的分析与讨论,找到其要点,并做出相应的改进是十分重要的。
    【问题2】
    问题2问敏捷方法的原则中哪些原则在实践中难以实施,这与问题1是相关联的。只要理解了这些基本原则,这个问题就好解答。因为问的是在“实践中难以实施”,所以这个问题可以答得灵活些,只要说得有道理都可以得分。
    【问题3】
    问题3考查结对编程的概念,简单地说,结对编程就是2个人坐在一起写同一个程序。结对编程可以大大降低沟通成本,提高工作质量。
    【问题4】
    问题4是关于快速开发工具和可视化开发的。快速应用开发(RAD)目的是快速发布系统,RAD组合了5个方面的技术,分别是进化原型、CASE工具(可进行正向工程和反向工程)、拥有能使用先进工具的专门人员(一个RAD开发小组)、交互式JAD、时间表。例如,VB、Delphi、PB等都属于RAD工具。可视化开发就是在可视开发工具(例如,VB、Delphi、PB等)提供的图形用户界面上,通过操作界面元素(例如,菜单、按钮等),由可视开发工具自动生成应用软件。这类应用软件的工作方式是事件驱动的。对每个事件,由系统产生相应的消息,再传递给相应的消息响应函数。
    二、参考答案
    【问题1】
    (1)客户参与。
    (2)增量式移交。
    (3)开发团队的技术应该得到承认和发扬。团队成员应该保持他们自己的工作风格,不落俗套。
    (4)接受变更。
    (5)保持简单性。
    【问题2】
    (1)客户的参与度往往依赖于客户参与的意愿和客户自身的代表性。
    (2)团队成员的性格可能不适合激烈的投入,可能无法做到与其他成员之间的良好沟通。
    (3)对系统中的变更作出优先级排序可能是极端困难的。
    (4)维护系统的简洁性往往需要额外的工作,但迫于移交时间表的压力,可能没有时间执行系统简化过程。 【问题3】
    结对编程:开发人员成对工作,检查彼此的工作并提供支持,圆满完成任务。
    【问题4】
    快速应用开发中所包括的工具有数据库编程语言、界面生成器、与办公应用的连接、报告生成器。可视化开发是一种通过集成细粒度可复用构件来构造软件的快速应用开发方法,其主要思想是用图形工具和可重用部件来交互地编制程序。可视化开发一般基于事件驱动的原理。

  • 第4题:

    下面说法错误的是 ( )

    A.敏捷软件开发是一种应对快速变化的需求的一种软件开发能力
    B.Scrum敏捷开发的流行,越来越多的公司采用敏捷开发用于软件产品和应用的开发
    C.敏捷开发是一种以人为核心、迭代、循序渐进的开发方法
    D.Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发

    答案:B
    解析:
    gile敏捷开发的流行,越来越多的公司采用敏捷开发用于软件产品和应用的开发。

  • 第5题:

    什么是敏捷制造?


    正确答案:使企业在涉及到产品生命周期的各种制造活动中具备敏捷性或涵盖上述六大特征的综合应变能力的一种制造哲理。其中,制造活动所涉及到的主体包括客户、市场、企业(含组织形态、制造资源、运作管理等)及其合作伙伴,而敏捷性则是度量敏捷制造模式有效性的标准。

  • 第6题:

    什么是供应链?敏捷供应链的含义是什么?


    正确答案: 供应链或供需链(SC)作为跨企业中多个职能部门活动的集合,包括从定单的发送和获取、原材料的获得、产品的制造到产品分配发放给用户的整个过程。SC是描述商品需—产—供过程中务实体和活动及其相互关系动态变化的网络,包括的主要环节有:顾客、制造、分发、运输、库存计划、预估和供应计划等。供应链管理是通过前馈的信息流(需方向供方流动,如订货合同、加工单、采购单等)和反馈的物料流和信息流(供方向需方的物料流及伴随的供给信息流,如捉货单、入库单、完工报告等),将供应商、制造商、分销商、零售商直到最终用户连成一个整体的模式。供应链既是一条从供应商到用户的物流链,又是一条价值的增值链。
    供应链管理的主要研究热点,包括敏捷虚拟供应链、面向生产/流通一体化的供应链管理模式、供应链系统构建与运行、供应链管理技术、供应链分配服务中心管理、基于因特网的分销资源计划(DRP)、敏捷供应链使能技术、敏捷企业后勤技术和产品物资配送系统等等。
    其中,虚拟供应链建立在因特网、电子商务(eB)和电子计划交换(EPl)基础上,它采用全球化、集成化、并发和双向的计划与控制管理方式,具有快速响应和快速重构的能力,并考虑约束型管理方式。在全球化的敏捷供应链中要考虑多企业的计划,它追求计划、变化传播、供应计划执行的快速性,避免延迟,采用请求/允诺结构方式运作。敏捷虚拟供应链的主要使能技术,包括供应链计划与调度器(它应支持全球化、集成化的供应链计划过程)、企业与企业间的数据传输(主要基于EPI标准、请求/允诺协议来进行)、集成供应链计划决策支持系统、因特网/WWW网机制。敏捷虚拟供应链有五个关键概念:约束管理、并行与串行计划、全球观点、预警机制和商务优化机制。

  • 第7题:

    下列关于敏捷方法的叙述中,错误的是()

    • A、与传统方法相比,敏捷方法比较适合需求变化大或者开发前期对需求不是很清晰的项目
    • B、敏捷方法尤其适合于开发团队比较庞大的项目
    • C、敏捷方法的思想是适应性,而不是预设性
    • D、敏捷方法以原型开发思想为基础,采用迭代式增量开发

    正确答案:B

  • 第8题:

    关于敏捷方法说法正确的是()

    • A、 敏捷方法是一类软件开发流程的泛称
    • B、 敏捷方法是相对传统的瀑布式软件过程提出来的
    • C、 敏捷方法可以用敏捷宣言(4条)、敏捷原则(12条)来概括
    • D、 敏捷原则通过一系列的敏捷实践来体现出来

    正确答案:A,B,C,D

  • 第9题:

    以下哪一项是常用敏捷框架或方法论?()

    • A、特征驱动开发(FDD)
    • B、质量驱动开发(QDD)
    • C、产品驱动开发(PDD)
    • D、数据驱动开发(DDD)

    正确答案:A

  • 第10题:

    单选题
    什么是敏捷开发?()
    A

    敏捷开发是一种以用户故事为核心、迭代、循序渐进的开发方法

    B

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

    C

    敏捷开发是一种以人为核心、交付、循序渐进的开发方法

    D

    敏捷开发是一种以迭代为核心、循序渐进的开发方法


    正确答案: A
    解析: 暂无解析

  • 第11题:

    单选题
    敏捷开发中的主题是指()
    A

    一组用于敏捷回顾相关的话题

    B

    一组相关的编程人员任务

    C

    一组用于敏捷评审相关的话题

    D

    一组相关的用户故事


    正确答案: B
    解析: 暂无解析

  • 第12题:

    (难度:中等)Scrum是迭代式增量软件开发过程,通常用于敏捷软件开发,不需要进行需求评审。

    答案:(no)

  • 第13题:

    以下关于敏捷方法的叙述中,错误的是(9)。

    A. 敏捷型方法的思考角度是“面向开发过程”的
    B. 极限编程是著名的敏捷开发方法
    C. 敏捷型方法是“适应性”而非“预设性”
    D. 敏捷开发方法是迭代增量式的开发方法

    答案:A
    解析:

  • 第14题:

    以下关于敏捷方法的叙述中,错误的是( )。

    A. 敏捷型方法是预设性而非适应性的开发方法
    B. 敏捷型方法最优先要做的是尽早地、持续地交付有价值的软件,让客户满意
    C. 敏捷型方法认为简单是最根本的要求
    D. 敏捷开发方法认为即使到了开发的后期,也欢迎改变需求

    答案:A
    解析:
    敏捷开发(Agile Development)方法是一种以人为核心、迭代增量式、循序渐进、适应性而非预设性的开发方法。其最基本的特征是:轻量和简单、增量、协作、直接、适应性强。敏捷开发的原则如下:(1)最优先要做的是尽早地、持续地交付有价值的软件,让客户满意。(2)即使到了开发的后期,也欢迎改变需求。敏捷过程利用变化来为客户创造竞争优势。(3)经常性地交付可以工作的软件,交付的间隔可以从几个星期到几个月,交付的时间间隔越短越好。(4)项目开发期间,业务人员和开发人员必须一起工作;在团队内部,最具有效果、效率的交流方法,是面对面的交谈。(5)提倡可持续的开发速度。责任人、开发者和用户应保持一个长期恒定的开发速度。(6)不断地关注优秀的技能和优秀的设计可增强敏捷能力。(7)简单是最根本的要求。

  • 第15题:

    下列关于敏捷方法的叙述中,错误的是( )。

    A.与传统方法相比,敏捷方法比较适合需求变化大或者开发前期对需求不是很清晰的项目
    B.敏捷方法尤其适合于开发团队比较庞大的项目
    C.敏捷方法的思想是适应性,而不是预设性
    D.敏捷方法以原型开发思想为基础,采用迭代式增量开发

    答案:B
    解析:
    敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。通常把一个大项目分为多个相互联系,但也可独立运行的小项目,分别完成。敏捷开发能很好的应对需求时刻在变的特点,可以快速反馈客户的需求变化。因此不适合团队庞大的项目。

  • 第16题:

    以下关于敏捷方法的叙述中,()是不正确的。

    A.. 敏捷型方法的思考角度是"面向开发过程"的
    B. 极限编程是著名的敏捷开发方法
    C. 敏捷型方法是"适应性"而非"预设性"
    D. 敏捷开发方法是迭代增量式的开发方法

    答案:A
    解析:
    敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

  • 第17题:

    简述敏捷软件开发的价值观。


    正确答案: 1.个人和交互高于过程和工具。
    2.可运行软件高于详尽的文档。
    3.与客户协作高于合同(契约)谈判。
    4.对变更及时作出反应高于遵循计划。

  • 第18题:

    关于敏捷开发下面说法正确的是?()

    • A、Scrum偏重于实践
    • B、XP极限编程偏重于过程
    • C、XP和Scrum都属于敏捷开发的具体方式
    • D、敏捷开发适用于规模较大的项目

    正确答案:C

  • 第19题:

    简述敏捷软件开发的原则。


    正确答案: 1.最优先的是通过尽早地和不断地交有价值的软件来使客户满意。
    2.即使到了开发的后期,也欢迎改变需求。
    3.以几周到几个月为周期,尽快、不断地发布可运行软件。
    4.在整个项目过程中,业务人员和开发人员必须天天一起工作。
    5.以积极向上的员工为中心建立项目组,给予他们所需要的环境和支持,对他们的工作予以充分的信任。
    6.项目组内效率最高、最有效的信息传递方式是面对面的交谈。
    7.测量项目进展的首要依据是可运行的软件。
    8.敏捷过程提倡可持续的开发,项目发起者、开发者和用户应能长期保持恒定的速度。
    9.应时刻关注技术上的精益求精和好的设计,以增强敏捷性。
    10.简单化是必不可少的,这是尽可能减少不必要工作的艺术。
    11.最好的构架、需求和设计出自于自我组织的团队。
    12.团队要定期反思怎样才能更有效,并据此调整自己的行为。

  • 第20题:

    什么是敏捷开发?()

    • A、敏捷开发是一种以用户故事为核心、迭代、循序渐进的开发方法
    • B、敏捷开发是一种以人为核心、迭代、循序渐进的开发方法
    • C、敏捷开发是一种以人为核心、交付、循序渐进的开发方法
    • D、敏捷开发是一种以迭代为核心、循序渐进的开发方法

    正确答案:B

  • 第21题:

    问答题
    简述敏捷软件开发的原则。

    正确答案: 1.最优先的是通过尽早地和不断地交有价值的软件来使客户满意。
    2.即使到了开发的后期,也欢迎改变需求。
    3.以几周到几个月为周期,尽快、不断地发布可运行软件。
    4.在整个项目过程中,业务人员和开发人员必须天天一起工作。
    5.以积极向上的员工为中心建立项目组,给予他们所需要的环境和支持,对他们的工作予以充分的信任。
    6.项目组内效率最高、最有效的信息传递方式是面对面的交谈。
    7.测量项目进展的首要依据是可运行的软件。
    8.敏捷过程提倡可持续的开发,项目发起者、开发者和用户应能长期保持恒定的速度。
    9.应时刻关注技术上的精益求精和好的设计,以增强敏捷性。
    10.简单化是必不可少的,这是尽可能减少不必要工作的艺术。
    11.最好的构架、需求和设计出自于自我组织的团队。
    12.团队要定期反思怎样才能更有效,并据此调整自己的行为。
    解析: 暂无解析

  • 第22题:

    单选题
    以下哪一项是常用敏捷框架或方法论?()
    A

    特征驱动开发(FDD)

    B

    质量驱动开发(QDD)

    C

    产品驱动开发(PDD)

    D

    数据驱动开发(DDD)


    正确答案: D
    解析: 暂无解析

  • 第23题:

    单选题
    关于敏捷开发下面说法正确的是?()
    A

    Scrum偏重于实践

    B

    XP极限编程偏重于过程

    C

    XP和Scrum都属于敏捷开发的具体方式

    D

    敏捷开发适用于规模较大的项目


    正确答案: C
    解析: 暂无解析