Visual Studio 2010 Ultimate敏捷功能特性(上)

隨着軟件開發日趨國際化,對軟件的質量要求和管理也隨之增高。微軟看到了應用程序生命週期管理在業界逐漸被接受認可的趨勢,並宣稱VSTS2010將會是一個革命性的.Net軟件開發以及管理工具的產品,預計在2010年3月正式版發佈。它將提供協同一致的應用程序生命週期管理工具,讓參與軟件開發的各種角色人員,例如:從架構師到開發人員,從項目經理到測試人員,都能夠更加容易地在整個ALM過程中進行協作。
在本文中,筆者將介紹Microsoft Visual Studio 2010 Beta2版本中的敏捷特性,以及以往版本優劣勢等方面的內容。通過這些內容的闡述,讓讀者瞭解VSTS2010的敏捷思想體系,以便於.NET人員在自己的項目中,根據實際情況,儘快熟悉和看清VSTS2010流程爲導向的軟件工程全貌和整體發展趨勢。
一、引言
一個軟件產品或系統同任何事物一樣,也要經歷孕育、誕生、成長、成熟、衰亡等階段,一般稱爲軟件生存週期,也稱爲SDLC(software development life cycle)軟件開發生命週期。它是軟件的產生直到報廢的生命週期,週期內有問題定義、可行性分析、總體描述、系統設計、編碼、調試和測試、驗收與運行、維護升級到廢棄等階段,這種按時間分程的思想方法是軟件工程中的一種思想原則。我們也可以將SDLC解釋爲一組步驟(Step)、階段(Phase)或者里程標(Milestone),SDLC的一般步驟包括:確定問題、可行性分析與開發計劃、收集需求、分析與設計、編碼開發、測試、安裝、維護。。
在Visual Studio 2010 Ultimate中,應用程序生命週期(ALM)是其重要特性和SDLC實現方式之一。我們將一個軟件的生命週期(SDLC)劃分爲幾個階段;而利用各種工具輔助每個關鍵環節進行管理,就稱爲應用程序生命週期管理(ALM,Application Lifecycle Management)。微軟Visual Studio 2010將會努力打造一個功能平等、共同分擔,易用便捷的平臺,以用於組織內的應用程序生命週期管理過程。
Visual Studio 2010的ALM涵蓋了系統設計到測試階段的工具,其中,在架構方面,Visual Studio 2010包括新的架構檢視工具(Architecture Explorer),增加對統一建模語言(UML)的支持,例如類圖、用例圖、活動圖和時序圖等;以及架構層圖(Architecture Layer Diagram),以圖形化的方式描述系統架構,從而使得項目中的技術人員或非技術人員都能以模型透過圖形化的方式進行協作,以及定義企業與系統功能關係等。另外微軟提供虛擬實驗室管理(Microsoft Test and Lab Manager)技術,可供開發人員和測試人員收集更多的測試資料,增強ALM的週期管理控制。
clip_image001
圖1 Architecture工具模板
二、Scrum開發思想敏捷特性
Visual Studio 2010中項目過程模板變化很大,微軟把Scrum作爲基本Agile開發模型(Scrum模型爲基礎參考導向),TFS2010中集成了MSF for Agile Software Development v5.0,可操作性上融合了敏捷等軟件開發流程思想模型。
clip_image003
圖2 添加MSF for Agile模板
Scrum最初的含義是英式橄欖球爭球隊,是敏捷軟件開發模型中的一種。Scrum 將軟件開發團隊比擬成橄欖球隊,有明確的最高目標,熟悉開發流程中所需具備的最佳技術,具有高度自主權,緊密地溝通合作,以高度彈性解決各種挑戰,確保每天、每個階段都明確的朝向目標推進。
clip_image005
圖3 Scrum for Agile模型
Scrum開發流程通常以30天(或者更短的一段時間)爲一個階段,由客戶提供新產品的需求規格開始,開發團隊與客戶於每一個階段開始時挑選該完成的規格部分,開發團隊必須盡力於30天后交付成果,團隊每天用 15 分鐘開會檢查每個成員的進度與計劃,瞭解所遭遇的困難並設法排除。
三、VSTS2010安裝敏捷特性
在以往的版本中,微軟TFS2005/2008安裝、配置的複雜性等原因,使得很多.Net中小型開發團隊還在使用傳統的、功能單一的VSS等開發管理工具,TFS被逐漸被邊緣化。
在VSTS2010中,TFS2010安裝更加簡單便捷,完美支持SQL Server 2008,並與Web Access集成,比起之前繁瑣的安裝和配置步驟更爲簡單,無需單獨安裝SharePoint Service,並且可以在不用安裝域控和AD(活動目錄)的模式下
安裝,從而非常適合不同規模的開發團隊的使用需要。
clip_image007
圖4 Team Foundation Administration Console
四、VSTS2010功能與角色敏捷性
clip_image009
clip_image011
圖5 Visual Studio 2010 Ultimate架構
Visual Studio 2010 Ultimate的用戶包含了項目管理人員(PM),架構師,開發人員和測試人員,他們覆蓋在整個軟件開發生命週期中。而VSTS 2010則爲軟件開發項目流程中不同角色的人員提供相應的工具,並且最重要的是將這些工具以Team Foundation Server爲核心整合在一起,增強了軟件開發團隊中的溝通與協作。我們將能夠實現完整的應用程序生命週期管理,使得開發團隊能夠在開發過程的早期以及在整個開發過程中確保更高的可預見性和更好的質量。
clip_image013
圖6 微軟MSF軟件過程基礎模型
1、敏捷的架構設計(Architecture)(項目經理、架構師或開發人員)
VSTS 2010支持統一建模語言UML(Unified Modeling Language)及特定領域語言DSL(Domain Specific Language),.NET項目管理人員、軟件架構師或者開發人員可以丟掉Rose建模工具,進行軟件架構的構建。
所示微軟MSF軟件過程基礎模型設計設計活動階段,經過概念設計、邏輯設計和物理設計(參考圖6),在軟件工程圖紙設計過程中,VSTS2010可以敏捷的進行軟件工程設計(參考圖1 Architecture工具模板),從而輔助的完成軟件工程文檔。如圖7所示,進行軟件工程類關係圖的設計。
clip_image015
圖7 設計UML Class Diagram
鼠標右鍵,點擊“Create Lifeline”菜單項,可以自動生成Lifeline,在這基礎上可以進行類的時序圖的設計,如圖8所示。
clip_image017
圖8 設計UML Sequence Diagram
另外,在架構管理方面,VSTS 2010通過新的架構瀏覽器(Architecture Explorer)和架構層圖(Architecture Layer Diagram),以圖形化的方式描述系統架構,從而使得項目中的技術人員或非技術人員都能以模型透過圖形化的方式進行協作,以及定義企業與系統功能。
在實際的項目開發實踐中,大多數情況下我們都是在已有代碼的基礎上構建新的系統。在這種情況下,.NET架構師或者開發人員遇到的一個典型的問題就是沒有好的工具可以幫助他們很好地理解現有代碼的架構,從而無法有效地在現有代碼的基礎上,添加新的功能以滿足新的需求。爲了解決這個問題,VSTS 2010提供了新的建模工具——架構瀏覽器(Architecture Explorer)。
架構瀏覽器圖,如圖9所示。
clip_image019
圖9 架構瀏覽器
新的架構瀏覽器可以讓架構師或者開發人員爲已有代碼創建完整的架構圖,理解原有系統的各個組件是如何協作在一起的。這將爲架構師或者開發人員決定如何使用,複用或者是棄用現有代碼提供足夠的有價值的參考信息。
對於非.NET架構設計人員來說,也可以借用微軟的New Diagram模板(Uml Class Diagram、UML Sequence Diagram、UML Use Case Diagram、UML Activity Diagram、UML Component Diagram等)進行漂亮的軟件工程圖表設計,並可以直接粘貼到word中進行功能說明(參考圖1)。
 
———————————————————————
任何美好的事物只有觸動了人們的心靈才變的美好;
孤獨的時候看看天空裏的雨,其實流淚的不只是你。

———————————————————————
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章