軟件工程階段性總結(一)——概述

           現階段正在看軟工視頻,大概看了十幾集。第一感覺就是亂,我相信很多人第一遍看過去的時候都理不清頭緒,很多的名詞和圖片,說的人天花亂墜。看完後感覺就像是狗熊掰棒子,掰一個扔一個,實在是讓人絕望。不過還好有米老師的那句話在支撐着我,記是記不住的,你看過一遍至少有個印象。況且裏面的一些知識理解不了也是正常的,這只是理論階段的學習,後面還要寫文檔,等用到的時候再回過頭來看一眼就可以了。隨着視頻集數的增加,難度也在變大,需要有前面的知識做基礎,所以,階段性的總結一下還是很有必要的。這樣到最後再大總結時也不會太喫力。

      (一)第一章 軟件工程學概述

            第一章主要是對軟件工程過程的概述,對於軟件的分類,軟件的特點,軟件的生存週期以及軟件開發的各種模型做了簡單的介紹。其中還闡述了什麼是軟件危機(指在計算機軟件的開發和維護過程中所遇到的一系列嚴重問題)以及解決軟件危機的有效途徑。除此之外還指明瞭軟件工程的最高目標:以較少的投資獲得易維護、易理解、可靠、高效率的軟件產品。

       其中我感覺比較重要的就是軟件開發模型,軟件開發模型是跨越整個軟件生存週期的系統開發、運行、維護所實施的全部工作和任務的結構框架。它涵蓋了軟件開發的6個生存週期:制定計劃、可行性研究及需求分析、軟件設計、編碼、測試和維護。比較常用的模型有5中:瀑布模型、原型模型、漸增模型、螺旋模型、噴泉模型。感覺其中最經典的就是瀑布模型那張圖,列出了軟件的生存週期和三個主要階段:

                      

       下面是幾種瀑布模型的對比:

       瀑布模型:是最傳統的模型,它的優點在於嚴格規定了每個階段必須要提交的文檔,是規範的、文檔驅動的方法。但這也是它的缺點,由於開發階段缺少和用戶的交流,與用戶見面晚,成功率較低。

       快速原型模型:爲了克服瀑布模型的缺點而提出來的。它通過快速構建一個原型系統,讓用戶試用原型並收集用戶反饋意見的辦法,獲取用戶的真實需求。一旦需求確定了,原型將被拋棄。

           增量模型(漸增模型):同樣是對於瀑布模型的改進,它能分批地逐步向用戶提交產品,整個軟件產品被分解成許多個增量構件。這樣能在較短時間內向用戶提交可完成部分工作的產品。它不同於快速原型的是:在把每個新的增量構件集成到現有軟件體系結構中時,不能破壞原來已經開發出的產品。

       螺旋模型:主要適用於內部開發的大型軟件項目,但是,只有在開發人員具有風險分析和排除風險的經驗及專門知識時,使用這種模型纔會成功。

       噴泉模型:體現了面向對象軟件開發過程無縫迭代的特性,是典型的面向對象的軟件過程模型之一。

          總結以上就是第一章的主要內容,由於它涵蓋的面比較廣,從整體概括了軟件開發的幾個主要階段,所以單另出來做一個總結。裏面比較重要的就是軟件工程的生存週期的6個步驟以及跨越整個軟件生存週期的5種軟件開發模型。每個模型都有自己的優點,需要根據實際情況來選擇合適的開發模型。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章