普通軟體項目開發過程規範(五)—— 總結

來源:互聯網
上載者:User

 

總 結

 

 圖 8-1 項目階段

 

  軟體項目開發經曆多個階段,每個階段包含多個任務,每個任務會產生相應的工件。需要相應的品質保證措施對任務進行監控,保證任務的執行。任務完成後也需要對任務進行評審,保證任務的品質。

  這些工作均由Team Dev和相關人員按照工作流程執行。因此,合理的角色任務分配和溝通制度是軟體項目成功的重要保障。

  圖 8-2 列出幾種比較普遍的角色和任務劃分方案:

  

 圖 8-2 角色和任務劃分方案

 

  職責和角色不清楚往往是造成軟體項目團隊管理混亂的一個重要原因,一個好的軟體團隊必鬚根據團隊規模的不同和項目本身的特點對項目成員的角色和崗位進行明確的劃分,這樣團隊中的每個成員才可能有清晰的責任和目標。

  軟體開發不管採用哪種生命週期模型和開發方法論,整個過程都會包含需求,設計,開發,測試,組態管理等各項活動。而這些活動會對應到項目中的不同角色,項目中進行崗位劃分後每個崗位成員可以兼職多個角色。形成相關的角色崗位矩陣。

 

  方案一 項目負責人總覽全域

  對於小作坊的軟體Team Dev,可以由一個項目負責人總覽全域。項目負責人承擔從使用者需求->軟體需求->總體設計的所有工作。同時還需要做到整個團隊進度規劃,品質保證,組態管理和溝通協調等相關工作。所以小型項目團隊對項目負責人的業務,技術和溝通管理等技能都要求較高,項目負責人是項目中的總體方案確認者和架構師。項目負責人能力和技能往往決定了整個軟體項目的成敗。

  我們這裡指的小型團隊並不是只一個人單打獨鬥的項目,所以項目負責人最好不要介入到模組設計和編碼活動中,而是應該把重點放在進度的控制和品質的保證上面。由於項目負責人一般有較強的技術能力,所以項目負責人可以承擔項目中要使用的一些新技術的研究,項目中一些疑難問題的解決等相關工作。項目負責人還應該有計劃的設計開發人員的代碼進行Review,對發現的規範性,效能,複用差等問題跟項目成員確認,並寫入到項目開發規範中。

 

  方案二 項目負責人和開發負責人分離

  在這種方案下項目負責人和開發負責人在軟體需求和架構上的工作是重疊的。這兩個崗位的人員共同來確認項目的總體方案和架構。項目負責人的重點在專案管理和與客戶交流溝通上,只有確認清楚第一手的使用者需求,才能開發出使用者滿意度高的軟體。對於很多小型項目往往是使用者需求都沒有搞清楚就開工,項目成員完全憑藉著自己的感覺在做系統,過程中又不注意與使用者及時反饋和迭代,導致開發出完全不能使用的系統;開發負責人的重點是對整個開發過程負責,包括對專案經理確認的進度目標進行任務的進一步分解,安排後續的增量和反覆項目計劃。方案二的重點是第一次解放專案經理,架構的核心移動到了開發負責人,而專案經理僅僅是參與討論和評審。而單獨剝離出開發負責人後,可以更好的對開發過程進行跟蹤和協調,開發負責人重點放在項目內部,而避免過多去和外部干係人溝通和協調。

 

  方案三 測試的專職化

  對於項目團隊發展到5-10的時候,項目中的測試工作必須專職化的由測試人員來完成。一般測試人員的配置比例為4-6個開發人員需要配置一名專職化的測試人員。測試人員站在第三方和類比使用者角度來進行系統的測試,可以更好的發現系統的BUG和相關問題,有效保證系統的品質。

  方案三中專案經理工作進一步清晰,專案經理不在承擔軟體需求和架構的相關工作。而重點放在項目內外的溝通協調和整個項目進度計劃的安排上。這個時候項目中的設計負責人對整個系統的總體設計方案和架構負責,而且設計負責人也將不在參與具體的功能模組的設計和開發工作。設計負責人的重點轉化到的軟體需求的開發和總體設計上面(如涉及到RUP中的用例建模,用例分析,架構設計,組件介面複用)。

 

  方案四 專案經理和需求角色分離

  當項目團隊的規模發展到12-20人的時候,項目團隊基本上可以算做中小型的項目團隊。這個時候專案經理完全專職化做專案管理的工作。包括項目進度計劃制定,項目跟蹤監控,風險分析和控制,項目度量分析和決策等相關內容。對於需求活動設定專門的需求工程師崗位來完成需求的開發。同時項目中設定專門的架構設計人員,架構設計人員不再負責需求的開發工作,而重點在於系統總體設計方案的確定,系統的4+1視圖的分析,同時架構人員要考慮整個系統的整合方案的確定和具體功能單元和模組的整合。

  由於項目規模的擴大,項目的配置項更加複雜,項目也需要同時起開發,測試,整合和BugFix等多個分支。因此需要設定專門的組態管理員來進行項目的組態管理。

  對於項目同時需要開發新版本,又需要對已經發布的維護版本進行功能改進的時候,項目中要考慮設定專門的維護人員。由維護人員來完成項目小功能的改進和BUG的修複。這樣新版本設計開發人員可以更專註的進行新功能的開發。

 

(全文完)

 

CodeProject

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.