Visual Studio 2005 Team System:軟體專案管理

myattitude發表於2008-07-30

 

簡介

Visual Studio Project Management Tools 可以實現更好的計劃、安排、協作、溝通、報告和流程控制。Visual Studio Project Management Tools 與 Visual Studio 整合開發環境 (IDE)、Microsoft Office、Windows SharePoint Services 和 SQL Server 2005 Reporting Services 相整合。Visual Studio Project Management Tools 允許專案資料和流程具有非侵入性的 (non-intrusive) 可見性和規範,從而使 IT 部門管理專案的方式產生變革。

 

軟體設計專案管理的難題

專案經理或主管在構建軟體專案時遇到了大量的問題。

轉換工作中的缺口

客戶需求與開發團隊計劃的工作之間存在著缺口。安排的工作與實際工作之間也存在著缺口。重要資訊在這些缺口中丟失。需求沒有完全滿足,而完成的工作並不影響客戶需求。需求管理工具試圖解決這一問題,方法是提供這些缺口的連結以形成可跟蹤矩陣。這些連結很快就變得過時且毫無意義,並給專案主管帶來很大的維護負擔。

團隊協作和溝通很差

由於存在完全不同的文件,而且它們不一定是最新的或與實際工作進展同步,因此團隊的協作和溝通受到了阻礙。專案主管必須花時間收集來自不同計劃和列表的狀態,而團隊成員必須花時間傳送狀態報告並更新文件。這影響了團隊工作效率,特別是當團隊成員為了提供其工作狀態而中斷時。團隊工作流的效率低下,其原因是團隊可能要等待工作完成後他們才能開始,但他們缺少一種可靠的機制來確切獲悉工作已完成。有時,僅僅在團隊成員之間傳遞工作、跟蹤問題或收集狀態就用掉了工作的全部時間。

更正系統問題困難

即使專案主管發現必須進行專案過程更改時,在專案團隊中實現適當的更改也是非常困難的。進行流程更改對團隊的工作效率有很大的影響。團隊成員要完成工作就必須不怕麻煩地查詢流程資訊或正確的文件模板。

對於分配到包含不同流程的多個專案的團隊成員,查詢正確的流程資訊甚至會更加困難。為了決定應用哪些策略和規則,團隊成員必須記住使用哪個流程。因此,團隊成員對流程產生了厭惡感,而且不理會流程的更改,從而削弱了專案主管的作用。

跟蹤,但沒有管理

獲得專案的重要衡量標準對於跟蹤狀態和做出決策十分重要。由工具生成的大部分衡量標準沒有以統一的方式進行儲存或訪問。建立報告需要手動將資訊從不同的工具剪下和貼上到一種報告格式中,變得費時又費力。

因此,專案主管需要花非常多的時間從眾多不同的工具收集衡量標準,以使專案計劃保持最新狀態並通知專案團隊。通常,專案主管會身陷於跟蹤細節,而沒有進行專案風險分析和專案過程修正。

 

我們的解決方案

Visual Studio Project Management Tools 旨在根據專案經理已知的軟體來解決這些問題:Microsoft Excel、Microsoft Project、Microsoft Word 和 Windows SharePoint Services。

共享資料和自定義檢視

專案主管將需求分解為元件或方案,進而分解成任務,分配給開發團隊,因此 Visual Studio Project Management Tools 可以沿著這個路線捕獲檢視。這些檢視儲存工作產品(例如,功能規範、風險評估和專案計劃)之間的關係。檢視通過推理所建立的關係來提供上下文資訊,這些資訊在所有不同的檢視之間共享,因此任何檢視中的更新都會反映到所有專案工作產品上。

專案主管可以有很大的靈活性來組織他們的工作,而不會強制他們只用一個專案層次檢視。專案主管可以根據功能、方案和元件在專案中建立檢視,方法是在不同的檢視中相應地選擇和組織相同的資料。專案主管可以在專案的元素之間建立多對多的關係,這種關係可以反映確切的專案狀態,而不會在無意義的可跟蹤矩陣中徒勞無獲。

在 Microsoft Excel 中構建工作項列表

專案經理通常使用 Microsoft Excel 來儲存問題列表、工作項,甚至安排工作。Visual Studio Project Management Tools 提供一個 Microsoft Excel 載入項,將電子表格中的列表物件連線到工作項資料庫中。工作項資料庫是一個儲存所有工作項(例如,錯誤、風險和任務)的地方。

考慮這種情況:專案經理建立一個電子表格,它包含最主要的 10 個風險。隨著專案經理更改這些風險的分配、優先順序和其他欄位,團隊成員會在他們的工作項佇列中接收到更新的資訊。專案經理不再需要查詢工作項的狀態,而且可以將這些資訊從工作項資料庫直接“拉”到電子表格中。

建立工作項列表有兩種方式。通過 Portfolio Explorer(Visual Studio IDE 中的一個專案檢視),專案經理可以選擇一個工作項查詢或文件節點,並建立一個新的資料繫結電子表格。這個新的電子表格將包含一個工作項列表,該列表填充了從查詢獲得的資料。

專案經理還可以從 Excel 中建立工作項列表,方法是使用載入項選擇一個專案並匯入工作項。

使用 Microsoft Project 維護專案計劃

專案經理可以使用 Microsoft Project 來佈局任務依賴項、載入平衡資源和估計結束日期。Visual Studio Project Management Tools 提供了一個 Microsoft Project 載入項,它可以將專案計劃和專案團隊資料連線在一起。在專案計劃中安排工作之後,專案經理可以將資料釋出到工作項資料庫中。新的工作項會因為 Microsoft Project 中進行的任務分配而產生,而且任務會顯示在相應開發人員的工作項佇列中。當開發人員解決了問題並將新狀態反映到工作項資料庫中時,專案經理只需重新整理專案計劃即可獲得最新資訊。專案經理現在可以有效地使用 Microsoft Project 檢視來跟蹤任務狀態,而無需召開狀態會議和手動更新他們的專案計劃。

實際上,專案主管可以監視幾個不同專案計劃中的任務狀態。例如,專案主管可能想要按需求檢視專案狀態。而開發主管可能想要按元件檢視專案狀態。這兩個人可以承擔同一組任務,並將其組織在兩個不同的專案計劃中。當工作項中的狀態更新時,開發主管可以檢視開發專案計劃中的元件進度,而專案經理可以檢視需求專案計劃中的需求進度。

可以按照與建立資料繫結 Microsoft Excel 電子表格的相同方式建立資料繫結專案計劃:通過 Portfolio Explorer 中的查詢、Portfolio Explorer 中的文件節點建立,或者從任何 .MPP 檔案中建立。

Portfolio Explorer

Visual Studio Project Management Tools 中的軟體專案稱為公文包專案。公文包專案是一箇中心概念,它將團隊建立特定軟體技術或產品的成果存放在一起。當專案經理建立新的公文包專案時,有幾個關鍵的配置可以用來集中公文包專案中的團隊成果。可以建立一個團隊專案 Web 站點來包含文件模板和常用報告。可以建立一個工作項資料庫來跟蹤專案中的所有成果。可以安裝一個方法模板來確定所有工作成果的規則、策略、安全組和查詢。同時,還可以選擇建立一個原始碼分支來進行原始碼管理。

Visual Studio Project Management Tools 的特性之一 Portfolio Explorer,它可以從 Visual Studio IDE 中輕鬆導航到工作產品(例如,功能規範、風險評估和專案計劃)。團隊成員可以檢視有關產品版本的資訊、進入到原始碼、查詢分配給他們的任務、檢視整體專案狀態、定位文件、檢視報告和建立與專案有關的工作產品。

專案站點

專案站點儲存工作產品並對其進行版本控制,它是由 Windows SharePoint Services (WSS) 宿主的團隊 Web 站點。可以通過 Portfolio Explorer 使用的相同工作產品也可以通過專案站點作為專案參與者的控制板使用。實際上,如果您在 Portfolio Explorer 中建立新的文件節點,則會在專案站點中建立新的文件資料夾。

專案站點附帶了預填充的文件模板、常用報告和專案流程的 Web 版。專案站點也包含一個用於掛接 RSS Feed 的 Web 部件,以及用於檢視報告的 Microsoft SQL Server 2005 Web 部件。

因為專案站點是由 WSS 宿主的,所以該專案站點還可以通過其他 SharePoint Web 部件(例如,通知或事件)進行擴充套件。這樣,團隊就能夠以任何最適合其專案的外觀和風格來自定義他們的專案站點。

團隊溝通和協作

工作項資料庫

Visual Studio Project Management Tools 維護了一個工作項資料庫,它儲存每個公文包專案的工作項。工作項是一個可以通過特定工作流程分配和跟蹤的工作單元。例如,錯誤工作項跟蹤工作以解決軟體產品中的可疑問題。錯誤的典型工作流是活動、待定、解決和關閉。現成可用的工作項有錯誤、風險、需求、方案、功能和任務。其他工作項型別則可以隨時建立。

工作項與 Visual Studio 整合在一起,因此開發人員不用離開 Visual Studio IDE 就可以查詢分配給他(或她)的所有錯誤。測試人員也可以在 Visual Studio IDE 中建立一個新的錯誤。因為工作項資料庫是集中式的,所以工作的狀態始終是最新的。

將程式碼簽入與工作項相關聯

另一個可以改進協作的 Visual Studio Project Management Tools 功能是,支援將程式碼簽入與工作項相關聯。常見的情形是開發人員修復錯誤。開發人員讀取錯誤工作項,簽出程式碼,進行修復,然後將程式碼簽入。

Visual Studio Project Management Tools 使用“Pending Check-in”視窗來控制程式碼簽入。當開發人員簽入程式碼時,他或她可以將簽入與工作項相關聯(在本例中為已修復的錯誤)。開發人員不需要使用另一個工具來更新錯誤狀態。此外,還可以設定一個策略來強制將所有的程式碼簽入與工作項相關聯。這可以確保在沒有與分配的工作相關聯的程式碼的情況下,不會進行程式碼開發。

管理軟體流程

Visual Studio Project Management Tools 使軟體流程成為軟體專案開發工作的一個整合部分。通過將軟體流程整合到工具中,可以在團隊成員之間自動進行處理和交接。組成一個流程的元素有:文件模板、工作項和工作流、報告、安全組、簽入策略和流程指導。這些元素打包到一個可在組織中推廣和標準化的方法模板中。

每個公文包專案都基於一個方法模板。即使專案已經啟動,也可以通過修改方法模板來輕鬆地向團隊推廣流程調優。

現成的方法模板

Visual Studio Project Management Tools 包含基於 Microsoft Solutions Framework (MSF) 的方法模板。MSF 是一個用於技術專案的精確且符合規定的方法,它基於來自 Microsoft 的一套定義好的原則、模型、規定、概念、指導和公認的做法。有兩個現成可用的方法模板:MSF Agile 和 MSF Formal。MSF Agile 是一個用於小型或非正式軟體專案的輕量級流程,而 MSF Formal 是為較成熟的軟體專案設計的。專案經理可以在這些方法模板公認的做法中進行挑選,以便管理他們專案中的流程。

流程指導

每個方法模板的流程指導都與 Visual Studio 幫助系統無縫整合在一起。當某個團隊成員需要幫助時,他們就可以獲得針對手頭任務的上下文的流程指導。例如,如果一個開發人員在一個使用 MSF Agile 方法模板的錯誤窗體中按 F1,系統就會顯示幫助資訊來描述特定於該 MSF Agile 錯誤窗體的欄位,以及針對該錯誤要遵循的工作流。流程指導也與其他幫助主題一起進行交叉引用,例如,使用工具的過程和概念性的資訊。此外,流程指導的幫助原始碼也包括在內,因此組織可以通過新增新主題、修改步驟和進行任何必要的更改來對其進行自定義,以便支援他們的特定流程。

文件模板

方法模板包括團隊在專案中使用的文件模板。文件模板整合在幾個工具區域中。團隊成員可以通過專案站點和 Portfolio Explorer 使用文件模板。文件模板的例子有規範、風險和專案計劃。可以隨時新增或建立新的文件模板。

工作項和工作流

專案中使用哪些工作項型別由方法模板確定。每個工作項都有自己的一套欄位和規則,它們可以確定該工作項的工作流程,以及團隊成員如何分配和執行任務。工作項跨 Portfolio Explorer、Microsoft Project 和 Microsoft Excel 整合。此外,沒有 Visual Studio 的團隊成員也可以在 Intranet 上通過瀏覽器與處理工作項。Visual Studio Project Management Tools 中包含的工作項型別有錯誤、風險、任務、方案、功能和需求。如果需要,可以隨時新增或建立新的工作項型別。

退出條件

退出條件 (Exit Criteria) 是一些特殊的任務,它們在退出特定活動或重要事件之前必須完成。例如,只有當名為 Project Plan Updated and Approved 的退出條件完成之後,穩定性活動才能視為完成。最初使用的退出條件由方法模板確定,Microsoft Excel 載入項提供一個特定檢視,專案經理可以通過該檢視檢視和更新專案中的所有退出條件。

報告

方法模板還確定專案中使用的報告。報告列表衡量標準描述專案的狀態和執行狀況。它們可以通過 Portfolio Explorer 和專案站點進行訪問,如果需要,還可以隨時新增或建立新的報告。

安全組

專案經理不需要 Windows 管理員身份就可以建立安全組。Visual Studio Project Management Tools 將組和許可權與專案站點、工作項資料庫和其他資料庫同步。專案經理可以控制誰有權檢視或操作專案中的報告、工作產品和工作項。

簽入策略

最後,方法模板為公文包專案配置簽入策略。例如,一種策略可以要求開發人員在簽入之前始終對其程式碼執行靜態分析。這種級別的控制是一種很好的控制程式碼質量和稽核的方式。

自定義軟體流程

專案經理不會僅限於使用 Visual Studio Project Management Tools 附帶的方法模板,因為他們可以安裝由第三方提供的方法模板。另外,專案經理或專案管理辦公室 (PMO) 可以建立自定義方法模板。

作為自定義方法的一個例子,我們考慮這樣的情形:一個名叫 Carol 的專案經理決定實現特定控制,以便更好地遵循 Sarbanes-Oxley 規定。她決定只允許一個特定的安全組將程式碼簽入原始碼樹中的資金節點。她還決定讓程式碼的更改必須與一個工作項相關聯,幷包含簽入說明。

Carol 可以通過 Portfolio Explorer 管理公文包專案設定。她建立了一個新的安全組,這個安全組具有將程式碼簽入資金節點的許可權。她還將其團隊的特定成員新增到這個新安全組中。該組外的任何人如果試圖將程式碼簽入該資金節點,其訪問將被拒絕。

接下來,Carol 再次使用公文包專案設定修改原始碼控制策略。她啟用了一個簽入策略,要求每次更改設定時都提交簽入備註。她還配置了一個自定義 Sarbanes-Oxley 簽入策略載入項,要求每次簽入都與一個工作項相關聯。

之後,她就可以使用 Visual Studio Project Management Tools 報告功能來檢視報告:誰簽入某個元件程式碼、做了什麼工作(相關的工作項)以及簽入備註(原因)。記錄曾接觸該元件的每個人的完整稽核日誌有助於 Carol 遵循 Sarbanes-Oxley 規定。所有這些更改都可以輕鬆地通過整合管理使用者介面來實現。

通過 Rich Metrics Reporting 進行管理

Visual Studio Project Management Tools 通過整合 Microsoft SQL Server 2005 Reporting Services 以及提供現成的報告,來提供各種報告功能。Visual Studio 2005 Team System 的所有工具的全部衡量標準都記錄在一箇中央資料倉儲中。這些衡量標準包括有關工作項、簽入的資訊以及其他專案的相關資訊。通過使用報告服務,專案經理不再需要花時間交叉引用各種工具的衡量標準了。專案經理還可以得到更多的資料,這提供了檢視專案執行狀況的新角度。

現成的報告

預定義的報告是通過方法模板提供的,並可以通過專案站點和 Portfolio Explorer 訪問。這些報告基於業界中公認的做法,以及 Microsoft 內部團隊用於管理成功專案的實際報告。

下面的列表是 Visual Studio Project Management Tools 中的一些報告功能示例。這些工具的一個強大功能是,可以輕鬆地將來自多個工具的衡量標準整合到一個報告中。

  • 程式碼質量報告:該報告使用錯誤、測試失敗和程式碼變動來描述程式碼的質量。

  • 計劃進度報告:該報告通過檢視任務完成和任務延遲情況來描述專案安排的進展情況。

  • 計劃穩定性報告:該報告通過檢視一些更改(例如,需求和安排等)來描述一個專案的穩定性。

  • 測試合理性報告:該報告通過檢視測試執行細節來幫助評估測試的有效性。

與 Microsoft SQL Server 2005 Reporting Services 相整合

因為 Visual Studio Project Management Tools 報告使用 Microsoft SQL Server 2005 Reporting Services,所以您可以分析各種格式的資料。基本報告以 HTML 格式顯示。然而,您也可以使用 Microsoft Excel Pivot Tables 來檢視資料,以便了解感興趣的特定區域。提供的 Microsoft Excel 模板可以幫助您連線到資料倉儲和分析資料。

最後,您始終可以直接使用 Microsoft SQL Server 2005 Reporting Services 分析專案資料。

小結

Visual Studio 2005 Team System 提供一系列基於專案經理已知軟體的專案管理工具,這些軟體包括:Microsoft Excel、Microsoft Project、Microsoft Word 和 Windows SharePoint Services。通過與 Microsoft Office 整合,專案經理不再需要將來自這些應用程式的資料對映為開發團隊使用的資料。專案站點提供控制板檢視,而且給參與者提供了瀏覽專案資料的功能。Portfolio Explorer 將工作產品整合到 Visual Studio IDE,以便於團隊能夠有效地訪問。豐富的報告可以提供從團隊的整個自然工作流中收集的衡量標準。基於業界公認的做法的可自定義專案流程驅動了該生命週期。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14780914/viewspace-413590/,如需轉載,請註明出處,否則將追究法律責任。

相關文章