摘 要 本文主要介紹了軟件工程的發展歷程、發展現狀,并分析了軟件工程未來可能的發展趨勢,希望能為軟件工程學科更好的發展提供幫助。
關鍵詞 軟件工程 發展歷程 發展現狀 發展趨勢 網構軟件
中圖分類號:TP311.5 文獻標識碼:A
0前言
隨著高科技的逐步發展,計算機應用得到了日益普及與深化。計算機應用的大范圍擴展,對軟件自身與軟件系統的需求的復雜度大幅度上升。傳統的軟件開發方法已無法適應計算機用戶在效率與質量等方面對軟件的需要。在過去的三十年里,應用和可行性技術的發展促進軟件工程不斷發展。在各種各樣的應用領域,不管是財務管理、醫院管理還是航空領域和核武器領域,軟件都是一項關鍵的技術。網絡平臺的出現,對科學理論研究、軟件生產、技術發展等方面的發展水平提出了更高的要求,同時也提供了新的發展契機。
1軟件工程的發展歷程
軟件工程的發展,經歷了一個漫長的過程,已取得了良好的成果,還為軟件工程化的開發提供了良好的技術支持,對其的發展也起到了很大程度上的積極推動作用。其發展的經歷主要分為四個階段:
二十世紀六十年代末至七十年代中期?;谝幌盗懈呒壵Z言的應用及結構化程序設計技術的出現,一些支持軟件開發的工具被陸續完成生產。由于人們開始重視對程序結構的研究,軟件工程思想和概念也在這個時候被正式提出。
二十世紀七十年代,是比較傳統的軟件工程階段。有關計算機輔助軟件的研究成為了新熱點。為了把軟件項目中的高失敗率及錯誤率的問題解決掉,軟件工程化的思想被首次提出,希望軟件開發能更加正規化的發展,這個階段形成了對軟件工程發展的有利工程環境,開始出現更多的軟件工具。這為軟件工程后期發展產生了一定的深遠影響。此時,軟件工程的概念、方法、框架以及手段逐漸形成,人們又開始展開有關程序設計方法、結構化分析等研究,并為此成立了新的研究領域。
二十世紀八十年代,對軟件過程的研究逐步成為軟件工程的另一個熱點。面向對象語言和方法在這個時候開始出現然后逐步流行,在八十年代末期開始了面向對象的分析以及設計方法的發展,完整的面向對象技術體系也就形成了,延長了系統的生存周期,最終成為主流的軟件開發技術,應用也更加廣泛。此時,對于軟件開發又提出更高的要求,就是提高軟件的生產率,并使軟件質量得以保證。與此同時,軟件開發也開始了對過程的管理。
進入二十世紀九十年代以后,人們開始將注意力放在如何改善軟件的開發過程,側重有關軟件構建技術的研究和實踐,即構件軟件工程階段。軟件開發技術的主要處理對象為網絡計算和支持多媒體信息的WWW。為了適應超企業規模、資源共享、群組協同工作的需要,需要開發大量的分布式處理系統。
2軟件工程的發展現狀
我國的軟件技術發展的相對比較落后,相比較先進的國家還存在著非常大的差距。但是,我國軟件工程的發展卻是非常迅速的,短短幾年的時間就形成了屬于我們自己知識產權的軟件技術。以至于軟件工程發展到現在,我國不僅研發了屬于我們自己的開發工具,還制定了符合我國實際情況的研發技術方案與思想。
時至今日,軟件工程已經成為計算機應用領域的核心技術,而且市場需求量尚在逐年攀升。就目前我國軟件工程發展的現狀而言,存在的主要問題有以下幾個方面:首先,缺乏完善的軟件工程管理體制,導致軟件工程開發團隊的工作無法得到有效的協調,開發效率受到極大的限制。其次,對軟件開發人員以及開發進度的控制力度不足,致使人員的穩定性下降,使得很多軟件產品的生產效率低下,且產品質量降低。與此同時,部分軟件的開發進度未控制好,使得軟件產品的生產不能按時完成,項目延期現象頻發。
3軟件工程的發展趨勢
作為20 世紀末偉大的技術進展之一,Internet為我們提供了一種全球范圍的信息基礎設施,這個不斷延伸的網絡基礎設施形成了一個資源豐富的計算平臺,構成了人類社會信息化、數字化的基礎,成為我們學習、生活和工作中必不可少的構成要素。如何在未來 Internet 平臺上進一步進行資源整合,使其形成巨型的、高效的、可信的、統一的虛擬環境,使所有資源能夠高效、可信地為所有用戶服務,成為軟件技術的研究熱點。
Internet 平臺和環境的出現,對軟件形態、技術發展、理論研究提出了新的問題,也提供了新的契機。從技術的角度看,以軟件構件等技術支持的軟件實體將以開放自主的方式存在于Internet 的各個節點之上,任何一個軟件實體可在開放的環境下通過某種方式加以發布,并以各種協同方式與其他軟件實體進行跨網絡的互連、互通、協作和聯盟,從而形成一種與當前的信息 Web 類似的 Software Web。它不再僅僅是信息的提供者,它同時還是各種服務或功能的提供者。由于網絡環境的開放與動態性,以及用戶使用方式的個性化要求,進而形成了這樣一種 Software Web,它會感知外部網絡環境的動態變化,并能夠隨著這種變化按照功能指標、性能指標和可信性指標等進行靜態的調整和動態的演化,使得系統具有盡可能高的用戶信賴度。我們將它稱為網構軟件,它既是傳統軟件結構的自然延伸,又具有區別于集中封閉環境下發展起來的傳統軟件形態的獨有的基本特征(自主性、協同性、反應性、演化性、多態性)。
參考文獻
[1] 王章寧.淺析軟件工程的現狀及發展趨勢[J].軟件,2013.34(10).
[2] 司良,張曉寧.國內外軟件工程發展現狀[J].計算機光盤軟件與應用,2011.10.