軟體開發方法
軟體開發方法是一種使用早已定義好的技術集及符號表示習慣來組織軟體生產的過程。 結構化方法
結構化方法由結構化分析、結構化設計、結構化程式設計構成,它是一種面向資料流的開發方法。
結構化分析:是根據分解與抽象的原則,按照系統中資料處理的流程,用資料流圖來建立系統的功能模型,從而完成需求分析工作。
結構化設計:根據模組獨立性準則、軟體結構最佳化準則將資料流圖轉換為軟體的體繫結構,用軟體結構圖來建立系統的物理模型,實現系統的概要設計。
結構化程式設計:使用3中基本控制結構構造程式,任何程式都可以由順序、選擇和重複3種基本控制結構構造。
結構化方法總的指導思想是自頂向下、逐層分解,它的基本原則是功能的分解與抽象。適合於資料處理領域的問題,不適合解決大規模的、特別複雜的項目,且難以適應需求的變化。 Jackson方法
Jackson方法是一種面向資料結構的開發方法。
JSP(Jackson Structure Programming)方法是以資料結構為驅動的,適合於小規模的項目。JSP方法首先描述問題的輸入/輸出資料結構,分析其對應性,然後推出相應的程式結構,從而給問題的軟體流程說明。
JSD方法是JSP方法的擴充,是一個完整的系統開發方法。首先建立現實世界的模型,再確定系統的功能需求,對需求的描述特彆強調操作之間的時序性。它是以事件作為驅動的,是一種基於進程的開發方法,所以適用於時序特別較強的系統,包括資料處理系統和一些即時控制系統。 原型方法
原型方法比較適合於使用者需求不清、需求經常變化的情況。當系統規模不是很大也不太複雜時,採用該方法比較好。 物件導向方法
物件導向方法正是以對象作為最基本的元素,它也是分析問題、解決問題的核心。物件導向方法包括物件導向分析、物件導向設計和物件導向實現。
UML是物件導向的標準建模語言,通過統一的語義和符號表示,使各種方法的建模過程和表示統一起來,現已成為物件導向建模的工業標準。 敏捷方法 極限編程(XP)
XP是一種輕量級(敏捷)、高效、低風險、柔性、可預測的、科學的軟體開發方式。它由價值觀、原則、實踐和行為4個部分組成,彼此相互依賴、關聯,並通過行為貫穿於整個生存周期。
4大價值觀: 溝通 簡單性 反饋 勇氣
5個原則: 快速反饋 簡單性假設 逐步修改 提倡更改 優質工作
12個最佳實務: 計劃遊戲:快速制定計劃、隨著細節的不斷變化而完善。 小型發布:系統的設計要能夠儘可能早地交付。 隱喻:找到合適的比喻傳達資訊。 簡單設計:只處理當前的需求,使設計保持簡單。 測試先行: 先寫測試代碼,然後再編寫程式。 重構:重新審視需求和設計,重新明確地描述他們以符合新的和現有的需求。 結對程式設計、集體代碼所有制、繼續整合:可以按日甚至按小時為客戶提供可啟動並執行版本。 每周工作40小時、現場客戶和編碼通訊協定。 水晶法:
水晶法認為每一個不同的項目都需要一套不同的策略、約定和方法論。 並列爭求法:
並列爭求法使用迭代的方法,其中,把每30天一次的迭代稱為一個“衝刺”,並按需求的優先順序別來實現產品。 自適應軟體開發(ASD)
ASD有6個基本的原則: 有一個使命作為指導; 特徵被視為客戶價值的關鍵點; 過程中的等待是很重要的,因此“重做”與“做”同樣關鍵 變化不被視為改正,而是被視為對軟體開發實際情況的調查。 確定的交付時間迫使開發人員認真考慮每一個生產的版本的關鍵需求。 風險也包含其中。 軟體工具
用來輔助軟體開發、運行、維護、管理和支援等過程中的活動的軟體稱為軟體工具。 軟體開發工具: 需求分析工具 設計工具 編碼與排錯工具 測試載入器 軟體維護工具: 版本控制工具 分檔分析工具 開發資訊庫工具 逆向工程工具 再工程工具:主要集中在代碼重構,程式結構重構和資料結構重構等。 軟體管理和軟體支援工具: 專案管理工具 組態管理工具 軟體評價工具 軟體開發環境
軟體開發環境指支援軟體產品開發的軟體系統,它由軟體工具集和環境整合機制構成。
軟體開發環境的特徵: 環境的服務是整合的。 環境應支援小組工作方式,並為其提供組態管理 環境的服務可用於支援各種軟體開發活動,包括分析、設計、編程、調試和文檔等。
整合型開發環境是一種把支援多種軟體開發方法和開放模型的軟體工具整合在一起的軟體開發環境。這種環境應該具有開放性和可剪裁型。開放性為環境外的工具整合到環境中來提供了方便,可裁剪性可根據不同的應用和不同的使用者需求進行剪裁,以形成特定的開發環境。 結束
我是衡釗清,北漂中的一員。
人生格言:[ 做一個決定,並不難,難的是付諸行動,並且堅持到底 ]
今天的苦果,是昨天的伏筆,當下的付出,才是明日的花開。加油。。。加油。。。