JAVA隨筆

           

          閉環(huán)跟蹤--提高軟件開發(fā)質(zhì)量,推動過程改進(jìn)

           

          閉環(huán)跟蹤

                 --提高軟件開發(fā)質(zhì)量,推動過程改進(jìn)

           

          有幸在07524參加Telelogic組織的“閉環(huán)跟蹤”研討會。John Carrillo在會上做了精彩的演講,會議開始就提出了主題“如何提高軟件開發(fā)質(zhì)量,推動過程改進(jìn)”。

           

          John提出提高軟件開發(fā)質(zhì)量,主要以下三點:

          (1)   業(yè)務(wù)流程優(yōu)化 BPO (Business Process Optimization)

          (2)   應(yīng)用生命周期 ALM (Application Lifecycle Management)

          (3)   模型驅(qū)動開發(fā) MDD (Model-Driven Development)

           

          創(chuàng)新、簡化開發(fā)流程及開發(fā)業(yè)務(wù),遵循規(guī)則開發(fā)、依據(jù)規(guī)則管理,可以有效提高生產(chǎn)率。

           

          John在談及“提前管控質(zhì)量”時,以例說明,你要去瑞士參加重要會議,剛下飛機(jī),將隨身攜帶的旅行箱丟失,里面有你的正裝,而你又要去參加一個重要會議,這時你怎么辦?。John提出的例子很有說明性,其實你可能想再買一套就可以啦,那為什么不去考慮怎么可以在丟失之前去管控呢。項目中也如此,John提出數(shù)據(jù),從項目開始發(fā)現(xiàn)問題到最終版本發(fā)現(xiàn)問題,這時最終版本發(fā)現(xiàn)問題會比開始發(fā)現(xiàn)問題的損失增長成百上千倍,那項目中需要管控有哪些呢?

           

          (1)   最終發(fā)行版本僅反映最初所分配需求的52%
          其導(dǎo)致原因無非兩點,1)需求調(diào)研的需求與客戶提出需求不符。2)需求多,膨脹,軟件開發(fā)商做不到。

          (2)   需求劇變,John提出數(shù)據(jù),以1年項目為例,每月1%-13%的需求變更,最終30%的需求變更。
          導(dǎo)致原因:1)引發(fā)客戶變更。2)系統(tǒng)需求變更

          (3)   發(fā)布版本。
          導(dǎo)致原因:1)需求變量對發(fā)布有影響

           

          最終John提出結(jié)論:70%功能缺陷,不具備可操作性,無法交付。

           

           

          John開始進(jìn)入主題,“閉環(huán)跟蹤”,其實這種研討會無非就是宣傳公司產(chǎn)品,開始宣傳他的思想,讓你接受他的思想,好,他又用軟件產(chǎn)品實現(xiàn)了他的思想,買吧。

          正題,閉環(huán)跟蹤主要有三種方法:

          1)      自上而下

          a)        收集“客戶反饋”,確保在整個開發(fā)生命周期中有效管理、審查并跟蹤客戶請求。

          b)        需求工作流程管理,通過靈活和可重復(fù)流程來保持對需求變更的跟蹤。

          c)        需求執(zhí)行,確保需求變更在最終產(chǎn)品中得以執(zhí)行。

          2)      自下而上

          a)        需求執(zhí)行,任務(wù)執(zhí)行。

          b)        任務(wù)追述到需求,再從需求追述到客戶反饋。

          c)        需求驗證任務(wù)是否滿足客戶反饋是否相符,確認(rèn)軟件可以滿足用戶提出的需求。

          3)      提高跨生命周期的可見性和可預(yù)測性

          a)        通過自上而下和自下而上兩種方法,利益相關(guān)者無疑可以輕松地在整個產(chǎn)品工作流程中保持對需求變更和變更請求的跟蹤。管理需借助自上而下的狀態(tài)信息來確定開發(fā)團(tuán)隊達(dá)成其目標(biāo)的具體方式。警報和考核有助于項目經(jīng)理及他人開展對期限、需求、項目分配和軟件開發(fā)其它方面的跟蹤。各級經(jīng)理不但可以清晰把握開發(fā)進(jìn)程的各個階段,還可以了解不同角色的與組件間的互動方式。定期警報將協(xié)助項目經(jīng)理針對進(jìn)度或預(yù)處中所出現(xiàn)的偏差迅速作出響應(yīng),并在事況惡化前及時修改。
          以上是Telelogic白皮書中介紹的,其實總結(jié)出來,無非就是出些報表、駐狀圖、餅圖什么的,再加上可以配置一些預(yù)警。

           

           

          John強(qiáng)調(diào)CMMI只是告訴你“做什么。”不會告訴你“應(yīng)該怎么去做”,一般過CMMI的過程:參考模型->培訓(xùn)課程->評估方法(打“對號”,就是哪項滿足規(guī)范就打個對號)。CMMI需要三個主要組成元素:人,規(guī)則,工具。而CMMI不會告訴你做什么,這時就有我們的工具規(guī)范你怎么去做,唉,終于提正題,介紹Telelogic公司的產(chǎn)品了。

           

          茶歇

           

          該演示產(chǎn)品了,首先是需求管理工具Doors,說白了其實就是一個流程,首先用戶提出需求->審核(是否同意)系統(tǒng)需求->用例->提出實施請求(使用狀態(tài)跟蹤)。Doors可以按項目及需求說明書、概要設(shè)計、詳設(shè)逐一關(guān)聯(lián),舉個例子,提出功能A需求,可關(guān)聯(lián)功能A概要設(shè)計,功能A的詳細(xì)設(shè)計。不就是我們一個工單嗎?拿這種產(chǎn)品來唬人,不過人家的思想是先進(jìn)的,我們?nèi)∑渚A。其實人家也是有特點的。

          下面就說說配置管理工具Synergy CM,其實我看CM代碼管理部分就像Source safe,只是人家將DoorsCM有機(jī)的集成在一起,其實感覺就數(shù)據(jù)源一樣就解決集成了。一樣Doors提出的請求實施與CM的任務(wù)聯(lián)系在一起,例:我在Doors提出A功能的請求實施并派給實施人,然后實施人登入CM將看到派來的任務(wù),之后實施人分析派來的任務(wù),這時就要source safe了,實施人員check out要完成任務(wù)所涉及的代碼,完成后commit。在CM中可以追述Doors的數(shù)據(jù),也就是說有提出提出實施請求,用例,審核,需求人是誰(這就是自下而上了)CM提供類似Source safe,svn ,cvs的功能,代碼比較,目錄比較,形成基線。基線比較,任務(wù)比較。提供任務(wù),代碼,基線告等的報告,統(tǒng)計、總體實施進(jìn)度等。典型的自下而上,代碼->任務(wù)->實施請求->需求。CM提供eclipse plugin

           

          OK,總算說完了,我總結(jié)下吧。其實John的思想是好的,需求不斷的變更導(dǎo)致項目的成本增加,管理難度增大。John提出了使用Doors工具來管理需求,來規(guī)范化,梳理你的開發(fā)流程,而又用CM來管理開發(fā)人員的開發(fā)任務(wù)管理。而DoorsCM集成更是一把利器,梳理你的開發(fā)流程。其實DoorsCM根本沒有什么技術(shù)難度,但它可以解決像CMMI無法幫你解決的,如Jhon所說,CMMI只是告訴你做什么,而Telelogic會告訴你怎么做。

           

          2007-5-25

          posted on 2007-05-25 09:52 曲靜波 閱讀(2151) 評論(0)  編輯  收藏 所屬分類: others

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(3)

          隨筆分類(9)

          隨筆檔案(8)

          文章分類

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 曲沃县| 兰考县| 会同县| 卢氏县| 迭部县| 娱乐| 兴和县| 永泰县| 安义县| 嘉善县| 东乌珠穆沁旗| 花垣县| 崇州市| 云和县| 沈丘县| 勃利县| 喀什市| 江津市| 辉县市| 岚皋县| 和龙市| 贵港市| 翁牛特旗| 乌鲁木齐县| 吉水县| 五大连池市| 澄迈县| 浦东新区| 丰城市| 贵州省| 库车县| 环江| 东丽区| 宁安市| 岳阳市| 周宁县| 大丰市| 青岛市| 新巴尔虎左旗| 乾安县| 广灵县|