敏捷开发--scrum

2018-04-03 14:02:52 浏览数 (1)

1.  请简述一下什么是敏捷开发(Agile Development),以及什么是持续集成。

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

持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。

2.  你所知道的敏捷方法有哪些?请至少列举出3个
Scrum、极限编程(Extreme Programming,XP)、Crystal、动态系统开发方法、功能驱动的开发方法和Lean软件开发
3.  Scrum开发流程中的3种角色分别是什么?这3种角色分别承担什么职责?

产品负责人(Product Owner)

主要负责确定产品的功能和达到要求的标准,指定软件的发布日期和交付的内容,同时有权力接受或拒绝开发团队的工作成果。

流程管理员(Scrum Master)

主要负责整个Scrum流程在项目中的顺利实施和进行,以及清除挡在客户和开发工作之间的沟通障碍,使得客户可以直接驱动开发。

开发团队(Scrum Team)

主要负责软件产品在Scrum规定流程下进行开发工作,人数控制在5~10人左右,每个成员可能负责不同的技术方面,但要求每成员必须要有很强的自我管理能力,同时具有一定的表达能力;成员可以采用任何工作方式,只要能达到Sprint的目标。

4. Scrum中如何实现一个Sprint? *

1、Scrum计划会议     在每个Sprint开始之前,需要召开Sprint计划会议,会议时间一般为4~8小时,参加人员有产品责任人、Scrum Master、Scrum团队和其他感兴趣的人,比如管理人员和客户代表。     Product Owner从产品Backlog中挑选高优先级的任务,并与Scrum团队一起决定在这个Sprint中需要完成多少功能。Scrum团队将这些任务分解成小的功能模块。Scrum团队成员详细讨论如何能按需求完成这些功能模块,并估计完成每个功能模块所需的大概时间。 2、每日Scrum会议 每日Scrum会议(Daily Scrum),即团队每日例会,条件允许的话,每天都应该在同样的时间和地点,组织所有成员站立举行。由于是以站立的状态开会,因此时间比较短,一般为 15分钟左右。这个会议最好是在每天的清晨开,有利于团队成员安排好当天的工作计划。只有团队成员可以在每日Scrum会议上发言,其他人员如果对项目进度有兴趣也可以参加,但只能旁听而不能发言。 3、Scrum评审会议     Sprint评审会议在Sprint结束时召开,由开发团队展示这个Sprint中完成的功能,长度为两个小时左右,不需要PPT,一般是已经完成功能的Demo,而客户、管理层、ProductOwner以及其他开发人员等都可以参加。 在Sprint评审会议上,Scrum团队用Demo的形式展示产品的功能之后,与会人员依据在Sprint计划会议上确定的这个Sprint的目标来评审具备了这些新功能的产品。 4、Scrum回顾会议     Sprint回顾会议由产品责任人、Scrum团队和Scrum Master参见,会议中需要讨论:有哪些好的建议或方法应该被采纳;在Sprint中有什么做法不可取;有哪些做法效果很好,应该继续下去。     Sprint结束后,Scrum团队回顾刚结束的Sprint,对其进行总结和反思,使整个团队能持续成长。总之,Sprint回顾会议的宗旨就是:Scrum团队如何在下一个Sprint中做得更好!

参考:

http://wiki.mbalib.com/wiki/敏捷开发

http://www.cnblogs.com/taven/archive/2010/10/17/1853386.html

http://www.cnblogs.com/zgqys1980/archive/2011/01/04/1925776.html

0 人点赞