在一個軟件項目所經歷的各階段中(如:⑴需求分析、⑵原型開發、⑶實現、⑷測試、⑸完成、⑹需求變動、⑺後期維護),不一樣階段選用適當的工具能很是直接的相應參與人員的工做效率、溝通效率,縮短單個步驟所須要的時間,從而在總體上縮短軟件項目的開發週期。值得注意的一點是,工具並不只限於軟件形態的快速開發工具。html
⑴需求分析:是軟件項目開發第一個也是很重要的一個階段, 需求分析的基本任務是要準確地定義新系統的目標,爲了知足用戶須要,回答系統必須「作什麼」的問題。 在這個階段中包含須要獲取需求、分析需求、編寫規格說明和需求驗證。從獲取需求到需求驗證的這個過程須要編寫文檔、繪製圖形、建立需求模型等,像文檔之類的工具可使用word、繪製圖形可使用visio、建模可使用rational rose等工具軟件,有了這些工具的輔助,可提升編寫文檔的速度,縮短分析階段的週期。除了以上這些軟件形態的工具外還可爲更快的項目參與人員之間的想法溝通,藉助一些實體類工具,如紙製卡片,黑板或一些已經成型的系統。數據庫
⑵原型開發:在軟件需求分析階段,須要搞清楚的是軟件要「作什麼」的問題,並把這些需求經過文檔的形式描述出來,這也是目標系統的邏輯模型。進入設計階段,則要把軟件「作什麼」的邏輯模型變換爲「怎麼作」的物理模型,即着手實現軟件的需求,並將設計的結果反映在「設計規格說明」文檔中,接下來開始設計。設計的基本任務包括:軟件結構、數據結構及數據庫設計、概要設計文檔。開發一個大而複雜的軟件系統,咱們能夠將它進行適當的分解來下降其複雜性,還可減小開發工做量,你也可使用一些可以提升設計速的軟件來幫助你進行設計,從而提升軟件生產率,下降開發成本。所用的工具好比使用UML繪製類圖的工具。數據結構
⑶實現:設計完成以後進入編碼實現階段,爲了提升整個項目的開發速度,編寫代碼咱們能夠藉助一些有力的開發工具來加快速度,例如,若是是用JAVA語言開作開發的話,可使用eclipse、JCreater,若是是用C#、VB你能夠用Visual Studio.net;若是是開發網站之類的能夠用Dreamweaver。美工可使用photoshop或是FireWork之類的工具。節省項目的開發時間。另一方面因爲軟件技術的快速發展帶來了各類平臺和引擎,選用適當的平臺技術與引擎能更大程度的縮短週期。eclipse
⑷測試:軟件的測試也是一個很是重要的階段,大量的測試,甚至重複的測試引出了一個新的問題:全憑手工進行測試會浪費大量的時間。所以,易變的需求對測試提出了一個新的要求:自動化測試。此類型的工具例如Xunit系列。只有自動化的進行測試,才能夠完成大量的測試工做,節省時間和人力方面的投入,加快項目的總體開發速度。關於自動化測試這方面的問題,你們能夠參考相關的資料,這裏咱們不做深刻的討論。數據庫設計
工匠用釘槍、成型磚塊、塗料噴霧器來建造一個小屋的話要比他單純用一把榔頭、沙磚、塗料刷來得快。擁有快速交通工具的人能夠比擁有普通交通工具的人提早到達目的地。但不論什麼狀況下,若是質量是很是重要的話,那麼即便是強有力的工具也將會被手工工具所替代或輔助。軟件開發中使用工具的狀況與上述狀況也是很是相近的。工具