一.什么是敏捷开发?
捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。
二.敏捷宣言
个体和互动 高于 流程和工具
工作的软件 高于 详尽的文档
客户合作 高于 合同谈判
响应变化 高于 遵循计划
三.敏捷的12个准则
1.我们的最高目标是:通过尽早和持续地交付有价值的软件来满足客户
2.欢迎对需求提出变更——即使是在项目开发后期。要善于利用需求变更,帮助客户获得竞争优势
3.要不断交付可用的软件,周期从几周到几个月不等,且越短越好
4.项目过程中,业务人员与开发人员必须在一起工作
5.要善于激励项目人员,给他们所需要的环境和支持,并相信他们能够完成任务
6.无论是团队还是团队间,最有效的沟通的方法是面对面的交谈
7.可用的软件是衡量进度的主要指标
8.敏捷过程提倡可持续的开发,项目方、开发人员和用户应该能够保持恒久稳定的进展速度
9.对技术的精益求精以及对设计的不断完善将提升敏捷性
10.要做到简洁、尽最大可能减少不必要的工作,这是一门艺术
11.最佳的架构、需求和设计出自组织的团队
12.团队要定期反省如何能够做到更有效,并相应地调整团队的行为。
四.敏捷需求分析的基本流程
产品愿景(Vision)--> 用户画像(Persona)--> 用户故事(User Story)-->用户故事地图(User Story Map)