少。又比如內(nèi)容創(chuàng)建流程的易用性,這個(gè)用戶使用頻率是非常高的,那么怎么優(yōu)化內(nèi)容創(chuàng)建的用戶體驗(yàn),這個(gè)功能點(diǎn)優(yōu)先級(jí)也就是很高的,然而它的代價(jià)可能不會(huì)特別高。
3)完整性
要特別注意是功能點(diǎn)的完整性,比如說內(nèi)容異常流程的處理,假設(shè)因?yàn)轫?xiàng)目時(shí)間,先不實(shí)現(xiàn)了,那么也不是說完全不處理異常了,還是要做到有一定完整性,即使是簡單的實(shí)現(xiàn)也是需要的(比如說記錄日志以供人工查詢),但是這個(gè)簡單實(shí)現(xiàn)是代價(jià)最小的,而且是以后可以很快去替代的。
4)可持續(xù)性
功能點(diǎn)的實(shí)現(xiàn)選擇,要考慮的還有可持續(xù)性的問題,就是功能點(diǎn)是可以不斷去疊加來完善的,而不是說不斷的推翻后重新實(shí)現(xiàn)一把,這個(gè)是差別很大的。比如說內(nèi)容創(chuàng)建功能,現(xiàn)在對于異常的處理我們暫時(shí)不實(shí)現(xiàn),這個(gè)是沒有問題的;但是如果下次要實(shí)現(xiàn)異常處理的時(shí)候,就要把現(xiàn)在內(nèi)容創(chuàng)建的流程的功能描述推翻重來,這個(gè)可持續(xù)性就有問題了,因?yàn)檫@個(gè)意味著以前的功能全部都會(huì)被推翻,很可能是以前的實(shí)現(xiàn)都白費(fèi)了,這就是功能點(diǎn)設(shè)計(jì)的的不可持續(xù)性了。功能點(diǎn)設(shè)計(jì)一定要有持續(xù)性,如果是這樣子,系統(tǒng)的功能就能夠越做越強(qiáng)。
所以我們可以把每一個(gè)的User Story的各個(gè)功能點(diǎn)想的更加完善,這個(gè)是很好的,剩下的只是如何取舍的了,所謂取舍,只是階段性的舍棄和選擇罷了。所以在討論過程中,不要因?yàn)楣δ艿脑鰪?qiáng),范圍的擴(kuò)大而讓我們感到害怕和困惑,把他們記錄下來,就是很好的逐步改進(jìn)系統(tǒng)的武器,我們只要運(yùn)用上面的一些原則,就能夠讓我們做的更好。
下來再談?wù)勗O(shè)計(jì)的問題。
在Head First Object-Oriented Design的書中,定義Good Design就是Flexible Design。而The Art of Agile Software Development一書中,定義Good Design為“A good software design minimizes the time required to create, modify and maintain the software while achieving acceptable runtime performance.”就是軟件的可維護(hù)性。所以Agile Design強(qiáng)調(diào)的功能,基本上都是從如何不斷改進(jìn)軟件的可維護(hù)性和可擴(kuò)展性而努力的,只有軟件具備了良好的可維護(hù)性和可擴(kuò)展性,那么軟件能夠很好的不斷疊加功能,軟件才具有旺盛的生命力。
我們實(shí)際中面向的問題呢?其實(shí)還是很簡單,就是好的設(shè)計(jì)和項(xiàng)目時(shí)間的沖突,好的設(shè)計(jì)是需要時(shí)間考慮的,也是需要時(shí)間來實(shí)現(xiàn)的(雖然不是絕對,有時(shí)候好的設(shè)計(jì)會(huì)節(jié)省更多的工作量)。
對于第一個(gè)問題,于項(xiàng)目時(shí)間的沖突,這個(gè)可以回到前面開始談的內(nèi)部質(zhì)量和外部質(zhì)量的問題,前面對于功能(外部質(zhì)量)的問題,我們已經(jīng)談了取舍的方法,那么,內(nèi)部質(zhì)量(設(shè)計(jì)),是不是也可以取舍呢?在“Scrum and XP from the Trenches”書里面,作者自己是這么認(rèn)為的:
Internal quality, however, is not up for discussion. It is the team’s responsibility to maintain the system’s quality under all circumstances and this is simply not negotiable. Ever.
在這上面我是持一樣的觀點(diǎn)的。
然而我們的問題依然存在。和項(xiàng)目時(shí)間的沖突如何平衡呢?我想可以考慮兩個(gè)原則:
<!--[if !supportLists]-->1) <!--[endif]-->足夠好(First Right)
<!--[if
項(xiàng)目經(jīng)理勝任力免費(fèi)測評PMQ上線啦!快來測測你排多少名吧~
http://opto-elec.com.cn/pmqhd/index.html