1.敏捷流程的含义
“敏捷流程”是一系列价值观和方法论的集合。
敏捷的方法论比较有名的有:爱抚弟弟(FDD-Feature Driven Design)、史克朗姆(SCRUM)、极限编程(XP)
敏捷开发的原则是:(1)尽早并持续地交付有价值的软件以满足顾客的需求;
(2)敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势;
(3)经常发布可用的软件,发布间隔可以从几周到几个月,能短则短;
(4)业务人员和开发人员在项目开发过程中应该每天共同工作;
(5)以有进取心的人为项目核心,充分支持信任他们;
(6)无论团队内外,面对面的交流始终是最有效的沟通方式;
(7)可用的软件是衡量项目进展的主要指标;
(8)敏捷流程应能保持可持续的发展。 领导, 团队和用户应该能按照目前步调持续合作下去;
(9)只有不断关注技术和设计才能越来越敏捷;
(10)保持简明 - 尽可能简化工作量的技艺 - 极为重要;
(11)只有能自我管理的团队才能创造优秀的架构, 需求和设计;
(12)时时总结如何提高团队效率, 并付诸行动。
敏捷开发的宣言:(1)人和交互重于过程和工具
(2)可以工作的软件重于求全责备的文档
(3)客户合作重于合同谈判
(4)随时应对变化重于循规蹈矩
2.敏捷流程应该怎么做
第一步:找出完成产品需要做的事情(我觉得可以理解为--为我们的项目做一个系统的、详细的设计);
第二步:决定当前的冲刺需要解决的事情(把我们的项目分成几个模块,然后让团队成员各自完成一个或几个模块的任务);
第三步:冲刺(实现项目阶段),我们要有“每日立会”,大家要汇报:我昨天做了什么,今天我要做什么,我在完成项目的过程中遇到了哪些问题。这个可以很好的让团队成员进行沟通交流,让每个成员了解整个项目的进程,而且遇到问题还可以大家一起解决,人多力量大。
第四步:得到软件的一个增量版本,发布给用户。然后在此基础上又进一步计划增量的新功能和改进。(最后将每个成员完成的进行整合构建,在进行测试)
3.敏捷流程的优缺点
敏捷开发的优点:周期短,可以增量开发,可以灵活安排功能的实现,可以及时发现项目缺陷,重在交流和协作。
敏捷流程的实现对整个团对的要求很高,它需要团队的每个成员都要有极强的团队意识和自主意识。对团队的要求有:自主管理、自我组织、多功能型。每个队员之间也要相互帮助,互相配合。
敏捷开发的缺点:对人员素质、稳定性、技术性的要求更高,不适合人员流动,整体性强(强则强,弱则弱)。