DSDM业务中心框架开发方法(一)
Author:SpiderMan(ShenZhen)
From:http://blog.csdn.net/testwin
Email:testwin@sohu.com
DSDM的基本原则
DSDM方法建立在9条原则之上,而且在实施过程中,这9条缺一不可。
原则1:用户必须持续参与
DSDM过程中,用户持续参与的概念是:在整个DSDM生命周期中,有一些专业用户会一直对开发组提供支持和参与。能够随时解决开发组对业务流程的各种问题,使工作进展顺畅,同时用户也会对原型进行验收,提出各种建议和想法。
原则2:必须授予DSDM团队制定决策的权利
DSDM鼓励管理层将权利下放,团队成员都应该得到授权。为了使项目快速进行,团队成员必须能够对他们的工作迅速做出决定,以保证项目能够如期交付。当出现问题时团队成员应该能做出决定,如下是一些常见的决定:
需求的实际含义。
从功能、可用性考虑开发中产生的中间产品是否可接受。
工作进程中需求的优先级制定。
修改技术细节。
尽管DSDM不鼓励团队在出现问题时,逐层向上级反馈,但是也提供了这种问题的处理途径。
可以看出,同为敏捷方法,DSDM方法与SCRUM方法的项目管理思路,特别是对团队授权和对项目过程问题的处理机制还是存在很大差别的,SCRUM方法强调团队成员反馈问题,并且对于开发组不能解决的问题,必须逐层反馈,获取高层的指导,并且支持高层领导参与项目的SCRUM Meeting,强调迅速向上级反馈,上级迅速做出决定。而DSDM方法中,团队成员已经被授权直接做出决定了。
原则3:注重产品的经常交付
经常交付产品,能够让外部人员检查团队内部所做出的决定是否可以接受。这样,项目就能够得到控制。这里说的产品是不仅仅是软件,还包括数据模型。产品的经常交付能够反映项目当前的进度,也能够衡量项目是否沿着正确的方向在进行。
原则4:满足业务用户用途是接受交付品的主要依据
开发人员不必沉溺于完美的解决方案之中,耽误项目时间。在受限的时间内,实现业务利益最大化的交付品才是最重要的。
原则5:迭代和增量式开发对得到正确的业务解决方案是必不可少的
采用迭代开发的方法,能够使业务流程逐步进化,使系统不断朝着满足业务需求的方向前进。
原则6:开发过程的所有变化可逆
采用迭代和增量式开发过程中,很可能会碰到走错的情况,此时需要回退到一个已知的可靠的点上。
原则7:在高层次上制定需求的基线
在业务研究中所得出的需求必须在高层次上达成一致。接下来在迭代过程中再得到详细的需求。
原则8:测试自始至终贯穿于开发周期之中
开发人员完成一个模块的开发后,自己会进行单元测试。当模块集成到现有系统后,测试人员需要执行集成测试。另外,回归测试在DSDM中占有很重要的地位。
原则9:所有项目涉众间的通力合作是不可获缺的
何时使用DSDM?
对于具有以下特性的应用,DSDM特别适合:
1、交互式、功能通过用户界面体现。
2、有清晰的用户群。
3、没有复杂计算。
4、如果是大型应用,可以分解成小的功能部件。
5、有时间限制。
6、需求不清楚或不确定
参考文献:
1、《The New Methodology》 Martin Fowler http://www.martinfowler.com/
2、《DSDM Business Focused Development》 Jennifer Stapleton
3、《Agile方法研究综述》
钱乐秋② 张敬周①② 朱三元①②
①(上海计算机软件技术开发中心)
②(复旦大学计算机与信息技术系)