女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內(nèi)不再提示

軟件工程方法有哪些

tLJX_gh_ad43aef ? 來源:汽車電子系統(tǒng)與軟件 ? 作者:c2c ? 2021-08-11 09:54 ? 次閱讀

軟件工程方法為目標計算機的軟件開發(fā)提供了一種有組織和系統(tǒng)的方法。有許多方法可供選擇,對于軟件工程師來說,為手頭的軟件開發(fā)任務選擇一種或幾種合適的方法是很重要的;這種選擇會對軟件項目的成功產(chǎn)生巨大的影響。使用這些軟件工程方法,加上具有適當技能集的人員和工具,使軟件工程師能夠可視化軟件的細節(jié),并最終將表示轉(zhuǎn)換為代碼和數(shù)據(jù)的工作集。

下面將討論選定的軟件工程方法。主題區(qū)域被組織成啟發(fā)式方法、正式方法、原型方法和敏捷方法的討論。4.1啟發(fā)式方法

啟發(fā)式方法是那些基于經(jīng)驗的軟件工程方法,它們已經(jīng)在軟件行業(yè)中得到了相當廣泛的實踐。本主題包含三個廣泛的討論類別:結(jié)構(gòu)化分析和設(shè)計方法、數(shù)據(jù)建模方法和面向?qū)ο蟮姆治龊驮O(shè)計方法。

結(jié)構(gòu)化分析和設(shè)計方法:軟件模型主要從功能或行為的角度開發(fā),從軟件的高級視圖(包括數(shù)據(jù)和控制要素)開始,然后通過越來越詳細的設(shè)計逐步分解或細化模型組件。詳細的設(shè)計最終集中于必須編碼(手工、自動生成或兩者同時生成)、構(gòu)建、測試和驗證的軟件的非常具體的細節(jié)或規(guī)范。

數(shù)據(jù)建模方法:根據(jù)所使用的數(shù)據(jù)或信息的觀點構(gòu)建數(shù)據(jù)模型。數(shù)據(jù)表和關(guān)系定義了數(shù)據(jù)模型。這種數(shù)據(jù)建模方法主要用于定義和分析支持數(shù)據(jù)庫設(shè)計或通常在業(yè)務軟件中發(fā)現(xiàn)的數(shù)據(jù)存儲庫的數(shù)據(jù)需求,在業(yè)務軟件中,數(shù)據(jù)作為業(yè)務系統(tǒng)資源或資產(chǎn)進行主動管理。

面向?qū)ο蟮姆治龊驮O(shè)計方法:面向?qū)ο竽P捅硎緸榉庋b數(shù)據(jù)和關(guān)系的對象集合,并通過方法與其他對象交互。對象可以是真實世界的項目,也可以是虛擬的項目。軟件模型是使用圖來構(gòu)成軟件的選定視圖來構(gòu)建的。軟件模型的逐步細化導致了詳細的設(shè)計。然后,詳細的設(shè)計要么通過連續(xù)的迭代進行演化,要么(使用某種機制)轉(zhuǎn)換為模型的實現(xiàn)視圖,其中表示最終軟件產(chǎn)品發(fā)布和部署的代碼和打包方法。

4.2正式的方法

形式方法是軟件工程方法,通過應用嚴格的基于數(shù)學的符號和語言來指定、開發(fā)和驗證軟件。通過使用規(guī)范語言,可以以系統(tǒng)的、自動化的或半自動化的方式檢查軟件模型的一致性(換句話說,缺少模糊性)、完整性和正確性。這個主題與軟件需求知識領(lǐng)域中的形式化分析部分有關(guān)。

本節(jié)討論規(guī)范語言、程序細化和派生、形式驗證和邏輯推理。

規(guī)范語言:規(guī)范語言為形式方法提供數(shù)學基礎(chǔ);規(guī)范語言是在軟件規(guī)范、需求分析和/或設(shè)計階段用于描述特定輸入/輸出行為的正式的、高級的計算機語言(換句話說,不是經(jīng)典的第三代語言(3GL)編程語言)。規(guī)范語言不是直接可執(zhí)行的語言;它們通常由表示法和語法、使用表示法的語義和一組允許的對象關(guān)系組成。

程序優(yōu)化和派生:程序優(yōu)化是使用一系列轉(zhuǎn)換創(chuàng)建較低層面(或更詳細)規(guī)范的過程。軟件工程師是通過連續(xù)的轉(zhuǎn)換來獲得程序的可執(zhí)行表示的。可以細化規(guī)范,添加細節(jié),直到模型可以用3GL編程語言或所選規(guī)范語言的可執(zhí)行部分來表述。通過定義具有精確語義屬性的規(guī)范,可以實現(xiàn)規(guī)范的細化;規(guī)范不僅必須規(guī)定實體之間的關(guān)系,還必須規(guī)定這些關(guān)系和操作的確切運行時含義。

形式驗證:模型檢驗是一種形式驗證方法;它通常涉及執(zhí)行狀態(tài)空間探索或可達性分析,以證明所表示的軟件設(shè)計具有或保留了某些感興趣的模型屬性。模型檢查的一個例子是在所有可能的事件或消息到達交叉情況下驗證正確的程序行為的分析。使用正式核證需要嚴格指定軟件模型及其運作環(huán)境;這個模型通常采用有限狀態(tài)機或其他正式定義的自動機的形式。

邏輯推理:邏輯推理是一種設(shè)計軟件的方法,它包括在設(shè)計的每個重要部分周圍指定前置條件和后置條件,并使用數(shù)學邏輯來證明這些前置條件和后置條件必須在所有輸入下都存在。這為軟件工程師在不執(zhí)行軟件的情況下預測軟件行為提供了一種方法。一些集成開發(fā)環(huán)境(ide)包括在設(shè)計或代碼的同時表示這些證明的方法。

4.3原型化方法

軟件原型是一個活動,通常創(chuàng)建不完整或最低限度功能版本的軟件應用程序,通常為特定的新特性,征求反饋軟件需求或用戶接口,進一步探索軟件需求,軟件設(shè)計,或?qū)崿F(xiàn)選項,和/或獲得其他一些有用的洞察軟件。軟件工程師首先選擇一種原型方法來理解軟件中最不被理解的方面或組件;這種方法與其他軟件工程方法形成對比,后者通常首先從最容易理解的部分開始開發(fā)。通常,如果不進行大量的開發(fā)重做或重構(gòu),原型產(chǎn)品不會成為最終的軟件產(chǎn)品。

本節(jié)簡要討論原型風格、目標和評估技術(shù)。原型風格:這解決了開發(fā)原型的各種方法。原型可以被開發(fā)為一次性代碼或紙制品,作為工作設(shè)計的演變,或作為可執(zhí)行的規(guī)范。每種風格通常使用不同的原型生命周期過程。選擇的風格基于項目需要的結(jié)果類型、需要的結(jié)果的質(zhì)量和結(jié)果的緊迫性。

原型目標:原型活動的目標是原型工作所服務的特定產(chǎn)品。原型化目標的例子包括需求規(guī)范、架構(gòu)設(shè)計要素或組件、算法或人機用戶接口。

原型評估技術(shù):一個原型可以由軟件工程師或其他項目利益攸關(guān)方以多種方式使用或評估,主要是由最初導致原型開發(fā)的潛在原因驅(qū)動的。原型可以根據(jù)實際實現(xiàn)的軟件或一組目標需求(例如,一個需求原型)來評估或測試;原型還可以作為未來軟件開發(fā)工作的模型(例如,在用戶接口規(guī)范中)。

4.4敏捷方法

敏捷方法誕生于20世紀90年代,當時人們需要減少大型軟件開發(fā)項目中使用的重量級的、基于計劃的方法所帶來的巨大開銷。敏捷方法被認為是輕量級的方法,因為它們的特點是短的、迭代的開發(fā)周期、自組織的團隊、更簡單的設(shè)計、代碼重構(gòu)、測試驅(qū)動開發(fā)、頻繁的客戶參與,以及強調(diào)在每個開發(fā)周期中創(chuàng)建可演示的工作產(chǎn)品。

文獻中有許多敏捷方法;這里簡要討論一些比較流行的方法,包括快速應用程序開發(fā)(RAD)、極限編程(XP)、SCRum和功能驅(qū)動開發(fā)(FDD)。

RAD:快速軟件開發(fā)方法主要用于數(shù)據(jù)密集型的業(yè)務系統(tǒng)應用程序開發(fā)。RAD方法通過軟件工程師使用的專用數(shù)據(jù)庫開發(fā)工具來實現(xiàn),這些工具用于快速開發(fā)、測試和部署新的或修改過的業(yè)務應用程序。

XP:這種方法使用需求的事例或場景,首先開發(fā)測試,讓客戶直接參與到團隊中(通常定義驗收測試),使用成對編程,并提供持續(xù)的代碼重構(gòu)和集成。故事被分解為任務、劃分優(yōu)先級、評估、開發(fā)和測試。軟件的每一個增量都通過自動化和手工測試進行測試;一個增量可能會被頻繁地釋放,比如每隔幾周左右。

SCRum:這種敏捷方法比其他方法對項目管理更友好。SCRum管理員管理項目增量中的活動;每個增量稱為沖刺,持續(xù)時間不超過30天。產(chǎn)品待辦事項列表(PBI)是根據(jù)任務來確定、定義、排序和評估的。在每個增量中測試并發(fā)布軟件的工作版本。每日SCRum會議確保工作按照計劃進行。

FDD:這是一種模型驅(qū)動的、短的、迭代的軟件開發(fā)方法,使用一個五階段過程:

(1) 開發(fā)一個產(chǎn)品模型來擴大領(lǐng)域的范圍,

(2) 創(chuàng)建需求或功能列表,

(3) 構(gòu)建功能開發(fā)計劃,

(4)開發(fā)針對特定于迭代的功能的設(shè)計,以及

(5)代碼、測試、功能集成。

FDD類似于增量式軟件開發(fā)方法;它也類似于XP,除了代碼所有權(quán)被分配給個人而不是團隊。FDD強調(diào)軟件的整體架構(gòu)方法,它促進在第一次就正確地構(gòu)建特性,而不是強調(diào)持續(xù)的重構(gòu)。

在文獻和實踐中還有許多敏捷方法的變體。請注意,重量級的、基于計劃的軟件工程方法和敏捷方法一樣都有一席之地。有一些新方法是從敏捷方法和基于計劃的方法的組合中產(chǎn)生的,從業(yè)者正在定義新的方法,這些方法主要基于當前的組織業(yè)務需求來平衡重量級和輕量級方法所需的特性。這些業(yè)務需求,通常由一些項目利益攸關(guān)方所代表,應該并且確實推動選擇使用一種軟件工程方法而不是另一種,或者從軟件工程方法組合的最佳特性中構(gòu)建一種新方法。

責任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 計算機
    +關(guān)注

    關(guān)注

    19

    文章

    7625

    瀏覽量

    90070
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    5114

    瀏覽量

    88888

原文標題:軟件工程方法

文章出處:【微信號:gh_ad43aef0e0b3,微信公眾號:樹根互聯(lián)VS物聯(lián)網(wǎng)VS數(shù)據(jù)應用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    北京做軟件的公司哪些?北京哪些做軟件的公司

    軟件
    北京華盛恒輝科技
    發(fā)布于 :2025年04月29日 11:37:05

    如何成為一名嵌入式軟件工程師?

    、Java等)和軟件開發(fā)工具,還需要對硬件的工作原理深入的理解。 在團隊中,嵌入式軟件工程師往往扮演著核心角色,他們的工作直接關(guān)系到產(chǎn)品的性能、穩(wěn)定性和用戶體驗。 02掌握核心技能與知識
    發(fā)表于 04-15 14:37

    軟件工程師學習硬件原理圖--第一講看懂GPIO和門電路

    開篇引言:開這個的原因是因為,對于一個從小搞軟件,除了電容,電阻,還有用過藍福電池、奧迪雙鉆電池的我,真一直都搞求不懂這些硬件原理圖,所以對于FPGA工程師來說,至少你得會看原理圖吧,原理圖都不會
    的頭像 發(fā)表于 03-05 19:33 ?346次閱讀
    <b class='flag-5'>軟件工程</b>師學習硬件原理圖--第一講看懂GPIO和門電路

    嵌入式軟件工程師就業(yè)好不好?

    嵌入式軟件工程師就業(yè)好不好?會不會越老越吃香?今天一起來看看。 首先看下市場需求。 隨著物聯(lián)網(wǎng)、人工智能、5G等前沿技術(shù)的快速發(fā)展,嵌入式系統(tǒng)的應用領(lǐng)域不斷擴大,從智能家居、汽車電子到工業(yè)自動化
    發(fā)表于 02-20 10:19

    在Linux下安裝軟件哪些方法

    在Linux下安裝軟件,可以哪些方法? 首先是最簡單的,使用軟件包管理工具。 如果是ubuntu或者debian系統(tǒng),可以使用apt;如果是紅帽或者centos,可以使用yum。 所
    的頭像 發(fā)表于 02-08 09:41 ?487次閱讀

    Testin云測獲智能化軟件工程工作組優(yōu)秀單位榮譽

    隨著人工智能技術(shù)的深度應用,大模型等AI技術(shù)在推動軟件行業(yè)智能化進程中的重要性日益凸顯。軟件工程,作為大模型、智能體等AI技術(shù)落地應用的前沿領(lǐng)域,正加速推進智能化轉(zhuǎn)型。在這場變革中,企業(yè)、科研機構(gòu)以及眾多行業(yè)專家紛紛投身其中,共同探索智能化
    的頭像 發(fā)表于 01-21 10:46 ?302次閱讀

    AB伺服軟件使用方法

    AB伺服軟件使用方法
    發(fā)表于 12-24 14:45 ?0次下載

    特斯拉招募軟件工程師強化無人駕駛與機器人遠程操作

    近日,據(jù)外媒最新報道,特斯拉正緊鑼密鼓地招募軟件工程師團隊,旨在加強其無人駕駛出租車及Optimus機器人的遠程操作能力。這一舉措標志著特斯拉在推動自動駕駛與人工智能領(lǐng)域邁出了重要一步。 特斯拉此次
    的頭像 發(fā)表于 11-27 10:26 ?893次閱讀

    基于FPA的軟件工作量綜合評估研究與實踐

    軟件工程監(jiān)理項目中如何對軟件開發(fā)系統(tǒng)進行工作量評估,如何在實施過程中對承建單位已完成的工作量進行審核是實施信息化項目的難題。本文在分析專家經(jīng)驗評估法、FPA功能點分析法等方法的基礎(chǔ)上,給出了一種
    發(fā)表于 10-15 10:45 ?0次下載

    【「數(shù)字IC設(shè)計入門」閱讀體驗】+ 概觀

    寄存器、控制芯片運行狀態(tài),這些開發(fā)都是基于芯片提供的功能進行操作的,軟件工程師根據(jù)數(shù)據(jù)手冊對芯片進行操作,這些操作都是套路的,這些套路是芯片設(shè)計好的,軟件工程師無法更改,感覺芯片內(nèi)部的運行過程真的很
    發(fā)表于 09-24 10:58

    嵌入式軟件開發(fā)招聘

    本帖最后由 jf_19082533 于 2024-7-26 13:56 編輯 尋求:嵌入式軟件工程師 要求:3年以上開發(fā)經(jīng)驗,音視頻領(lǐng)域應用層開發(fā) 地址:北京市昌平區(qū) 郵箱:1017933921@qq.com 歡迎廣大感興趣的朋友約聊。
    發(fā)表于 07-26 13:44

    電磁仿真軟件哪些常用的方法

    電磁仿真軟件是一種用于模擬和分析電磁場行為的計算工具,廣泛應用于電子、通信、電力、航空航天等領(lǐng)域。本文將介紹電磁仿真軟件的常用方法。 有限元法(Finite Element Method, FEM
    的頭像 發(fā)表于 07-12 10:02 ?1785次閱讀

    嵌入式軟件工程師如何提升自己?

    嵌入式軟件工程師如何提升自己? 作為一名嵌入式軟件工程師,在這個充滿機遇和挑戰(zhàn)的領(lǐng)域里,如何提升自己顯得非常重要,它決定了你未來的發(fā)展方向和成就。接下來,我們一起探討一下。 1.奠定扎實
    發(fā)表于 06-12 11:20

    從事嵌入式方向,一定要軟硬件通吃?

    在嵌入式系統(tǒng)開發(fā)領(lǐng)域,軟件和硬件的界限常常模糊不清。一個常見的問題是,嵌入式軟件工程師是否需要了解硬件。本文將探討這一問題的重要性,并分析嵌入式軟件工程師掌握硬件知識對項目開發(fā)的影響。一、嵌入式
    的頭像 發(fā)表于 06-05 08:10 ?1630次閱讀
    從事嵌入式方向,一定要軟硬件通吃?