在計算機軟體開發和維護過程中所遇到的一系列嚴重問題
採用工程的概念、原理、技術和方法來開發與維護軟體
優質、高產
①問題定義
②可行性研究
③需求分析
④總體設計(概要設計)
⑤詳細設計
⑥編碼和單元測試
⑦綜合測試
模型名稱
說明瀑布模型
適用於:使用者需求較為明確的情況;
特點:1.階段間具有順序性和依賴性;
2.推遲實現的觀點
3.質量保證的觀點;每個階段都必須完成規定的文件,沒有 交出合格的文件就是沒有完成該階段的任務;每個階段結 束前都要對所完成的文件進行評審;
它是一種文件驅動的開發模型;
優點:1.強迫開發人員採用規範的方法,結構化技術;
2.嚴格規定了每個階段必須提交的文件;
3.要求每個階段交出的所有產品都必須經過質量保證小組 的仔細驗證;
它是帶「反饋環」的;
缺點:不能保證最終開發出的軟體產品能否真正滿足使用者的需求;不適應軟體開發工作中使用者需求的改動,對風險的控制能力較差;
增量模型
適用於:使用者需求較為穩定,技術風險較大的軟體系統;
強調每乙個增量都要發布乙個可操作的產品,分批地逐步向使用者提交產品,整個軟體產品被分解成許多個增量構件,開發人員乙個乙個構件向使用者提交;
螺旋模型
適用於:大型、複雜、高風險的管理資訊系統
可以把它看做是在每個階段之前都增加了風險分析過程的快速原型模型;
主要優勢:在於風險驅動
噴泉模型
是一種以使用者需求為動力,以物件為驅動的模型,主要用於描述物件導向的軟體開發過程;
優點:提高軟體專案開發效率,節省開發時間,適應於物件導向的軟體開發過程。
迭代和無縫的特性;
v模型強調在開發過程中測試貫穿始終;v模型在瀑布模型的基礎上,強調測試過程與開發過程的對應性和並行性;適用於需求明確,而且很少有需求變更的情況;
原型模型
適用於軟體開發過程中使用者需求會變更的場合;
通過向使用者提供原型來獲取使用者的反饋,使開發 出的軟體能夠真正反映使用者的需求;
快速原型模型
適用於:使用者需求不明確,小型或是互動的系統,大型系統的某些部分;
它是不帶「反饋環「的;
過程:它的第一步是快速的建立乙個能反映使用者主要需求的原型 系統,讓使用者在計算機上使用,通過實踐來了解目標系統 的概貌;通過向使用者提供原型來獲取使用者的反饋,使開發 出的軟體能夠真正反映使用者的需求;
目標是快速,低成本;
構件組裝模型
步驟:①需求分析和定義
②軟體架構設計
③構件庫的建立
④應用軟體設計
⑤測試和發布
優點:提高了軟體的復用性、可靠性;
名稱說明
結構化方法
1.使用者至上
2.嚴格區分工作階段,每個階段有任務和成果
3.強調系統開發過程的整體性和全域性性
4.系統開發過程工程化,文件資源標準化
5.自頂向上、逐步分解
適用於使用者需求較為明確的開發
原型法適用於需求不明確的開發
物件導向方法
1.更好的復用性
2.關鍵在於建立乙個全面、合理、統一的模型
3.分析、設計、實現三個階段介面不明確
面向服務方法
三個層次:
1.基礎設計層
2.應用結構層
3.業務組織層
服務建模:
服務發現、服務規約、服務實現
基礎軟體開發技巧
陽曆2019年11月9日 1 svpwm是乙個非常強大的調製工具。將直流的母線電壓轉為所需要的形狀的三相電壓。2 做電子實驗和嵌入式開發,一定要擅長使用測量工具,比如示波器。很多問題只有通過示波器才能快速找到答案,而不是靠猜。3 使用晶元可以支援的dma完成非同步操作。比如,使用spi和dma配合使...
軟體開發流程 基礎
跨行招工作的渣渣 暴風哭泣。小公尺 智慧型硬體部 一面,二面都讓我詳細說一下軟體開發流程 軟體開發流程 常見的過程模型 敏捷開發 瀑布模型 requirements design implementation verification maintenance 需求分析 概要設計 詳細設計 編寫 程式...
軟體開發實操彙總(二)軟體開發基礎
有了上述經營戰略 內部資源配置及專案自身情況等內容的彙總及分析,針對不同情況,在開發前,應具體深入的進行專案的前期調研,梳理出專案的具體需求及各種問題,將需求和問題一一落實到文件編制。此過程是專案是否能夠順利實施並取得預期效果的關鍵,大體分為以下幾個步驟 1 需求和問題的歸納 2 編制需求文件 問題...