【軟件定制開(kāi)發】軟件開(kāi)發方法有哪些(爸有一(yī))


作者:紅掌網絡   &nbs關行p;訪問量:506   文森 發布時間:2020-05-25 07:22


軟件開(kāi)發方法有哪些(一(yī))八種方法
【提綱】在軟件開(kāi)發時期中(zhōng)相明,設計階段是最富有活力、最需要發揮創造精神的階段。本文通過對常用幾種軟器音件設計方法的研究,對軟件的開(kāi)發有進一(yī)步的認識知文。同時,也能通過對比得出哪些設計方法對某一(yī)軟件的開(kāi)發他上有更大(dà)的優勢,可以更好的指導我(w她章ǒ)(wǒ)們實踐。
【關鍵字】軟件開(kāi)發方法、常用軟件設計方法
一(yī)、引言
在軟件開(kāi)發時期中(zhōng),設計階段是最富有活力、最需去厭要發揮創造精神的階段,軟件設計方法對軟件的玩中開(kāi)發以及投放(fàng)市場有着重大年要的作用。在日常生(shēng)活中(zhōng),常用的軟件工(討樹gōng)程設計方法有Parnas方法、Jackson 能森(JSP/JSD) 方法、問題分(fēn)析方法(從來PAM)、面向對象的軟件開(kāi)發方法兵森(OO)、形式化方法、可視化方法、軟件重用。下中金(xià)面對這幾種方法進行分(fēn)析研究姐技。
(In software development, the de些黃sign phase is the most dynamic and mo答明st need to play a creative stage,月花 the software design m吃能ethod of software development and美匠 the market plays an important role. I好從n daily life, the commonly短吧 used software engineering design me身你thod with Parnas, Jackso腦視n (JSP/JSD) method, the proble上木m analysis method (PAM), object orient科事ed (OO) software developmen通外t methods, formal methods, visualizatio票區n methods and software reuse. In the f個司ace of this paper studied the 歌見several methods.)
軟件開(kāi)發方法有哪些之-Parnas方法
最早軟件開(kāi)發方法是由D.Parnas在1972年提出。由于當時軟美用件在可維護性和可靠性方面存在着嚴重問題,因此Parnas提出的方法是針對這兩我說個問題的。首先,Parnas提出了信息隐蔽原則:在概要設計時列出将來可能黑哥發生(shēng)變化的因素,并在模塊劃分(fēn)時将這些因素放(fà物劇ng)到個别模塊的内部。這樣,在将來由于這些因素變化而需厭雪修改軟件時,隻需修改個别的模塊,其它模塊不受影響。信息隐蔽技術不僅現現提高了軟件的可維護性,而且也避免了錯誤的蔓延,改善了影討軟件的可靠性。現在信息隐蔽原則已成為軟件工(gō上場ng)程學中(zhōng)的一(yī)條重要原則。P拿人arnas提出第二條原則是在軟件設計時應對間跳可能發生(shēng)的種種意外(wài)故障采取措施。軟件是高科很脆弱的,很可能因為一(yī)個微小(xiǎo)腦暗的錯誤而引發嚴重的事故,所以必須加強防範。如在分(藍間fēn)配使用設備前,應該取設備狀态字,檢查設備是秒街否正常。此外(wài),模塊之間也要加強檢查,防止錯誤蔓延年河。Parnas對軟件開(kāi)發提出了深刻的見解。遺憾的是,他沒有給出愛關明确的工(gōng)作流程。所以這一(yī)方法不能獨立使用,隻科水能作為其它方法的補充。
軟件開(kāi)發方法有哪些之-Jackson (JS拿吧P/JSD) 方法
1975年,M.A.Jackson提出了一(訊來yī)類至今仍廣泛使用的軟件開(kāi)發方法。這一(yī)方法從目大歌标系統的輸入、輸出數據結構入手,導出程序框木下架結構,再補充其它細節,就可得到完整的程序結構圖。這一(自習yī)方法對輸入、輸出數據結構明确的中(zhōng)小(xiǎo)學去型系統特别有效,如商(shāng)業應用中(zhōng)的文件表綠子格處理。該方法也可與其它方法結合,用于模塊的詳細設計。Jacks靜國on方法有時也稱為面向數據結構的軟件設計方法。一(yī)般通過以下(xià)線男五個步驟來完成設計:1分(fēn)析并确定輸入數據和輸出數靜器據的邏輯結構,并用Jackson結構圖來表不子示這些數據結構。2找出輸入數據結構和輸出數據結構中(zh影現ōng)有對應關系的數據單元。3按以下(xià)的規則由輸入、輸出的數據結懂影構導出程序結構。1)為每一(yī)對在輸入數據結構和輸出數據結構中(zhōng窗上)有對應關系的單元畫一(yī)個處理框。2)為輸入和輸出數據結構中(來吧zhōng)剩餘的數據單元畫一(yī)個處理框。討風3)所有處理框在程序結構圖上的位置,應與由它處理的數據單元在數據結構J雨拍ackson圖上的位置一(yī)緻。4)必要時畫資,可以對映射導出的程序結構圖進行進一(yī)步的細化到書。4列出基本操作與條件,并把它們分(fēn)配到程序結構圖的适當位置。5用線唱僞碼寫出程序。
3.1 JSP方法
JSP方法是傑克遜結構程序設計方法,是一(yī)種視做典型的面向數據結構的分(fēn)析和設計的方法。其主要設計思小暗想是按輸入、輸出和内部信息的數據結構進行軟件設計的,把數據結構的描述變換成坐飛程序結構的描述,設計出反映數據結構的程序結構。JSP她看 方法将問題分(fēn)解為順序、選擇和重複三種基本結構形式表示就低的層次結構如圖1 所示。這樣對一(yī)購計個要解決的問題,總是要把解的結構設計成同問題的結構一(yī)樣,使程序既容易機紅理解,又(yòu)容易修改以滿足将來問題的變化。
JSP方法首先考察問題的環境,分(fēn)析所要處理的數據,作出數據結構圖及圖東文示邏輯;再以數據結構為基本點形成程序結構;最後列出進行處理所需要的基本操作,并用習把這些操作分(fēn)配給程序結構中(zhōng)的适當部分(fēn)。
JSP 方法的優點是客觀,不依賴于設計者自己的創造和經驗,不同的設計者可以設計靜行出同樣的解。簡單易學,用JSP 圖示邏輯可以很容易地導出Cobol程序,目技銀前已研制出從JSP方法設計的結構自動導出Cobol 程藍拍序的工(gōng)具。雖然JSP方法簡單他大易學,步驟規範,但也存在着一(yī)些局限性,最大(dà)的不足是當軟通一件系統的規模龐大(dà)時,輸入和輸出之間就會出現大(dà)量複雜(zá)月人的信息,JSP 方法難于對付的結構沖突問題。可以利用中(zhōng子她)間文件解決沖突,但它明顯降低了功效,而且美中從概念上說中(zhōng)間文件也是不必要的;随着軟件系門湖統規模的增大(dà),且結構沖突的可能性及解決沖突的算業聽法複雜(zá)性亦随之增大(dà)。因此JSP 的間方法隻适用于小(xiǎo)型程序的開(kāi房間)發,隻是一(yī)種程序設計方法,并不适用和城于解決大(dà)型軟件的開(kāi)發問題。
(JSP method has the advantage票睡 of objective, is not dependent 快工on the designer's own creation and 微動experience, different designers can des學冷ign the same solution. Easy 相裡to learn, use JSP graphic logic can b用一e easily exported Cobol progr煙如am, has now develope農雪d the Cobol program is derived autom錢務atically from the JSP method to 女年design the structure of the tool. A是能lthough JSP method is e們東asy to learn, step standard, but th道請ere are also some limitations an麗女d the shortage of the biggest 行用is that when large software syst農能em, between the input and outpu船亮t will appear a large number of complex聽工 information, JSP meth男吧od is difficult to deal分信 with the structure of the con睡分flict. Can take advantage o相房f the intermediate fil物計e conflict resolution, but it sign音下ificantly reduces the effect, and 費老conceptually intermediate file is unne那聽cessary; With the inc鄉筆reasing scale of software system, a站妹nd the structure of the possibility of關長 conflict and conflict resolution站鐘 algorithm complexity also increase. 科月So the JSP method applies又我 only to the development of smal議筆l procedures, is a kind o們習f programming method, does not appl都風y to solve the problem of 聽內large-scale software de雪愛velopment.)
3.2 JSD方法
JSD方法是傑克遜系統開(kāi)發方法,它以活動(即事件)為相工中(zhōng)心,一(yī)連串活動的順序組合聽南構成進程,系統模型抽象為一(yī)組以通信方式互相聯系的還區進程。JSD方法的基本思想是仿真并描述客觀世界街短,然後添加輸出功能,最後實現系統的轉換。它的基本步驟可分(f一農ēn)為六步,一(yī)是實體(tǐ)動作分(fēn)析,從問題的描視討述中(zhōng),提取軟件系統要産生(shēng)和司國運用的實體(tǐ)(人、物(wù)或組織) ,以及現實世界作用于實喝白體(tǐ)上的動作(事件);二是實體(tǐ)結構湖亮分(fēn)析,把作用于實體(tǐ)的動作或由實體(tǐ)樂木執行的動作,按時間發生(shēng)的先後次序排序,構成進程,并用一(yī)鐘行個層次的Jackson結構圖表示;三是定義初始模型步,把實體南紙(tǐ)和動作表示成一(yī)個進程模型,定義模型與暗時現實世界的聯系。模型系統的規格說明可用系統規格說明圖來表示;四是美慢功能描述,說明與已定義的動作相對應的功能,長議為已定義的動作加入功能函數;五是決定系統討相時間特性,對進程加入時間因素,對進程調度特性進行評價和說明;六是實現,設光短計組成系統的硬件和軟件,實現系統的原型。前三步屬于需求分(fēn)析階段,就上後三步屬于設計階段。
JSD方法開(kāi)創性地進行了客觀世界及其同軟件間關系的研究;明确了軟件年高系統說明決策同軟件系統實現決策的界限;做亮窗出容易的決策應該先于困難的決策;應當盡可能推遲最容易導緻錯誤的決策;含蓄的決策學村應當避免,不應有隐含的約定存在;如果一(yī)個決開見策易于出錯,應當盡早證實它的正确性;應當盡可能使決策之間沒有依賴關系,使它們互姐熱不相關。其局限性是客觀世界及其同軟件間關系的認識不完整市吃;軟件系統實現結構過于複雜(zá);軟件說明結構的描述技術不恰當;J歌習SD 中(zhōng)并不包含諸如選題,計劃管理,代價P收益分家動(fēn)析等内容,也不包含實施環境問題的研究内區市容,這在一(yī)定程度上影響了它的推廣應用;JSD 在實現階段所兒件做的變換十分(fēn)費(fèi)勁,以山個緻利用人的智力進行變換難以保證其有效性和可靠性離了,且變換的選擇又(yòu)過于複雜(zá),目前仍無法用計算筆風機自動實現。
以上就是給大(dà)家介紹的二種軟件開(kāi)發方法,Par師信nas方法,Jackson (JSP/JSD) 方法。在下(xià)面的明術文章中(zhōng)将介紹其餘的六個軟件開(kāi)林日發方法。