規劃 Team 專案

更新:2007 年 11 月

在建立 Team 專案之前,您應該謹慎規劃專案的範圍,並考量 Team 專案在未來修改、成長及維護的途徑。本主題將顯示您必須回答的問題清單,以判斷您是否想要建立新的 Team 專案,還是擴充現有的專案。這個問題清單可以當做您慎重考慮的起點,但並不是要詳盡定義或限定所有的軟體開發專案;這些問題可分成四大組:

  • 有關目前的 Team 專案和未來工作的問題

  • 關於 Team Foundation Server 容量和效能的問題

  • 關於組織 Team 專案的結構或階層架構的問題

  • 有關偏好的軟體開發流程的問題

如果您在大多數的問題中回答「是」,我們建議您最好建立新的 Team 專案。

下列圖表會將問題顯示為決策樹,並且協助您視覺化各種問題彼此相關的方式。

規劃 Team 專案

有關目前的 Team 專案和未來工作的問題

在回答下列問題時,您可能要思考目前 Team 專案的情況,以及考量是否在將來的工作中要繼續維持相同的情況;您可能也會想要判斷 Team 專案中是否有足夠的容量來處理將來的工作。

下列圖表會將問題顯示為決策樹,並且協助您視覺化各種問題彼此相關的方式。

規劃 Team 專案區段 2

這是新安裝的 Team Foundation Server 嗎?

如果您是第一次安裝 Team Foundation Server,必須先建立新的 Team 專案之後,才可以使用 Team Foundation 的任何功能或工具。如果原來就已經有安裝這個產品,您可能會發現伺服器上已經有 Team 專案存在,而您應該要評估該專案對您未來工作的適當性與否。

您需要新的小組入口網站嗎?

檢閱目前小組入口網站上的內容和焦點,判斷入口網站的內容和焦點是否仍然與未來的工作相關。如果您想要建立另一個小組入口網站,使其特別著重於未來的工作,您必須建立新的 Team 專案和小組入口網站;我們強烈建議您對每一個 Team 專案只使用一個小組入口網站。

您需要讓不同的人有不同的權限嗎?

請檢閱所有 Team 專案成員的工作分派和安全性權限,以判斷下列事項:

  • 目前的 Team 專案成員將在未來的工作中扮演多個角色。

  • 相同的人在不同的專案部分中將需要不同的使用權限。

  • 將有不同的人與目前的小組成員扮演相同的角色。

如果有具備不同權限的不同人正在處理此專案,您必須建立新的 Team 專案。

您想要使用不同的簽入原則嗎?

檢閱目前 Team 專案的目前簽入原則,以判斷這些簽入原則是否仍適用於將來的工作。如果您想要在將來的工作中使用不同的簽入原則,必須建立新的 Team 專案及定義新的簽入原則;Team Foundation Server 在每一個 Team 專案上只支援一組簽入原則的使用。

您想要使用不同的設定嗎?

當您獲得處理 Team 專案的經驗後,您可能會決定變更專案設定;您可以變更現有 Team 專案中的某些設定,但是其餘的設定則只能透過可延續工作之新 Team 專案的建立來加以變更。下列問題將協助您考量目前設定的適當與否。

您想要使用不同的流程範本嗎?

識別目前 Team 專案中所用的流程範本及流程指引 (如果適用的話),以判斷此範本是否仍適用於將來的工作。如果您想要在將來的工作中使用不同的流程範本,您必須使用該不同範本建立新的 Team 專案;Team Foundation Server 在每一個 Team 專案上只支援一個流程範本的使用。在 Team 專案開始之後,您可以根據 Team 專案以手動方式自訂所用的流程範本;但是,除非這些自訂的變更有儲存到儲存於 Team Foundation 伺服器上的流程範本中,否則這些變更將不會出現在以該範本為根據的任何新 Team 專案中。

您想要使用不同的工作項目類型嗎?

識別目前的 Team 專案中所用的工作項目類型,以判斷這些工作項目類型是否仍適用於將來的工作。如果您想要使用不同的工作項目類型或是在不同的內容上使用相同的工作項目類型,必須建立新的 Team 專案及定義新的工作項目類型;Team Foundation Server 在每一個 Team 專案上只支援一組工作項目類型的使用。

您想要實驗流程或其他 Team 專案設定嗎?

如果您是 Team Foundation Server 的新手,或是對於改善小組的運作有興趣,您可能會想要實驗替代的工作流程、類別階層架構、建置流程、原則等;在進行這些實驗時,請建立另一個 Team 專案。

您想要使用主要的 .mpp 或 .xls 檔案來進行管理嗎?

請檢閱您用來管理小組的資訊和工具,特別是當您要管理一個以上的 Team 專案時。如果您使用 Microsoft Project 或 Microsoft Excel 做為管理 Team 專案的主要工具,而且想要追蹤相同的主要 .mpp 或 .xls 檔內的所有專案活動,則應該繼續將更多的反覆項目加入到專案中,而不要建立新的 Team 專案。Team Foundation Server 不支援使用 Microsoft Project 或 Microsoft Excel 來顯示多個 Team 專案之間所共用的工作項目。換句話說,如果您管理兩個或兩個以上的 Team 專案,而且有一些工作項目與一個以上的 Team 專案有關聯,您將無法在 Microsoft Project 或 Microsoft Excel 中顯示這些工作項目。您必須改用 Team Foundation Server 中的一個其他報告工具來檢視及管理這些共用的工作項目。

專案中是否有 10 百萬個以上的版本化工作項目?

請算出目前 Team 專案中的工作項目總數,並判斷您是否已經使用了一半以上的 Team Foundation Server 容量;Team Foundation Server 在單一個 Team 專案中最多可支援 20 百萬個版本化的工作項目。如果您已經使用了一半以上的容量,可能會在完成新的 Team 專案之前就耗盡空間。此外,工作項目的複雜性可能會對 Team Foundation Server 效能造成不良影響。

您想要以手動方式移動專案中的所有作用中工作項目嗎?

算出目前 Team 專案中的作用中工作項目的數目。如果您要建立新的 Team 專案,必須從目前的專案將這些工作項目複製到新的 Team 專案;Team Foundation Server 不支援將一個專案中的工作項目大量複製或移動到另一個專案。假設將一個 Team 專案中的一個工作項目複製及貼到另一個專案需要花 30 秒的時間,則複製 500 個工作項目將需要花上 250 分鐘或是連續 4 小時的工作時間。

另外,您也可以使用 Microsoft Excel 將一個 Team 專案中的工作項目大量複製到另一個專案。雖然大量複製會複製目前在工作項目中的資訊,但是並不會複製工作項目記錄、附件及新 Team 專案的連結。如需使用 Microsoft Excel 大量複製工作項目的詳細資訊,請參閱在 Microsoft Excel 和 Microsoft Project 中使用工作項目

您必須決定擁有新 Team 專案的優點是否勝過複製工作項目所需的成本。

軟體功能是否有顯著的變更?

如果將來的工作引進了新的技術或是有大幅變動的新軟體功能,您可能會想要建立新的 Team 專案,因為新的技術或功能可能需要極為不同的工作流程、測試、建置指令碼,以及其他可能需要對目前的流程範本或流程指引進行大幅修改的項目。

關於 Team Foundation Server 的容量和效能的問題

在回答下列問題時,您可能需要思考 Team Foundation 伺服器的情況,這部伺服器就是儲存目前的 Team 專案及未來工作所在的位置;您可能也想要判斷伺服器中是否有足夠的容量和效能來處理將來的工作量。

下列圖表會將問題顯示為決策樹,並且協助您視覺化各種問題彼此相關的方式。

規劃 Team 專案區段 3

伺服器上是否有任何效能問題?

當 Team Foundation Server 不斷累積工作項目、原始程式碼、文件和其他成本時,伺服器在傳回查詢、簽入檔案或建置軟體專案時,可能需要越來越多的時間。如果這些動作所花的時間要比您第一次使用 Team Foundation Server 開始執行的時間還要長,此時間的增量可能表示伺服器的效能變慢,因為 Team Foundation 伺服器上有許多 Team 專案;當伺服器上的 Team 專案越多時,伺服器的效能將會越慢。如果伺服器的效能已經是一個問題,請考慮升級伺服器硬體,並繼續進行目前的 Team 專案,或是在另一部伺服器上建立新的 Team 專案。

您是否已升級伺服器?

如果查詢、簽入或建置效能已經是一個問題,請聯絡 Team Foundation Server 管理員來檢閱已經完成或是將來的工作期間計劃要進行的任何伺服器硬體升級。如果尚未升級伺服器硬體,則升級可能會將效能提升到可接受的等級;如果已排定要進行升級,但是尚未完成,您可能需要建立新的 Team 專案,而不要在現有的專案中加入反覆項目。

文件庫中是否有 1 百萬份以上的文件?

請連絡 Team Foundation Server 系統管理員並檢閱儲存在 Team Foundation 伺服器上的文件數目。Windows SharePoint Services 在伺服器的文件庫中最多可支援 2 百萬份文件。當文件數目接近上限時,伺服器的效能會變慢,而您的小組最後也將會耗盡用來儲存文件的空間。如果您使用了一半以上的伺服器容量,我們建議您最好建立新的 Team Foundation 伺服器,並在新的伺服器上建立新的 Team 專案。如需詳細資訊,請參閱<Windows SharePoint Services 的容量規劃>(英文) (https://office.microsoft.com/en-us/assistance/HA011607741033.aspx)。

注意事項:

當您規劃專案的容量時,請考量之後無法將一部伺服器上的 Team 專案移到另一部伺服器的情況;Team 專案可以在另一部伺服器上備份及還原,但是不支援將一部 Team Foundation Server 伺服器上的 Team 專案移到另一部伺服器。

Team Foundation Server 上是否有超過 200 個 Team 專案?

請連絡 Team Foundation Server 系統管理員並檢閱 Team Foundation 伺服器上的 Team 專案數目。如果您使用 MSF for Agile Software Development 流程範本來進行專案建立,Team Foundation Server 最多可支援五百 (500) 個 Team 專案。如果您使用 MSF for CMMI Process Improvement 流程範本來進行專案建立,則 Team Foundation Server 最多可支援二百五十 (250) 個 Team 專案。當 Team 專案數目接近上限時,伺服器的效能會變慢,而您的小組最後也將會耗盡用來儲存 Team 專案的空間。如果您使用了一半以上的伺服器容量,請考慮安裝新的 Team Foundation 伺服器,並在新的伺服器上安裝新的 Team 專案。如需詳細資訊,請參閱 Team Foundation Server 規劃架構藍圖

Team Foundation Server 上是否有超過 1000 位使用者?

請連絡 Team Foundation Server 系統管理員並檢閱 Team Foundation 伺服器上唯一使用者的數目。Team Foundation Server 在單一伺服器上最多可支援 2000 位使用者 (端視伺服器硬體而定)。當使用者數目接近上限時,伺服器的效能會變慢,而您的小組最後也將會耗盡用來加入唯一使用者的空間。如果您使用了一半以上的伺服器容量,我們建議您最好建立新的 Team Foundation Server 伺服器,並在新的伺服器上建立新的 Team 專案。如需詳細資訊,請參閱 Team System 的伺服器需求

您是否想要保留 Team 專案成品一段時間,以便日後進行稽核或記錄檢閱?

如果您想要定期記錄 Team 專案成品 (例如,原始程式碼、工作項目、文件或報告),並防止該記錄被人有意或無意地變更,您可能需要在重大的反覆項目、里程碑或發行之後,建立新的 Team 專案。為了保護記錄,您可以建立新的 Team 專案、分支現有的原始碼結構、將其他物件複製到新的 Team 專案,然後移除所有可在原始專案中進行變更的使用權限。

在規劃流程的這個時間點,您應該決定是否要建立新的 Team 專案,還是繼續在將來的工作中使用現有的 Team 專案。如果您決定要建立新的 Team 專案,則在您繼續回答下一組問題之前,也應該要決定以下事項:

  • 您對於建立及命名軟體開發專案的長期計劃 (例如五年)。

  • 新 Team 專案的概念性界限,例如,包括或不包括的事情種類。

因為這兩個決定最有可能根據 Team Foundation 以外的因素,而且也是組織所特有的,所以本主題將不做進一步的討論。

關於組織 Team 專案的結構或階層架構的問題

在回答下列問題時,您可能需要思考目前 Team 專案的組織方式,以及這樣的組織方式對於未來的工作是否為最佳方式。您也可能需要決定,未來工作的組織要如何回應原始程式碼的組織以及組織中的其餘部分。

下列圖表會將問題顯示為決策樹,並且協助您視覺化各種問題彼此相關的方式。

規劃 Team 專案區段 4

此結構是否受外部群組的影響?

您的組織可能已經有軟體專案的標準結構,這是以要求軟體的事業處、工作的資金來源、重大的組織事件,或是軟體開發週期以外的某個其他因素為根據。請設定 Team 專案的區域和反覆項目階層架構,使其符合必要的結構。

小組是否要建立產品?

如果將來工作的焦點主要是建立具有清楚識別的獨立產品,您可以根據產品的功能來組織原始程式碼、反覆項目和區域;每一個新的產品都應該是個別的 Team 專案。

您要建立新的版本嗎?

如果將來工作的焦點主要是建立現有產品的新版本,您可以根據該軟體版本來組織原始程式碼、反覆項目和區域;每一個新的版本都應該是個別的 Team 專案。

您有確定的開始和結束日期嗎?

如果將來工作的焦點主要是確定的開始和結束日期,您可以根據軟體版本來進行組織;每一組主要的開始和結束日期都應該是個別的 Team 專案。

您擔心所累積的項目嗎?

當軟體的開發工作進行時,Team 專案可能會不斷累積工作項目、文件、報告、建置指令碼,以及其他 Team 專案項目和工作產品;但是,監視及管理這些項目可能會耗費不少的儲存與人力成本。如果您擔心 Team 專案項目的不斷累積,而想要盡快封存或刪除這些項目,您可以根據軟體版本來進行組織;每一個主要版本都應該是個別的 Team 專案。

您想要根據小組來儲存原始程式碼嗎?

如果您寧願讓整個 Team 專案有單一的原始程式碼專案,而不是根據產品、版本或事業處來區分個別原始程式碼專案,您可以組織區域和反覆項目階層架構,使其符合整個軟體開發小組的組織。

您是否只要維護軟體?

如果將來工作的焦點主要是維護軟體或組織基礎結構,而不是在組織外散佈,您可以組織區域和反覆項目階層架構,使其符合整個軟體開發小組的組織。

有關偏好的軟體開發流程的問題

在回答下列問題時,您可能需要思考在完成將來的工作時所要使用的軟體開發流程;您可能也需要判斷是否有要求的流程或是流程改善的優先順序。

下列圖表會將問題顯示為決策樹,並且協助您視覺化各種問題彼此相關的方式。

規劃 Team 專案區段 5

法令或合約是否要求您使用 CMMI?

在某些情況下,您將無法選擇用來建立新 Team 專案的流程範本;例如,美國聯邦法令可能要求一定要使用 CMMI 流程來開發軟體,因此,在您建立 Team 專案時,必須選擇 MSF for CMMI Process Improvement 範本;或者,提供資金的機構可能會要求您使用 CMMI。

您需要更大量的角色嗎?

如果將來的工作需要許多小組成員角色,您應該判斷 MSF for CMMI Process Improvement 範本是否適合。例如,您可能剛使用 MSF for Agile Software Development 範本完成 Team 專案,而且發現小組需要的角色比該範本所隨附的下列標準角色還要多:

  • 商務分析師

  • 專案管理人員

  • 架構設計人員

  • 程式開發人員

  • 軟體測試人員

  • 發行管理人員

MSF for CMMI Process Improvement 範本隨附了下列一組更複雜的標準角色:

  • 專案管理人員

  • 贊助人員

  • 架構設計人員

  • 主題專家

  • 程式開發人員

  • 開發管理人員

  • 組建工程師

  • 軟體測試人員

  • 測試管理員

  • 稽核員

  • 服務品質專員

  • 發行管理人員

  • IPM 主管人員

  • 使用者經驗架構設計人員

  • 使用者教育專員

  • 產品管理人員

  • 商務分析師

是否有外部的團體對流程改良提出建議?

如果您的組織對於流程改良有些顧慮,可能會仰賴組織內或組織外的特殊團體來檢閱目前的工作流程與商務處理流程,並對改良方式提出建議。如果有利用特殊團體,則在建立新的 Team 專案時,要使用 MSF for CMMI Process Improvement 範本。

您目前是否有記錄您的流程?

如果您的組織對於流程有些顧慮,可能會仰賴組織內或組織外的特殊團體來檢閱目前的工作流程與商務處理流程,並對改良方式提出建議。如果有利用特殊團體,則在建立新的 Team 專案時,要使用 MSF for CMMI Process Improvement 範本。

是否有適當的協力廠商範本?

您的組織可能已經採用了協力廠商所提供的流程範本;如果您已經選擇某個範本,則在建立新的 Team 專案時,請使用該協力廠商範本。

您對於目前的流程感到滿意嗎?

如果您對於目前的工作流程感到滿意,可能不想要變更或使用正式的範本;如果原來的流程很有效,就繼續使用它。

專案的生命週期是否很短?

如果 Team 專案的生命週期相對較短,也就是少於 90 天,您可能不想要和正式流程 (如 CMMI) 一樣有額外的經常費,在此情況下,請使用 MSF for Agile Software Development 範本。

注意事項:

當您規劃專案的容量時,請考量之後無法將一部伺服器上的 Team 專案移到另一部伺服器的情況;Team 專案可以在另一部伺服器上備份及還原,但是不支援將一部 Team Foundation Server 伺服器上的 Team 專案移到另一部伺服器。

請參閱

工作

逐步解說:建立新的 Team 專案

逐步解說:從現有 Team 專案建立新的 Team 專案

概念

建立 Team 專案

其他資源

建立和管理 Team 專案