posts - 431,  comments - 344,  trackbacks - 0
          公告
           Don't Repeat Yourself
          座右銘:you can lose your money, you can spent all of it, and if you work hard you get it all back. But if you waste your time, you're never gonna get it back.
          公告本博客在此聲明部分文章為轉摘,只做資料收集使用。


          微信: szhourui
          QQ:109450684
          Email
          lsi.zhourui@gmail.com
          <2007年1月>
          31123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          留言簿(15)

          隨筆分類(1019)

          文章分類(3)

          文章檔案(21)

          收藏夾

          Link

          好友博客

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 865060
          • 排名 - 44

          最新評論

          閱讀排行榜

          摘要
              管理仍然是開發軟件項目成敗的關鍵。我國的軟件產業需要迅速轉入以過程為中心,走工業化生產的道路。但單純依靠能力成熟度模型CMM,永遠不能真正做到過程管理的改善, 只有與PSP和TSP有機地結合起來,才能達到軟件過程持續改善的效果。
          前言
              本文將圍繞過程管理的各個環節,以循序漸進的方式,更具體更深入地講述和分析軟件開發的過程改進問題。它將從如何控制、管理和改進個人工作方式的問題開始,到如何創建高效且具有自我管理能力的工程小組,工程人員如何才能成為合格的項目組成員,以及管理人員如何對群組提供指導和支持,一直講到如何在全公司范圍內定義和推行合適的符合CMM標準的過程規范,并達到不斷改進的良性循環狀態,等等。
              如果按照本文所提到的這種思路和體系進行過程改進的話,那么公司的過程工作將是踏實而有效的。并且于個人,于公司都將受益非淺:
              1、 提升個人的能力。PSP向你展示如何制訂計劃并跟蹤你的工作,提供工作有效性的數據并識別出自己的優勢和劣勢,從而使你能夠不斷了解和改善自己的技能和才智,并在工作中充分利用自己獨特的才能。而TSP向你展示如何成為合格的項目組成員,如何創建高效且具有自我管理能力的工程小組,從而達到高效的協同開發。
              2、 完善公司的過程。結合TSP和PSP,在全公司范圍內建立規范的開發過程就輕而易舉。再加上本文提供的具體實踐和有效思路,能夠很好地幫助企業提升管理能力,包括軟件過程管理、項目管理和持續改進過程。
          個人開發能力
              PSP (Personal Software Process) 是一種可用于控制、管理和改進個人工作方式的自我持續改進過程,是一個包括軟件開發表格、指南和規程的結構化框架。PSP與具體的技術(程序設計語言、工具或者設計方法)相對獨立,其原則能夠應用到幾乎任何的軟件工程任務之中。PSP能夠說明個體軟件過程的原則; 幫助軟件工程師作出準確的計劃;確定軟件工程師為改善產品質量要采取的步驟;建立度量個體軟件過程改善的基準;確定過程的改變對軟件工程師能力的影響。
          團隊開發能力
              TSP(Personal Software Process)對群組軟件過程的定義、度量和改革提出了一整套原則、策略和方法,把CMM要求實施的管理與PSP要求開發人員具有的技巧結合起來,以按時交付高質量的軟件,并把成本控制在預算的范圍之內。在TSP中,講述了如何創建高效且具有自我管理能力的工程小組,工程人員如何才能成為合格的項目組成員,管理人員如何對群組提供指導和支持,如何保持良好的工程環境使項目組能充分發揮自己的水平等軟件工程管理問題。
          軟件開發過程
              軟件開發過程(Software Development Process,SDP)是組織級在全公司范圍內進行的過程定義、度量和改進,包括三部分:開發生命周期、項目管理實踐和軟件工程過程。它是在CMM的基礎上建立起來的,綜合在實踐中行之有效的具體方法,注重實用性和效果,以實現項目交付的可預期性和質量保證為最終目標。
              開發生命周期。一個專業的軟件開發公司應該有根據自己的開發模式建立一個非常詳細的軟件開發周期模型,包括開發階段,每階段內的任務,任務的具體工作和交付物,使用的開發工具和技術,以及人員的分工,甚至可以細到通用的審核會議。將開發中所有的內容用網絡圖或流程圖的形式明確地規范下來,使得高層能夠對項目的整體過程一目了然,使得項目的管理者很容易地跟蹤任務的情況,使得每位開發人員都非常明確自己的任務和在整體開發中的作用。只有這樣的生命周期模型對具體的開發才有意義,它是公司所有開發的“圣經”,所有的技術開發和過程開發均需在此基礎上進行開展,并以此為依據。
              項目管理實踐。以公司的軟件生命周期為基礎,依據CMM標準,為公司建立一系列合適的過程實踐。幾個關鍵的過程實踐包括:質量保證,需求管理,配置管理,計劃和跟蹤,風險控制。然后再建立一套項目度量工具來更加精確地管理項目。如果你們企業不做CMM認證的話,我認為其他的實踐可以先不做。將這些基本的工作做到位,然后再參考三級四級五級的實踐來改進和補充這些實踐,也完全可以很好地控制開發的軟件過程。即所謂:學習CMM是吸收其精華和精神。
              持續改進過程。有了規范的開發生命周期模型和項目管理實踐,可以想辦法為企業設計一個建立在數據基礎之上、不斷度量和改進、不斷提高企業開發能力的一個良性循環的機制。模型圖如下:

          三者的有機結合
              PSP、 TSP 和CMM為軟件產業提供了一個集成化的、三維的軟件過程改革框架。三者互相配合,各有側重,形成了不可分割的整體,猶如一張具有三條腿的凳子,缺一不可。在軟件能力成熟度模型CMM的18個關鍵過程域中,有12個與個體軟件過程PSP緊密相關,有16個與群組軟件過程TSP緊密相關。因此,如果能夠熟悉個體軟件過程和群組軟件過程,不僅有助于工程師改善工作效率,而且也非常有利于組織的過程改善。
              為了更有效地改進公司的過程,在這里我建議一種循序漸進的方法。如下圖所示:

              PSP注重于個人的技能,能夠指導軟件工程師如何保證自己的工作質量,估計和規劃自身的工作,度量和追蹤個人的表現,管理自身的軟件過程和產品質量。經過PSP學習和實踐的正規訓練,軟件工程師們能夠在他們參與的項目工作之中充分利用PSP,從而保證了項目整體的進度和質量。
              TSP注重團隊的高效工作和產品交付能力,結合PSP的工程技能,通過告訴軟件工程師如何將個體過程結合進小組軟件過程,通過告訴管理層如何支持和授權項目小組,堅持高質量的工作,并且依據數據進行項目的管理,展示了如何去生產高質量的產品。
              CMM注重于組織能力和高質量的產品,它提供了評價組織的能力、識別優先改善需求和追蹤改善進展的管理方式。再拓展到本文提到的軟件開發過程SDP的話,那就是具有更高層次更高組織性的意義。
          總結
              如果一個組織正在按照CMM改進過程,則PSP和TSP是和CMM完全相容的。如果一個組織還沒有按照CMM改進過程,則有關PSP和TSP的訓練,可以為未來的CMM實踐奠定堅實的基礎。總之,單純實施CMM并不能完全做到能力成熟度的升級,我國企業還應當將實施CMM與實施PSP和TSP有機地結合起來,才能將CMM發揮最大的效力。
          posted on 2007-01-05 15:45 周銳 閱讀(203) 評論(0)  編輯  收藏 所屬分類: Other
          主站蜘蛛池模板: 门头沟区| 容城县| 噶尔县| 西畴县| 临武县| 德昌县| 伊春市| 定日县| 万载县| 甘德县| 乐陵市| 祥云县| 怀柔区| 梅河口市| 永泰县| 察雅县| 长寿区| 托里县| 宝清县| 诸城市| 阜南县| 洞头县| 福清市| 原平市| 阿克苏市| 垫江县| 苏尼特右旗| 宝山区| 安平县| 通江县| 建阳市| 武隆县| 鄂伦春自治旗| 墨竹工卡县| 澄迈县| 藁城市| 高密市| 贺州市| 兴隆县| 大田县| 桦甸市|