那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

三種迭代軟件開發模型的主要重點

汽車電子工程知識體系 ? 來源:汽車電子硬件設計 ? 作者:汽車電子硬件設計 ? 2021-01-11 17:23 ? 次閱讀

軟件是一種靈活的、可延展性的媒介,它在很大程度上促進了迭代分析、設計、構造、驗證和確認,這比通??赡苡糜谙到y的純粹物理組件的程度要高。迭代開發模型的每次重復都會向不斷增長的軟件基礎中添加材料(代碼);對擴展的代碼庫進行測試,根據需要重新編寫,并進行演示,以滿足基線的需求。

軟件開發的過程模型支持在不同長度的周期上進行迭代開發。表1列出了三個迭代的軟件開發模型,它們在下面更詳細地展示,以及這些模型所強調的軟件開發的各個方面。

表1。三種迭代軟件開發模型的主要重點。

迭代式模型 強調
增量構建 對替代方法的基于風險的迭代分析和結果的敏捷評估
迭代實現-驗證-驗證-演示循環往復 需求和代碼的迭代演進

請注意,下面的信息特別關注軟件系統的不同生命周期模型的使用情況。為了更好地理解軟件工程(SwE)和系統工程(SE)之間的交互,請參閱第6部分中的系統工程和軟件工程。

迭代開發過程模型概述

開發和修改軟件涉及到創造性的過程,這些過程受到許多外部和可變力量的影響。長期的經驗已經表明,第一次“把它做好”是不可能的,并且迭代開發過程比線性的、順序的開發過程模型(如著名的瀑布模型)更可取。在迭代開發中,迭代的每個周期都包含前一個迭代的軟件,并向演進的產品添加新功能,以創建軟件的擴展版本。迭代開發過程提供了以下優點:

v持續集成、驗證和演進產品的驗證;

v經常展示進步;

v盡早發現缺陷;

v過程問題的預警;

v系統地整合集成軟件開發中不可避免的返工;及

v盡早交付子集功能(如果需要的話)。

迭代開發在SwE中有多種形式,包括:

v增量構建,用于產生周期性的(通常是每周的)增加產品能力的構建;

v敏捷開發,用于將原型客戶緊密地卷入可能每天重復的迭代過程中;及

v螺旋模型,用于對抗和減輕在開發產品的后續版本中遇到的風險因素。

增量構建模型

增量構建模型是一個迭代周期的構建-測試-演示模型,在該模型中,經常強調進展的演示、驗證和對當前工作的驗證。該模型基于穩定的需求和軟件架構規范。每個構建都向增量增長的產品添加新的功能。當最終版本被客戶驗證、驗證、演示和接受時,過程結束。

表2列出了一些將增量開發劃分為(通常)每個日歷周的增量構建單元的劃分標準。增量和可用于項目的開發人員數量決定了每個增量構建中可以包含的特性數量。這進而決定了整個時間表。

表2。一些增量構建的分區標準。

系統 劃分的標準
應用包 優先級的功能
安全-關鍵系統 安全第一(優先)特性;其他優先級遵循
用戶密集系統 用戶接口優先;其他優先級遵循
系統軟件 內核優先;實用程序遵循

圖5演示了增量構建過程中的構建-驗證-驗證-演示周期的細節。每個構建都包括由開發人員完成的詳細設計、編碼、集成、評審和測試。在不需要修改就可以復用代碼的情況下,增量構建的部分或全部可能包括對使用復用代碼擴展的基本代碼的評審、集成和測試。重要的是要注意到,開發一個增量可能會導致為集成而重新開發的以前的組件,以修復缺陷。

增量驗證、驗證和演示,如圖5所示,通過以下方法克服了瀑布方法的兩個主要問題:

盡早暴露問題,以便在問題發生時予以糾正;及

將次要的范圍內變更合并到需求中,這些需求是后續構建中增量演示的結果。

圖5還說明了重疊產品的連續構建是可能的。例如,在驗證當前版本時,可以開始對下一個版本進行詳細設計。

三個因素決定可實現的重疊程度:

8e33bfb8-45c5-11eb-8b86-12bb97331649.png

圖5。增量的構建-驗證-驗證-演示周期。

?人員的可用性;

?較前一版本取得足夠進展;及

?由于對前一個正在進行中的構建的變更,對下一個重疊構建的重大重做的風險。增量構建過程通常在小型團隊中工作得很好,但是可以在較大的項目中進行擴展。

增量構建過程的一個顯著優勢是,首先構建的特性會得到最頻繁的驗證、驗證和演示,因為隨后的構建會合并早期迭代的特性。例如,在構建控制核反應堆的軟件時,可以首先構建緊急關閉軟件,因為它將隨后結合每一個后續構建的特點進行驗證和確認。

總之,增量構建模型,像所有的迭代模型一樣,提供了持續集成和演進產品的驗證、頻繁的進展演示、問題的早期預警、子集功能的早期交付,以及軟件開發中不可避免的返工的系統集成。

原型設計在軟件開發中的角色

在SwE中,原型是系統某些部分所需功能的模型。這與物理系統相反,在物理系統中,原型通常是系統的第一個全功能版本。

在過去,將原型軟件集成到生產系統中會產生許多問題。原型設計是一種有用的技術,應酌情使用;然而,原型設計不是軟件開發的過程模型。在構建軟件原型時,通過開發原型獲得的知識對程序是有益的;然而,原型代碼可能不會在系統的可交付版本中使用。在許多情況下,使用通過原型設計獲得的知識從頭構建產品代碼比重新設計現有代碼更有效。

軟件的生命周期維護

與所有系統一樣,軟件需要持續付出來增強功能、適應新環境和糾正缺陷。軟件的主要區別在于,維護工作會改變軟件;與物理實體不同,軟件組件不需要因為物理損耗而被替換。變更軟件需要重新驗證和重新確認,這可能涉及到廣泛的回歸測試,以確定變更具有預期的效果,并且沒有改變功能或行為的其他方面。

報廢的軟件

有用的軟件很少被淘汰;然而,有用的軟件在其生命周期中經常經歷多次升級。以后的版本可能與最初的版本沒有多少相似之處。在某些情況下,在以前的操作環境中運行的軟件在硬件模擬器上執行,這些模擬器在較新的硬件上提供虛擬機。在其他情況下,主要的增強可能會替換并重命名軟件的舊版本,但是增強的版本以一種兼容的方式提供了以前軟件的所有功能。然而,有時軟件的新版本可能無法提供與舊版本的兼容性,這就需要對系統進行其他變更。

主要是演進和并發流程:增量承諾螺旋模型

增量承諾螺旋模型概述

增量承諾螺旋模型(ICSM)的視圖如圖6所示。

8ea030a8-45c5-11eb-8b86-12bb97331649.png

Figure 6.增量承諾螺旋模型(ICSM)

在ICSM中,每個螺旋都同時而不是順序地處理需求和解決方案,以及產品和過程、硬件、軟件、人的因素方面,以及替代產品配置或產品線投資的業務案例分析。利益攸關方考慮風險和風險緩解計劃,并決定行動方針。如果風險是可接受的,并且被風險緩解計劃所覆蓋,那么項目將繼續進入下一個螺旋。

在第一次開發承諾評審之后,開發遵循三團隊增量開發方法,以實現圖2中所示的敏捷性和保證,即系統生命周期過程驅動程序和選擇的“演化-并發快速變更處理和高保證”。

原文標題:迭代軟件開發過程模型

文章出處:【微信公眾號:汽車電子硬件設計】歡迎添加關注!文章轉載請注明出處。

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 軟件
    +關注

    關注

    69

    文章

    5009

    瀏覽量

    88074
  • 模型
    +關注

    關注

    1

    文章

    3305

    瀏覽量

    49221

原文標題:迭代軟件開發過程模型

文章出處:【微信號:QCDZYJ,微信公眾號:汽車電子工程知識體系】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    我國軟件開發者數量超過940萬

    在近日舉辦的開放原子開發者大會上,工業和信息化部負責人傳來了一則令人振奮的消息:我國軟件開發者數量已經突破940萬大關。這一數據不僅彰顯了我國在軟件開發領域的雄厚實力,也預示著我國在全球軟件開
    的頭像 發表于 12-23 11:08 ?294次閱讀

    TMS320C6201 DSP軟件開發技術

    電子發燒友網站提供《TMS320C6201 DSP軟件開發技術.pdf》資料免費下載
    發表于 10-26 09:25 ?0次下載
    TMS320C6201 DSP<b class='flag-5'>軟件開發</b>技術

    Windows管理內存的三種主要方式

    Windows操作系統提供了多種方式來管理內存,以確保系統資源的有效利用和性能的優化。以下是關于Windows管理內存的三種主要方式的詳細闡述,包括堆內存管理、虛擬內存管理以及共享內存管理,每種方式都將從概念、原理、運作機制和應用等方面進行介紹。
    的頭像 發表于 10-12 17:09 ?1340次閱讀

    PGA450-Q1軟件開發指南

    電子發燒友網站提供《PGA450-Q1軟件開發指南.pdf》資料免費下載
    發表于 09-30 14:25 ?0次下載
    PGA450-Q1<b class='flag-5'>軟件開發</b>指南

    ECU電控軟件開發及測試介紹

    本文重點介紹符合AutoSar架構的應用軟件開發、MBD開發模式下的軟件質量評估與優化方案、復雜場景下的ECU性能壓力測試方案。
    的頭像 發表于 09-26 14:25 ?3547次閱讀
    ECU電控<b class='flag-5'>軟件開發</b>及測試介紹

    9月12日云技術研討會 | ECU電控軟件開發及測試全流程解決方案

    本次研討會,經緯恒潤將結合業務團隊多年來在軟件開發和測試領域的工程實踐經驗,分享探討基于AutoSar架構的應用軟件開發、基于MBD開發軟件質量評估和優化、復雜場景下ECU性能壓力測
    的頭像 發表于 09-26 14:18 ?1457次閱讀
    9月12日云技術研討會 | ECU電控<b class='flag-5'>軟件開發</b>及測試全流程解決方案

    TUSS44x0軟件開發指南

    電子發燒友網站提供《TUSS44x0軟件開發指南.pdf》資料免費下載
    發表于 09-14 10:59 ?0次下載
    TUSS44x0<b class='flag-5'>軟件開發</b>指南

    Vector DaVinci Team解決方案實現AUTOSAR Classic ECU軟件開發

    單元(HPC)和區域控制單元(Zonal ECU)分工協作的架構。因此,ECU的軟件功能越來越多,越來越復雜。ECU的軟件開發,也將引入不同部門、不同公司的更多項目開發人員的協作。在ECU軟件
    的頭像 發表于 09-13 11:23 ?1418次閱讀
    Vector DaVinci Team解決方案實現AUTOSAR Classic ECU<b class='flag-5'>軟件開發</b>

    對話aiXcoder總裁劉德欣:智能化軟件開發2.0時代,企業如何落地領域化大模型

    科技(以下簡稱:aiXcoder)總裁劉德欣,主要圍繞企業如何落地領域化大模型,如何更好地擁抱智能化軟件開發2.0時代等話題進行深入探討。以下內容根據采訪實錄整理。 請劉總簡單介紹下智能化軟件
    的頭像 發表于 08-16 09:40 ?396次閱讀

    BQ769x2 軟件開發指南

    電子發燒友網站提供《BQ769x2 軟件開發指南.pdf》資料免費下載
    發表于 08-12 14:41 ?0次下載

    嵌入式軟件開發與AI整合

    嵌入式軟件開發與AI整合是當前技術發展的重要趨勢之一。隨著人工智能技術的快速發展,嵌入式系統越來越多地集成了AI算法,以實現更復雜的智能功能。以下是關于嵌入式軟件開發與AI整合的詳細分析
    的頭像 發表于 07-31 09:25 ?831次閱讀
    嵌入式<b class='flag-5'>軟件開發</b>與AI整合

    rup是一什么模型

    RUP(Rational Unified Process,統一建模語言)是一軟件開發過程模型,它是一迭代和增量的
    的頭像 發表于 07-09 10:13 ?1395次閱讀

    【《軟件開發珠璣》閱讀體驗】+ 心得

    【《軟件開發珠璣》閱讀體驗】+ 心得 感謝電子發燒友論壇提供的讀書機會。讀這本書使我在編程方面多了位資深老師。 在軟件項目開發領域的時,我閱讀了《軟件開發珠璣》這本書。它以獨特的視角和
    發表于 06-23 17:56

    上位機軟件開發用什么語言

    維護的上位機軟件至關重要。本文將詳細介紹幾種常用的上位機軟件開發編程語言,并分析它們的優缺點。 C/C++ C和C++是兩廣泛使用的編程語言,它們在上位機軟件開發中具有很高的地位。C
    的頭像 發表于 06-06 10:44 ?2256次閱讀

    廣告電商+超級云APP結合 # 軟件開發# 模式開發# 小程序開發# App開發

    軟件開發APP
    jf_01576396
    發布于 :2024年04月09日 17:42:13
    亿酷棋牌世界下载| 豪杰百家乐官网现金网| 高楼24层风水好吗| 百利宫娱乐城官方网| 六合彩百家乐官网有什么平码| 百家乐伴侣| 线上百家乐官网信誉| 皇家百家乐的玩法技巧和规则| 开封县| 百家乐投注方法多不多| 大发888娱乐城官方| 百家乐官网最保险的方法| 百家乐的路单怎样看| 大丰收百家乐官网的玩法技巧和规则 | 澳门百家乐官网官方网站破解百家乐官网技巧 | 百家乐投注方法| 国外合法赌博网站| 最大的百家乐网站| 百家乐官网技巧论坛| 榆次百家乐的玩法技巧和规则 | 大发888娱乐85战神版| 百家乐官网看大小路| 真钱赌博网站| 百家乐那个平台信誉高| 百家乐官网平台开户哪里优惠多| 大发888娱乐城菲律宾| 百家乐试玩账户| 浩博真人娱乐| 百家乐游戏平台有哪些哪家的口碑最好 | 百家乐官网输了好多钱| 新锦江百家乐的玩法技巧和规则 | 易胜博百家乐官网娱乐城| 88娱乐城开户| 百家乐单机游戏免费| 百家乐官网平台出租家乐平台出租| 大发888官方 46| 青鹏百家乐游戏币| 百家乐官网线上| 黄金城赌场| 水果机遥控器价格| 百家乐路单破解方法|