總 結
圖 8-1 專案階段
軟體專案開發經歷多個階段,每個階段包含多個任務,每個任務會產生相應的工件。需要相應的質量保證措施對任務進行監控,保證任務的執行。任務完成後也需要對任務進行評審,保證任務的質量。
這些工作均由開發團隊和相關人員按照工作流程執行。因此,合理的角色任務分配和溝通制度是軟體專案成功的重要保障。
圖 8-2 列出幾種比較普遍的角色和任務劃分方案:
圖 8-2 角色和任務劃分方案
職責和角色不清楚往往是造成軟體專案團隊管理混亂的乙個重要原因,乙個好的軟體團隊必須根據團隊規模的不同和專案本身的特點對專案成員的角色和崗位進行明確的劃分,這樣團隊中的每個成員才可能有清晰的責任和目標。
軟體開發不管採用哪種生命週期模型和開發方**,整個過程都會包含需求,設計,開發,測試,配置管理等各項活動。而這些活動會對應到專案中的不同角色,專案中進行崗位劃分後每個崗位成員可以兼職多個角色。形成相關的角色崗位矩陣。
方案一專案負責人總覽全域性
對於小作坊的軟體開發團隊,可以由乙個專案負責人總覽全域性。專案負責人承擔從使用者需求->軟體需求->總體設計的所有工作。同時還需要做到整個團隊進度規劃,質量保證,配置管理和溝通協調等相關工作。所以小型專案團隊對專案負責人的業務,技術和溝通管理等技能都要求較高,專案負責人是專案中的總體方案確認者和架構師。專案負責人能力和技能往往決定了整個軟體專案的成敗。
我們這裡指的小型團隊並不是只乙個人單打獨鬥的專案,所以專案負責人最好不要介入到模組設計和編碼活動中,而是應該把重點放在進度的控制和質量的保證上面。由於專案負責人一般有較強的技術能力,所以專案負責人可以承擔專案中要使用的一些新技術的研究,專案中一些疑難問題的解決等相關工作。專案負責人還應該有計畫的設計開發人員的**進行review,對發現的規範性,效能,復用差等問題跟專案成員確認,並寫入到專案開發規範中。
方案二專案負責人和開發負責人分離
在這種方案下專案負責人和開發負責人在軟體需求和架構上的工作是重疊的。這兩個崗位的人員共同來確認專案的總體方案和架構。專案負責人的重點在專案管理和與客戶交流溝通上,只有確認清楚第一手的使用者需求,才能開發出使用者滿意度高的軟體。對於很多小型專案往往是使用者需求都沒有搞清楚就開工,專案成員完全憑藉著自己的感覺在做系統,過程中又不注意與使用者及時反饋和迭代,導致開發出完全不能使用的系統;開發負責人的重點是對整個開發過程負責,包括對專案經理確認的進度目標進行任務的進一步分解,安排後續的增量和迭代計畫。方案二的重點是第一次解放專案經理,架構的核心移動到了開發負責人,而專案經理僅僅是參與討論和評審。而單獨剝離出開發負責人後,可以更好的對開發過程進行跟蹤和協調,開發負責人重點放在專案內部,而避免過多去和外部干係人溝通和協調。
方案三測試的專職化
對於專案團隊發展到5-10的時候,專案中的測試工作必須專職化的由測試人員來完成。一般測試人員的配置比例為4-6個開發人員需要配置一名專職化的測試人員。測試人員站在第三方和模擬使用者角度來進行系統的測試,可以更好的發現系統的bug和相關問題,有效的保證系統的質量。
方案三中專案經理工作進一步清晰,專案經理不在承擔軟體需求和架構的相關工作。而重點放在專案內外的溝通協調和整個專案進度計畫的安排上。這個時候專案中的設計負責人對整個系統的總體設計方案和架構負責,而且設計負責人也將不在參與具體的功能模組的設計和開發工作。設計負責人的重點轉化到的軟體需求的開發和總體設計上面(如涉及到rup中的用例建模,用例分析,架構設計,元件介面復用)。
方案四專案經理和需求角色分離
由於專案規模的擴大,專案的配置項更加複雜,專案也需要同時起開發,測試,整合和bugfix等多個分支。因此需要設定專門的配置管理員來進行專案的配置管理。
對於專案同時需要開發新版本,又需要對已經發布的維護版本進行功能改進的時候,專案中要考慮設定專門的維護人員。由維護人員來完成專案小功能的改進和bug的修復。這樣新版本設計開發人員可以更專注的進行新功能的開發。
(全文完)
codeproject
普通軟體專案開發過程規範(四) 控制和結束階段
控制階段 圖 6 1 控制階段的任務和工件 開發期間要對風險進行監控,定期檢查 更新和發布 風險列表 1 評審 評審是質量保證的重要環節,原則上每個重要的工作任務或階段結束前都必須經過評審,如 方案評審 計畫評審 需求評審 設計評審和 評審等,工作是否被通過 是否需要修改或重做均由評審結果決定,評審...
新老軟體系統專案開發過程
我們的軟體專案,有一部分是公升級性的專案,專案的最終目標是新系統代替老系統執行,往往,這種新系統的開發要比乙個新生系統的開發要複雜一些。在開發方面,新系統的功能是建立在老系統功能和在此之上甲方所提出的新功能的集合,在需求分析階段,可能遇到的難點有三,一是甲方可能提出新系統己經支援的功能 二是甲方會預...
專案開發過程
專案開發過程 在我以往的專案經歷當中,整個專案的開發過程包括如下階段 1 需求調研階段 這個環節是最重要的,良好的溝通才會知道客戶到底想要什麼。2 文件編寫階段 分為需求分析文件 概要設計文件 詳細設計文件三個部分 3 原型階段 demo 如果小專案文件寫以不寫,但這個原型一定要有 4 資料建模階段...