1. 程式人生 > >軟體工程總結——傳統軟體開發方法與面向物件開發方法的比較

軟體工程總結——傳統軟體開發方法與面向物件開發方法的比較

軟體開發是一門技術,它需要相應的理論、技術、方法、手段和工具來支援。就軟體開發技術的發展而言,主要經過了結構化開發方法和麵向物件的軟體開發方法。 

傳統軟體開發:

結構化開發方法:     

       結構化開發方法是最早最傳統的軟體開發方法,也是迄今為止資訊系統中應用最普遍、最成熟的一種,它引入了工程思想和結構化思想,使大型軟體的開發和程式設計都得到了極大的改善。結構化方法的基本思想可概括為:自頂向下、逐步分解。通常採用的模型也是瀑布模型。經歷以下過程:

結構化開發方法的缺點:

         1、重用性差:結構化分析與設計清楚的定義了系統的介面, 當系統對外界介面發生變動時,可能會造成系統結構產生較大變動, 難以擴充新的功能介面;

         2、軟體可維護性差:由於軟體的可修改性差,導致維護困難,造成維護時費用和成本高,可維護性變差;

     3、開發的軟體難以滿足使用者需要:用傳統的結構化方法開發大型軟體時,往往此係統涉及各種不同領域的知識,在開發需求模糊或需求不斷變化的系統時,所開發出的軟體系統往往不能真正滿足使用者的需要。

結構化開發的優點:

          1、從系統整體出發,強調在整體優化的條件下“自上而下”地分析和設計,保證了系統的整體性和目標的一致性;
       2、遵循使用者至上原則;
       3、嚴格區分系統開發的階段性,每一階段的工作成果是下一階段的依據,便於系統開發的管理和控制;
       4、文件規範化,按工程標準建立標準化的文件資料,便於軟體在以後的維護。

結構化開發方法的適用範圍:

         適用於規模較大、結構化程度較高的系統的開發。

面向物件開發方法:

        面向物件開發方法又稱為快速原型化, 客觀世界是由各種各樣的物件組成的,每種物件都有各自的內部狀態和運動規律,不同物件之間的相互作用和聯絡就構成了各種不同的系統。經歷以下過程:

    

面向物件開發的缺點:

            1、開發過程管理要求高,整個開發過程要經過“修改—評價—再修改”的多次反覆;
       2、使用者過早看到系統原型,誤認為系統就是就是這個模樣,易使使用者對軟體對公司失去信心;
       3、開發人員易將原型取代系統分析;缺乏規範化的文件資料,不利於以後的維護

面向物件開發的優點:

1、程式設計容易。因為面向物件更接近於現實,所以你可以從現實的東西出發,進行適當的抽象;

       2、面向物件可以使工程更加模組化,實現更低耦合高內聚思想;

       3、符合人們認識事物的規律,系統開發循序漸進,反覆修改,確保較好的使用者滿意度。

面向物件開發的適用範圍:

       處理過程明確,簡單的系統;涉及面窄的小型系統;不適合於大型、複雜系統,存在大量運算、邏輯性強的處理系統