zoukankan      html  css  js  c++  java
  • 敏捷开发 | DSDM 在非 IT 领域也同样适用?

    动态系统开发方法(Dynamic Systems Development Method:DSDM)是在快速应用程序开发(RAD)方法的基础上改进的。作为敏捷方法论的一种,DSDM方法倡导以业务为核心,进行快速、有效的系统开发,不仅适用于敏捷开发模式,也同样适用于传统的开发模式。它既能满足单个团队同一地点的简单产品开发,还能满足多个团队不同地点、不同时区的复杂项目开发。

    一、DSDM依赖于严格的时间控制

    与传统开发方法不同的是,DSDM强调项目的时间是固定的,功能和资源是可变的。也就是说,项目功能和资源的规划需要配合实际开发效果进行规划:如果在一周的时间内,功能太多无法交付,那么就要去掉部分功能,以顺利结束这一迭代。其基本观点是,任何事情都不可能一次性完成,应该用20%的时间来完成80%的有用功能,以适应商业目的为准。因此,对项目任务的优先级排序是十分重要的,DSDM应用MosCow优先级排序方法,将项目任务分解为四种不同类型的要求:

    • Must:必须做的;
    • Should:应该做的;
    • Could:可以做的;
    • Would not:不要做的。

    那么,为了顺利完成“80%”的有用功能,可以首要完成Must、Should项,或者说在完成Must、Should项的基础上酌情考虑完成Could项。

    二、DSDM的角色

    任何敏捷开发方法论都有注明他们所构建的系统中应具备的角色,DSDM也不例外:

    • 项目负责人——该职位上的人员由用户或客户方面推出,他们代表用户或客户行使决策权,并能够根据需要分配资金及资源。
    • 项目指导——项目指导者需要深入了解用户业务、具备敏锐性,并有远见卓识,能够尽快锁定最高优先级要求,并基于此指导团队来初始化项目。 
    • 用户代表——一个理想的“测试用户”,可以将用户社群的观点带入到整个项目中。他们是整个开发过程中重要的反馈来源。 
    • 用户顾问——另一种类型的用户,应对手中的项目提出新颖或十分重要的观点,因此,用户顾问需要有资深的专业知识或其他独特的专业能力。 
    • 项目经理——项目经理是管理整个项目的人。 
    • 团队负责人——负责协调和促进团队之间的协作。 
    • 解决方案开发人员——浏览系统要求,进行系统建模,开发可交付的代码并创建原型。
    • 解决方案测试器——测试产品,并在出现错误时提供注释和文档。在实施更正后,它们还能够重新测试。 
    • 抄录员——记录项目进度的要求、协议、决定和其他有用信息。 
    • 主持人——他们负责激励和准备研讨会,以保持进度的持续稳定。他们必须是使每个人都步入正轨的协调者。 
    • 专家角色——这些角色由各自领域或行业的专家担任,根据项目需求提供额外的支持。他们可能因项目而异,也因团队而异。这样的角色包括业务架构师、质量经理、系统集成商等等。 

    三、DSDM的基本原则

    • 用户必须持续参与

    用户不仅提出产品需求,还要参与到开发过程中,及时给出反馈。

    • 授予DSDM团队决策权

    DSDM团队成员被授予能够在出现问题后直接做出决定的权力。

    • 强调产品的经常交付

    产品的经常交付能够让开发团队得到快速的反馈,并及时处理交付中发现的问题。

    • 满足业务需求

    不要做过多无意义的功能增加,交付完成的标准就是实现产品的业务需求。

    • 迭代开发

    迭代开发能够不断完善业务解决方案,满足业务需求。

    • 开发过程中的所有变化可逆

    开发过程要适应变化。

    • 在高层次上制定需求的基线

    要先达成高层次的目标,再进行需求细化。

    • 测试自始自终贯穿于开发周期之中

    开发人员完成一个模块的开发后,自己会进行单元测试。当模块集成到现有系统后,测试人员需要执行集成测试。另外,回归测试在DSDM中占有很重要的地位。

    • 所有利益相关者之间的通力合作是不可或缺的

    产品的交付需要各方的参与、努力,单靠开发团队是无法成功交付的。

    四、DSDM的优势

    DSDM中既有传统开发的优势,又有先进的敏捷思维及理念,因此有效实施DSDM能够帮助团队得到切实有效的提高:

      • 开发过程及结果能够清晰、明确地展现出来;
      • 用户积极参与开发过程,更能满足他们的需求;
      • 有效的沟通能够打破中间各环节的交流壁垒;
      • DSDM更易于与其他敏捷方法论结合,因地制宜发展适合自己组织的开发方法;
      • DSDM不局限于IT领域,在非IT领域也有着广泛的应用。
  • 相关阅读:
    BZOJ 1101 莫比乌斯函数+分块
    BZOJ 2045 容斥原理
    BZOJ 4636 (动态开节点)线段树
    BZOJ 2005 容斥原理
    BZOJ 2190 欧拉函数
    BZOJ 2818 欧拉函数
    BZOJ 3123 主席树 启发式合并
    812. Largest Triangle Area
    805. Split Array With Same Average
    794. Valid Tic-Tac-Toe State
  • 原文地址:https://www.cnblogs.com/minjieagile/p/14118648.html
Copyright © 2011-2022 走看看