DSDM方法建立在9條原則之上,而且在實(shí)施過程中,這9條缺一不可。
原則1:用戶必須持續(xù)參與
DSDM過程中,用戶持續(xù)參與的概念是:在整個(gè)DSDM生命周期中,有一些專業(yè)用戶會(huì)一直對(duì)開發(fā)組提供支持和參與。能夠隨時(shí)解決開發(fā)組對(duì)業(yè)務(wù)流程的各種問題,使工作進(jìn)展順暢,同時(shí)用戶也會(huì)對(duì)原型進(jìn)行驗(yàn)收,提出各種建議和想法。
原則2:必須授予DSDM團(tuán)隊(duì)制定決策的權(quán)利
DSDM鼓勵(lì)管理層將權(quán)利下放,團(tuán)隊(duì)成員都應(yīng)該得到授權(quán)。為了使項(xiàng)目快速進(jìn)行,團(tuán)隊(duì)成員必須能夠?qū)λ麄兊墓ぷ餮杆僮龀鰶Q定,以保證項(xiàng)目能夠如期交付。當(dāng)出現(xiàn)問題時(shí)團(tuán)隊(duì)成員應(yīng)該能做出決定,如下是一些常見的決定:
需求的實(shí)際含義。
從功能、可用性考慮開發(fā)中產(chǎn)生的中間產(chǎn)品是否可接受。
工作進(jìn)程中需求的優(yōu)先級(jí)制定。
修改技術(shù)細(xì)節(jié)。
盡管DSDM不鼓勵(lì)團(tuán)隊(duì)在出現(xiàn)問題時(shí),逐層向上級(jí)反饋,但是也提供了這種問題的處理途徑。
可以看出,同為敏捷方法,DSDM方法與SCRUM方法的項(xiàng)目管理思路,特別是對(duì)團(tuán)隊(duì)授權(quán)和對(duì)項(xiàng)目過程問題的處理機(jī)制還是存在很大差別的,SCRUM方法強(qiáng)調(diào)團(tuán)隊(duì)成員反饋問題,并且對(duì)于開發(fā)組不能解決的問題,必須逐層反饋,獲取高層的指導(dǎo),并且支持高層領(lǐng)導(dǎo)參與項(xiàng)目的SCRUM Meeting,強(qiáng)調(diào)迅速向上級(jí)反饋,上級(jí)迅速做出決定。而DSDM方法中,團(tuán)隊(duì)成員已經(jīng)被授權(quán)直接做出決定了。
原則3:注重產(chǎn)品的經(jīng)常交付
經(jīng)常交付產(chǎn)品,能夠讓外部人員檢查團(tuán)隊(duì)內(nèi)部所做出的決定是否可以接受。這樣,項(xiàng)目就能夠得到控制。這里說的產(chǎn)品是不僅僅是軟件,還包括數(shù)據(jù)模型。產(chǎn)品的經(jīng)常交付能夠反映項(xiàng)目當(dāng)前的進(jìn)度,也能夠衡量項(xiàng)目是否沿著正確的方向在進(jìn)行。
原則4:滿足業(yè)務(wù)用戶用途是接受交付品的主要依據(jù)
開發(fā)人員不必沉溺于完美的解決方案之中,耽誤項(xiàng)目時(shí)間。在受限的時(shí)間內(nèi),實(shí)現(xiàn)業(yè)務(wù)利益最大化的交付品才是最重要的。
原則5:迭代和增量式開發(fā)對(duì)得到正確的業(yè)務(wù)解決方案是必不可少的
采用迭代開發(fā)的方法,能夠使業(yè)務(wù)流程逐步進(jìn)化,使系統(tǒng)不斷朝著滿足業(yè)務(wù)需求的方向前進(jìn)。
原則6:開發(fā)過程的所有變化可逆
采用迭代和增量式開發(fā)過程中,很可能會(huì)碰到走錯(cuò)的情況,此時(shí)需要回退到一個(gè)已知的可靠的點(diǎn)上。
原則7:在高層次上制定需求的基線
在業(yè)務(wù)研究中所得出的需求必須在高層次上達(dá)成一致。接下來在迭代過程中再得到詳細(xì)的需求。
原則8:測(cè)試自始至終貫穿于開發(fā)周期之中
開發(fā)人員完成一個(gè)模塊的開發(fā)后,自己會(huì)進(jìn)行單元測(cè)試。當(dāng)模塊集成到現(xiàn)有系統(tǒng)后,測(cè)試人員需要執(zhí)行集成測(cè)試。另外,回歸測(cè)試在DSDM中占有很重要的地位。
原則9:所有項(xiàng)目涉眾間的通力合作是不可獲缺的
何時(shí)使用DSDM?
對(duì)于具有以下特性的應(yīng)用,DSDM特別適合:
1、交互式、功能通過用戶界面體現(xiàn)。
2、有清晰的用戶群。
3、沒有復(fù)雜計(jì)算。
4、如果是大型應(yīng)用,可以分解成小的功能部件。
5、有時(shí)間限制。
6、需求不清楚或不確定