敏捷开发是指一套软件开发方法,鼓励干系人之间持续合作并快速、频繁以小增量的方式交付有用的功能。敏捷方法种类繁多,其中最流行的包括Scrum、极限编程、精益软件开发、特性驱动开发以及看板方法。
各种敏捷开发方法各有千秋,但是本质都离不开适应性,而非预测性方法。预测性方法视图在软件开始构建之前通过周密的策划和文档将项目的风险降到最低,比如瀑布开发就是预测性方法。
敏捷开发方法试图解决瀑布模型的局限。敏捷方法专注于迭代和增量的开发方法,将软件的开发分解成短周期,这些短周期称为“迭代”。
敏捷方法中需求的基本面,需要客户参与,文档的细节,Backing和排优先级,确定时机,史诗、用户故事和特性,期待变更等,每一项都必不可少。
改进型项目是指需要向现有系统添加新功能的项目。改进型项目也包括纠正缺陷、添加新报表、改进功能以满足修订后的业务规则与业务需要。替换型香满园是指使用新的自建系统、商业现贷系统或者两者的组合来替换现有应用的项目。
我觉得并不是要花费时间生成整个生成系统的整套需求,这个过程是需要不断构建的,各种各样的选择与需求是不断改变的,要判断是否值得投入成本来满足所有或者部分需求,权衡利弊。