1.結構化方法:分析,設計,程序設計構成,面向數據流的開發(fā)方法,分解和抽象的原則,數據流圖建立功能模型,完成需求分析工作。
2.Jackson方法:面向數據結構開發(fā)方法。數據結構為驅動,適合小規(guī)模的項目,當輸入數據結構和輸出結構之間沒有對應關系,難用此方法,JSD(Jackson Structure Prograamming)是JSP(JacksonSystem Development)的擴充
3.原型化方法:和演化模型相對應,需求不清,業(yè)務理論不確定,需求經常變化,規(guī)模不大去不太復雜時采用。
4.面向對象開發(fā)方法:分析,設計,實現,Booch,Coad,OMT,為統(tǒng)一各種面向對象方法的術語,概念和模型,推出UML (Unified Modeling Language)統(tǒng)一化建模語言,成為工業(yè)標準。
軟件開發(fā)的內容是:需求、設計、編程和測試!
需求:不僅僅是用戶需求,應該是開發(fā)中遇到的所有的需求。比如,你首先要知道做這個項目是為了解決什么問題;測試案例中應該輸入什么數據……為了清楚地知道這些需求,你經常要和客戶、項目經理等交流。
設計:編碼前,肯定有個計劃告訴你要做什么,結構是怎樣等等。你一定要按照這個來做,否則可能會一團糟。
編程:如果在項目截止日,你的程序不能跑起來或達不到客戶的要求,你就拿不到錢。
測試:目的是讓你知道,什么時候算是完成了。如果你聰明,你就應該先寫測試,這樣可以及時知道你是否真地完成了。否則,你經常會不知道,到底有哪些功能是真正完成了,離預期目標還差多遠。
軟件開發(fā)中,客戶和開發(fā)人員都有自己的基本權利和義務。
客戶:
定義每個用戶需求的商業(yè)優(yōu)先級;
制訂總體計劃,包括用多少投資、經過多長時間、達到什么目的;
在項目開發(fā)過程中的每個工作周,都能讓投資獲得最大的收益;
通過重復運行你所指定的功能測試,準確地掌握項目進展情況;
1.結構化方法:分析,設計,程序設計構成,面向數據流的開發(fā)方法,分解和抽象的原則,數據流圖建立功能模型,完成需求分析工作。
2.Jackson方法:面向數據結構開發(fā)方法。數據結構為驅動,適合小規(guī)模的項目,當輸入數據結構和輸出結構之間沒有對應關系,難用此方法,JSD(Jackson Structure Prograamming)是JSP(JacksonSystem Development)的擴充3.原型化方法:和演化模型相對應,需求不清,業(yè)務理論不確定,需求經常變化,規(guī)模不大去不太復雜時采用。
4.面向對象開發(fā)方法:分析,設計,實現,Booch,Coad,OMT,為統(tǒng)一各種面向對象方法的術語,概念和模型,推出UML (Unified Modeling Language)統(tǒng)一化建模語言,成為工業(yè)標準。
你說的是方法還是模式,如果是模式,有以下三種
瀑布模型(Waterfall Model)是一個項目開發(fā)架構,瀑布模型核心思想是按工序將問題化簡,將功能的實現與設計分開,便于分工協(xié)作,即采用結構化的分析與設計方法將邏輯實現與物理實現分開。
1、瀑布模型有以下優(yōu)點
1)為項目提供了按階段劃分的檢查點。
2)當前一階段完成后,您只需要去關注后續(xù)階段。
3)可在迭代模型中應用瀑布模型。
增量迭代應用于瀑布模型。迭代1解決最大的問題。每次迭代產生一個可運行的版本,同時增加更多的功能。每次迭代必須經過質量和集成測試。
2、瀑布模型有以下缺點
1)在項目各個階段之間極少有反饋。
2)只有在項目生命周期的后期才能看到結果。
3)通過過多的強制完成日期和里程碑來跟蹤各個項目階段。
盡管瀑布模型招致了很多批評,但是它對很多類型的項目而言依然是有效的,如果正確使用,可以節(jié)省大量的時間和金錢。
面向對象這個概念很抽象。不過我覺得是3者當中最適合于軟件系統(tǒng)的開發(fā)。
每個人對于面向對象這個概念的看法都有點不同,開發(fā)的系統(tǒng)越多,對于面向對象這個概念就理解的越深刻。有關于面向對象的解釋,你可以參考下這個:?wtp=tt
原型模型的特點:
(1)開發(fā)人員和用戶在“原型”上達成一致。這樣一來,可以減少設計中的錯誤和開發(fā)中的風險,也減少了對用戶培訓的時間,而提高了系統(tǒng)的實用、正確性以及用戶的滿意程度。
(2)縮短了開發(fā)周期,加快了工程進度。
(3)降低成本。
原型模型的缺點:
當告訴用戶,還必須重新生產該產品時,用戶是很難接受的。這往往給工程繼續(xù)開展帶來不利因素。
不宜利用原型系統(tǒng)作為最終產品。采用原型模型開發(fā)系統(tǒng),用戶和開發(fā)者必須達成一致:原型被建造僅僅是用戶用來定義需求,之后便部分或全部拋起,最終的軟件是要充分考慮了質量和可維護性等方面之后才被開發(fā)。
軟件工程的方法有很多方面的意義。包括專案管理,分析,設計,程序的編寫,測試和質量控制。
軟件設計方法可以區(qū)別為重量級的方法和輕量級的方法。重量級的方法中產生大量的正式文檔。
著名的重量級開發(fā)方法包括ISO9000,CMM,和統(tǒng)一軟件開發(fā)過程(RUP)。
輕量級的開發(fā)過過程沒有對大量正式文檔的要求。著名的輕量級開發(fā)方法包括極限編程(XP)和敏捷流程(AgileProcesses)。
分享到:
收藏推薦 軟件開發(fā)方法的研究在軟件工程中是很重要的一個方面。程序設計方法研究的是小規(guī)模程序設計,而軟件開發(fā)方法則是研究在大規(guī)模軟件的開發(fā)過程中如何組織、管理人員和資源、指導人們開發(fā)軟件系統(tǒng)的方法,本文對一些常用到的軟件開發(fā)方法做一個概述和比較。(反復);④真正實現。 (3)優(yōu)點:適應用戶需求的模糊不清和多變。 (4)局限性:必須有一定的工具和環(huán)境做為支撐的條件。結構化分析與設計方法(sA/sD) (l)基本思想:自頂向下按功能劃分系統(tǒng),逐步求精問題解,將軟件開發(fā)過程看做是軟件生命周期,建立瀑布模型。 該方法由DeMarco和You記。n公司提出并逐步使之完善。 (2)基本步驟:分析~設計~編碼~測試~運行/維護 (3)優(yōu)點:應用時間長、簡單、直觀、易于接受,已有了一定的應用基礎并開辟了應用市場。 (4)局限性:功能經常要變,難于適應變化要求;后期發(fā)現的錯誤維護代價太高;不支持開發(fā)的反復。
軟件開發(fā)一般分為五個階段:
1.問題的定義及規(guī)劃
此階段是軟件開發(fā)與需求放共同討論,主要確定軟件的開發(fā)目標及其可行性。
2.需求分析
在確定軟件開發(fā)可行性的情況下,對軟件需要實現的各個功能進行詳細需求分析。需求分析階段是一個很重要的階段,這一階段做的好,將為整個軟件項目的開發(fā)打下良好的基礎。“唯一不變的是變化本身”,同樣軟件需求也是在軟件愛你開發(fā)過程中不斷變化和深入的,因此,我們必須定制需求變更計劃來應付這種變化,以保護整個項目的正常進行。
3.軟件設計
此階段中偶要根據需求分析的結果,對整個軟件系統(tǒng)進行設計,如系統(tǒng)框架設計、數據庫設計等。軟件設計一般分為總體設計和詳細設計。還的軟件設計將為軟件程序編寫打下良好的基礎。
4.程序編碼
此階段是將軟件設計的結果轉化為計算機可運行的程序代碼。在程序編碼中必定要制定統(tǒng)一、符合標準的編寫規(guī)范。以保證程序的可讀性、易維護性。提高程序的運行效率。
5.軟件測試
在軟件設計完成之后要進行嚴密的測試,一發(fā)現軟件在整個軟件設計過程中存在的問題并加以糾正。整個測試階段分為單元測試、組裝測試、系統(tǒng)測試三個階段進行。測試方法主要有白盒測試和黑盒測試。
聲明:本網站尊重并保護知識產權,根據《信息網絡傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個月內通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學習鳥. 頁面生成時間:2.747秒