迭代式开发

作者: 橙小张 | 来源:发表于2018-01-01 20:34 被阅读23次

一、迭代式开发实例

实例:

  • 周期:三周
  • 用周一上午启动会议,① 明确本次迭代的任务和目标,由一个人对迭代的代码进行逆向工程,制作UML图;② 在周一剩下的时间在白板以结对的工作方式进行敏捷建模,画出UML草图并记录,写出一些伪代码和设计概要;③ 剩余的工作日进行局部系统进行实现、测试,进一步的设计,集成和日常构造等工作。

二、迭代式开发的优点

  • 减少项目失败的可能性
  • 在早期缓解高风险(技术、需求、目标、可用性)
  • 早期可见的进展
  • 早期反馈
  • 可控复杂性
  • 一次迭代中的经验可以被系统的运用改进开发过程本身,并反复的进行

三、如何进行迭代和进化式分析和设计

  • 在第一次迭代之前,召开需求工作会议,确切的定义需求时间(2天)
    • 第一天上午,进行高阶需求分析,例如仅确定用例和特性的名称,以及关键的非功能性需求(可能会有缺陷)
    • 从高阶列表中选择10%列表项,这些列表必须要有以下特性,并打标:
      • 具有重要的架构意义(核心架构):UC1
      • 高业务价值(业务真正关心的特性):UC2
      • 具有高风险(例如能够处理500个并发交易):UC3
    • 第一次迭代之前,选择列表子集进行设计,构造和测试,因为工作量比较大,不会在第一个迭代中就构造出全部的三个用例,选择特定子集目标后,在开发团队的帮助下,将其分解为更详细的迭代任务。
    • 在规定时间内完成第一次迭代
      • 开始两天,先进行建模和设计工作,画出UML草图和其他的模型
      • 摘掉“建模帽子”,戴上“编程帽子”,开始编码,以草图作为起点,但是草图模型是局部和含糊的。
      • 进行大量测试(重点)
      • 结束前一周,检查是否可以完成迭代目标,如果不能,缩小迭代范围,将次要目标返回到任务列表中
      • 最后一周的星期二,冻结代码,合并代码
      • 周三下午,演示局部系统,展示早期的可视进展,获得回馈
    • 周五进行下一次迭代计划会议

相关文章

  • 软件开发模式

    迭代式开发 迭代式开发也被称作迭代增量式开发或迭代进化式开发,是一种与传统的瀑布式开发相反的软件开发过程,它弥补了...

  • 敏捷开发

    敏捷开发 敏捷开发以用户需求为核心,采用迭代、循序渐进的方法进行软件开发。 迭代-增量式开发(反复与渐进式开发) ...

  • 迭代式开发

    一、迭代式开发实例 实例:周期:三周用周一上午启动会议,① 明确本次迭代的任务和目标,由一个人对迭代的代码进行逆向...

  • 全面分析 | 如何从0到1搭建产品

    T行业发展数年,其中出现了多种项目开发流程——瀑布式开发、迭代式开发、螺旋式开发、敏捷开发。将这些思想再细分下去还...

  • 管理 | 两种敏捷开发方法

    敏捷开发的两种方法,你get了吗? 一、什么是敏捷开发? 传统开发方式:如迭代式开发、瀑布式开发软件的开发过程是确...

  • 软件开发方法总结

    瀑布式开发 增量迭代 迭代开发将一个大任务,分解成多次连续的开发,本质就是逐步改进。开发者先快速发布一个有效但不完...

  • 精益创业要知道的3个方面

    产品开发模式 瀑布式开发模式:需求-设计-实施-验证-维护 问题已知,解决方式已知 敏捷开发模式:短周期迭代交付...

  • Python 基础 | 瀑布式开发 vs 迭代式开发

    瀑布式开发 正规军开发一个商业软件,一般分为这些步骤: 需求分析 需求分析阶段的任务是确定用的需求。找用户聊天,了...

  • Daily Scrum

    是什么? #######- Daily :每天#######-Scrum:Scrum是迭代式增量软件开发过程,通常...

  • 精益产品研发读后感

    《精益产品开发》介绍了开发方式的历史演进,从传统的作坊式到瀑布式,再到迭代、持续集成与站会的敏捷开发,然后引出了本...

网友评论

    本文标题:迭代式开发

    本文链接:https://www.haomeiwen.com/subject/edztnxtx.html