




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1.3軟件開發(fā)方法概述
軟件開發(fā)方法是一種使用早已定義好的技術(shù)集及符號表示習(xí)慣來組織軟件生產(chǎn)過程的方法。其方法一般表述成一系列的步驟,每一步驟都與相應(yīng)的技術(shù)和符號相關(guān)。
軟件開發(fā)的目標(biāo)是在規(guī)定的投資和時間內(nèi),開發(fā)出符合用戶需求的高質(zhì)量的軟件。為了達(dá)到此目的,需要有成功的開發(fā)方法。
軟件開發(fā)方法是克服軟件危機(jī)的重要方面之一。在20世紀(jì)60年代,由于對軟件開發(fā)方法重視不夠,解決軟件復(fù)雜性的能力不夠,因而軟件開發(fā)方法成為軟件危機(jī)的原因之一。因此,自軟件工程誕生以來,人們重視軟件開發(fā)方法的研究,已經(jīng)提出了多種軟件開發(fā)方法和技術(shù),對軟件工程及軟件產(chǎn)業(yè)的發(fā)展起到了不可估量的作用。1.3.1結(jié)構(gòu)化方法
結(jié)構(gòu)化方法由結(jié)構(gòu)化分析、結(jié)構(gòu)化設(shè)計和結(jié)構(gòu)化程序設(shè)計構(gòu)成。它是一種面向數(shù)據(jù)流的開發(fā)方法。該方法簡單實(shí)用,應(yīng)用較廣,技術(shù)成熟。
所謂結(jié)構(gòu)化分析,就是根據(jù)分解與抽象的原則,按照系統(tǒng)中數(shù)據(jù)處理的流程,用數(shù)據(jù)流圖來建立系統(tǒng)的功能模型,從而完成需求分析。所謂結(jié)構(gòu)化設(shè)計,就是根據(jù)模塊獨(dú)立性準(zhǔn)則、軟件結(jié)構(gòu)準(zhǔn)則,將數(shù)據(jù)流圖轉(zhuǎn)換為軟件的體系結(jié)構(gòu),用軟件結(jié)構(gòu)圖來建立系統(tǒng)的物理模型,實(shí)現(xiàn)系統(tǒng)的概要設(shè)計。所謂結(jié)構(gòu)化程序設(shè)計,就是根據(jù)結(jié)構(gòu)程序設(shè)計原理,將每個模塊的功能用相應(yīng)的標(biāo)準(zhǔn)控制結(jié)構(gòu)表示出來,從而實(shí)現(xiàn)詳細(xì)設(shè)計。1.3.1結(jié)構(gòu)化方法
結(jié)構(gòu)化方法總的指導(dǎo)思想是自頂向下、逐步求精。它的基本原則是功能的分析與抽象。它是軟件工程中最早出現(xiàn)的開發(fā)方法,特別適合于數(shù)據(jù)處理領(lǐng)域的問題。相應(yīng)的支持工具較多,發(fā)展較為成熟。結(jié)構(gòu)化方法對于規(guī)模大的項目及特別復(fù)雜的項目不太適應(yīng),該方法難以解決軟件重用問題,難以適應(yīng)需求變化的問題,難以徹底解決維護(hù)問題。
結(jié)構(gòu)化方法的詳細(xì)介紹見第8章。Jackson方法是一種面向數(shù)據(jù)結(jié)構(gòu)的開發(fā)方法。一個問題的數(shù)據(jù)結(jié)構(gòu)與處理該數(shù)據(jù)結(jié)構(gòu)的控制結(jié)構(gòu)往往有驚人的相似之處,根據(jù)這一思想形成了最初的JSP(JacksonStructureProgramming)方法。JSP方法首先描述問題的輸入、輸出數(shù)據(jù)結(jié)構(gòu),分析其對應(yīng)性,然后推出相應(yīng)的程序結(jié)構(gòu),從而給出問題的軟件過程描述。JSP方法是以數(shù)據(jù)結(jié)構(gòu)為驅(qū)動的,適合于小規(guī)模的項目。當(dāng)輸入數(shù)據(jù)結(jié)構(gòu)與輸出數(shù)據(jù)結(jié)構(gòu)無對應(yīng)關(guān)系時,難以應(yīng)用該方法。基于JSP方法的局限性,又發(fā)展了JSD(JacksonSystemDevelopment)方法,它是JSP方法的擴(kuò)充。1.3.2Jackson方法1.3.2Jackson方法JSD方法是一個完整的系統(tǒng)開發(fā)方法。該方法首先建立現(xiàn)實(shí)世界的模型,再確定系統(tǒng)的功能需求,對需求的描述特別強(qiáng)調(diào)了操作之間的時序性,它以事件作為驅(qū)動,是一種基于進(jìn)程的開發(fā)方法,應(yīng)用于時序特點(diǎn)較強(qiáng)的系統(tǒng),包括數(shù)據(jù)處理系統(tǒng)和一些實(shí)時控制系統(tǒng)。JSD方法對客觀世界及其同軟件之間的關(guān)系認(rèn)識不完整,所確立的軟件系統(tǒng)實(shí)現(xiàn)結(jié)構(gòu)過于復(fù)雜,軟件結(jié)構(gòu)說明的描述采用第三代語言,這不利于軟件開發(fā)者對系統(tǒng)的理解及開發(fā)者之間的通信交流,這些缺陷在很大程度上限制了人們實(shí)際運(yùn)用JSD方法的熱情。1.3.3維也納開發(fā)方法(VDM)
維也納開發(fā)方法(即VDM),自20世紀(jì)70年代初提出以來,已形成一種對大型系統(tǒng)軟件形式化開發(fā)的較有潛力的方法,在歐洲及北美有相當(dāng)大的影響,到20世紀(jì)80年代已將它應(yīng)用到工程開發(fā)上。VDM是在1969年為開發(fā)PL/1語言時,由IBM公司維也納實(shí)驗室的研究小組提出的,當(dāng)時遇到的問題是如何對大型高級語言盡快用形式化說明來開發(fā)編譯系統(tǒng),使語法、語義的定義更嚴(yán)密、更系統(tǒng)化,從軟件系統(tǒng)最高一級抽象到最終目標(biāo)代碼生成,每一步都給出形式化說明。VDM是一種形式化的開發(fā)方法,軟件的需求用嚴(yán)格的形式語言描述,把描述模型逐步變換成目標(biāo)系統(tǒng)。VDM方法是在VDL的基礎(chǔ)上擴(kuò)充而來的,當(dāng)時用它來形式定義PL/1的一個真子集。VDM是一個基于模型的方法,它的主要思想是:將軟件系統(tǒng)當(dāng)作模型來給予描述,具體說就是把軟件的輸入/輸出看作模型對象,而這些對象在計算機(jī)中的狀態(tài)可看作為該模型在對象上的操作。1.3.3維也納開發(fā)方法(VDM)1.3.3維也納開發(fā)方法(VDM)VDM從抽象說明開始,對軟件系統(tǒng)功能條件給出定義,對其輸入/輸出用不同的數(shù)學(xué)域進(jìn)行分類定義,這稱為語法域說明。具體說明對象的真正含義,稱為語義域說明。對系統(tǒng)在計算機(jī)內(nèi)的狀態(tài)進(jìn)行描述,稱為加工函數(shù)(或語義函數(shù))。前面的語義域和語法域都是用數(shù)學(xué)的域方程表示的,而加工函數(shù)是用數(shù)學(xué)函數(shù)形式表示的,所以VDM的軟件系統(tǒng)模型是代數(shù)式的說明。1.3.3維也納開發(fā)方法(VDM)
VDM的每步開發(fā)借助于其強(qiáng)有力的描述工具語言Meta-IV。VDM方法到20世紀(jì)70年代末得到進(jìn)一步的鞏固,開始在歐洲廣泛應(yīng)用,先是應(yīng)用于開發(fā)程序語言的語義形式說明,以后變成一般軟件的開發(fā)方法。這方面主要貢獻(xiàn)是CliffJones和DinesBjorner,他們開辟了許多新領(lǐng)域的應(yīng)用。
丹麥有一個專門研究VDM的信息中心,該中心研制了許多支撐VDM的工具,開發(fā)并發(fā)通信進(jìn)程,并用VDM實(shí)現(xiàn)了對Ada語言的整個開發(fā)過程的描述。1.3.4面向?qū)ο蟮拈_發(fā)方法
面向?qū)ο箝_發(fā)方法的基本出發(fā)點(diǎn)是盡可能按照人類認(rèn)識世界的方法和思維方式來分析和解決問題。客觀世界是由許多具體的事物、事件、概念和規(guī)則組成的,這些均可看成對象。面向?qū)ο蠓椒ㄕ且詫ο笞鳛樽罨镜脑兀彩欠治鰡栴}、解決問題的核心。由此可見,面向?qū)ο蠓椒ǚ先祟惖恼J(rèn)識規(guī)律。計算機(jī)實(shí)現(xiàn)的對象與真實(shí)世界的對象有一一對應(yīng)的關(guān)系,不必做任何轉(zhuǎn)換,這就使面向?qū)ο笠子跒槿藗兯斫狻⒔邮芎驼莆铡?.3.4面向?qū)ο蟮拈_發(fā)方法
面向?qū)ο箝_發(fā)方法包括面向?qū)ο蠓治觥⒚嫦驅(qū)ο笤O(shè)計和面向?qū)ο髮?shí)現(xiàn)。面向?qū)ο箝_發(fā)方法有Booch方法、Coad方法和OMT方法等。為了統(tǒng)一各種面向?qū)ο蠓椒ǖ男g(shù)語、概念和模型,1997年推出了統(tǒng)一建模語言,即UML(UnifiedMod
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025管理人員崗前安全培訓(xùn)考試試題帶答案(培優(yōu)A卷)
- 2024-2025企業(yè)管理人員安全培訓(xùn)考試試題及參考答案【綜合卷】
- 2024-2025廠級職工安全培訓(xùn)考試試題a4版打印
- 2025建筑設(shè)備租賃合同范本2
- 2025遼寧省家庭居室裝飾裝修合同(LF)
- 2025專業(yè)版汽車租賃合同模板
- 2025資金協(xié)調(diào)項目居間合同
- 2025年石墨化工設(shè)備項目建議書
- 2025貸款服務(wù)合同范本
- 2025年石油產(chǎn)品添加劑:燃料油添加劑項目合作計劃書
- 滿堂腳手架計算書
- 01K403 風(fēng)機(jī)盤管安裝
- 藥理學(xué)教學(xué)課件:抗流感病毒藥
- 2023年承德縣小升初英語考試題庫及答案解析
- 2023年大學(xué)生《思想道德與法治》考試題庫附答案(712題)
- GB/T 7705-2008平版裝潢印刷品
- GB/T 41326-2022六氟丁二烯
- 廣西玉林市容縣十里中學(xué)九年級化學(xué) 酸堿鹽復(fù)習(xí)課件 人教新課標(biāo)版
- 鏟車三個月、半年、年保養(yǎng)記錄(新)
- 腦電圖(圖譜)課件
- 《概率思想對幾個恒等式的證明(論文)9600字》
評論
0/150
提交評論