關于軟件工程的歷史與發(fā)展趨勢
在學習、工作生活中,許多人都寫過論文吧,論文可以推廣經驗,交流認識。相信很多朋友都對寫論文感到非?鄲腊,以下是小編整理的關于軟件工程的歷史與發(fā)展趨勢論文,希望能夠幫助到大家! ≡趯W習、工作生活中,許多人都寫過論文吧,論文可以推廣經驗,交流認識。相信很多朋友都對寫論文感到非常苦惱吧,以下是小編整理的關于軟件工程的歷史與發(fā)展趨勢論文,希望能夠幫助到大家。
軟件工程的歷史與發(fā)展趨勢 篇1
摘要:軟件是一種特殊的產品,隨著其規(guī)模和復雜性的提高、使用范圍的擴大,需要從技術和管理兩方面對軟件的開發(fā)過程進行控制。從軟件工程這門學科和技術出現(xiàn)的背景出發(fā),回顧了軟件工程在近40年來理論、方法和實踐中的成果。最后結合Internet技術和平臺的挑戰(zhàn),初步討論了軟件工程需要面對的新挑戰(zhàn)。
關鍵詞:軟件危機;構件;體系結構;軟件項目管理;中間件
1、軟件工程的出現(xiàn)
1.1軟件危機
20世紀中期,計算機剛被從軍用領域轉向民用領域使用,那時編寫程序的工作被視同為藝術家的創(chuàng)作。當時的計算機硬件非常昂貴,編程人員追求的是如何在有限的處理器能力和存儲器空間約束下,編寫出執(zhí)行速度快、體積小的程序。程序中充滿了各種各樣讓人迷惑的技巧。這時的軟件生產非常依賴于開發(fā)人員的聰明才智。
到了20世紀60年代,計算機的應用范圍得到較大擴展,對軟件系統(tǒng)的需求和軟件自身的復雜度急劇上升,傳統(tǒng)的開發(fā)方法無法適應用戶在質量、效率等方面對軟件的需求。這就是所謂的“軟件危機”。
為解決這個問題,1968年NATO會議上首次提出“軟件工程”(SotfwraeEngineeirng)的概念,提出把軟件開發(fā)從“藝術”和“個體行為”向“工程”和“群體協(xié)同工作”轉化。其基本思想是應用計算機科學理論和技術以及工程管理原則和方法,按照預算和進度,實現(xiàn)滿用戶要求的軟件產品的定義、開發(fā)、發(fā)布和維護的工程。從此也誕生了一門新的學科——軟件工程。
迄今為之,為了達到最初設定的目標,軟件工程界已經提出了一系列的理論、方法、語言和工具,解決了軟件開發(fā)過程中的若干問題。但是,由于軟件固有的復雜性、易變性和不可見性,軟件開發(fā)周期長、代價高和質量低的問題依然存在。IEEE在 2002年發(fā)表的報告指出,即使是IT產業(yè)最發(fā)達的美國,在2001年美國本土公司開發(fā)的軟件產品中平均每1000行代碼中有0.37個錯誤,對于美國之外的其他國家,這個比例更高。
1.2軟件與其他產品的差異
軟件是一種特殊的產品,人們通常看到的是它的載體,而真正具有意義的是載體上的計算機或信息。
軟件既不同于通常的精神產品,也不同于常見的物質產品。作家的作品是一種精神產品,它沒有使用價值卻可以供人閱讀欣賞。若把軟件也看成是一種作品,卻發(fā)現(xiàn)其價值在于供人們使用,無人喜歡讀它的源代碼。
軟件也與傳統(tǒng)的.工業(yè)產品不同。工業(yè)產品在設計好之后,主要的成本是原材料成本、生產過程的開銷等,但生產任何軟件的主要成本是設計、實現(xiàn)軟件時的成本,以及軟件投入使用后的維護成本,在生產線上制造軟件的成本非常低。用戶購買某種商品后,就擁有了該商品的所有權和使用權。可是用戶買來的軟件卻只擁有它的有限“使用權”。工業(yè)產品會隨著使用而磨損、報廢,但軟件在使用過程不會有任何磨損,在相同的硬件條件下用戶1年前使用的軟件和5年后使用該軟件無任何差別。傳統(tǒng)的工業(yè)產品在車間里生產,生產過程可見、可觸摸,也容易衡量生產過程中的消耗和進展?墒擒浖拈_發(fā)過程在人的大腦里,很難度量其進度。
所謂的“軟件工程”就是要這種過程“可視化”、“定量化”,把看不見的思維活動變成看得見的“文檔”或者其他看得見的東西。
2、軟件工程方法和技術
30多年來,軟件工程的研究和實踐取得了長足的進展,盡管目前離徹底解決“軟件危機”還有相當?shù)牟罹?對是否能徹底解決目前也存在爭議),但軟件工程的方法對軟件產業(yè)的發(fā)展還是起到了很大的推動作用。從20世紀60年代以來,陸續(xù)出現(xiàn)了結構化程序設計技術、計算機輔助軟件工程(CASE)、面向對象語言和方法、軟件過程及軟件過程改善研究等一系列成果,并應用到實踐中。目前軟件工程中主要使用的方法和技術可以分成技術和管理兩類。
2.1技術的角度
主要包括:軟件開發(fā)范型、軟件設計方法。軟件開發(fā)范型關注軟件工程的方向,即如何才是正確的編寫滿足需求的軟件;軟件設計方法關注軟件工程的“途徑”,即研究怎樣完成從高層概念模型到低層概念模型的映射。
軟件工程理論在實踐中應用時重點放在軟件復用上。參考目前成熟的工業(yè)產品的開發(fā)模式,軟件復用可以在軟件開發(fā)中避免重復勞動,它以已有的成果為基礎,充分利用過去開發(fā)應用系統(tǒng)中積累的知識和經驗,將開發(fā)的重點集中于新應用的特有構成成分上。通過使用軟件復用技術,開發(fā)應用系統(tǒng)時可以充分利用已有的開發(fā)成果,消除軟件生命周期中的許多重復勞動,提高軟件開發(fā)的效率。同時,復用高質量的已有成果,可以避免重新開發(fā)時引入的錯誤,從而提高軟件質量。
實現(xiàn)軟件復用的關鍵技術包括軟件構件技術(softwarecomponenttechnology)、領域工程(domainen—gineering)、軟件體系結構(softwarearchitecture)等。
軟件構件是指應用系統(tǒng)中可以明確辨識的構成成分,可復用構件是指具有相對獨立功能和可復用價值的構件。目前,構件的概念即包括源代碼,也包括需求、需求規(guī)約、系統(tǒng)和軟件的體系結構、文檔、測試計劃、測試用例和數(shù)據(jù)以及其他對開發(fā)活動有用的信息,這些信息都可以稱為可復用軟件構件。軟件構件技術是支持軟件復用的核心技術,其主要研究內容包括:如何有目的的進行構件生產和從已有系統(tǒng)中挖掘提取構件;構件的本質特征及構件間的關系是什么樣的;如何描述構件;如何對構件進行分類、組織及檢索等。
研究實踐表明,由于某個特定領域需要的軟件具有相似的需求,因此軟件復用在特定領域內更容易獲得成功,由此出現(xiàn)了領域工程。領域工程是為一組相似或相近系統(tǒng)的應用工程建立基本能力和必備基礎的過程,它涵蓋了建立可復用軟件構件的所有活動。包括美國卡內基·梅隆大學軟件工程研究所(CMU/SEI)在內的許多研究機構已經提出了一些領域分析方法。
如果軟件復用僅停留在代碼階段,開發(fā)人員得到的好處是有限的。軟件體系結構技術使軟件復用從代碼復用發(fā)展到設計復用和過程復用。在建筑工程領域人們用體系結構表達建筑的整體結構,軟件工程研究中引人體系結構這個術語,其核心內容是軟件系統(tǒng)的結構,它包括如下一些實體:構件、構件之間的交互關系、限制、構件和連接件構成的拓撲結構、設計原則與指導方針。
2.2工程管理的角度
參考其他成熟工程領域中的做法,軟件工程也研究管理學理論在軟件工程中的應用。軟件項目管理方法拋棄了以前個人的作坊式開發(fā)方式,根據(jù)管理科學的理論,結合軟件產品開發(fā)的實際,保證工程化系統(tǒng)開發(fā)方法的順利實施。為了使軟件項目能夠按照預定的成本、進度、質量順利完成,軟件管理方法對成本、人員、進度、質量、風險、文檔等進行分析管理和控制。進行軟件項目管理有利于將開發(fā)人員的個人開發(fā)能力轉化成企業(yè)的開發(fā)能力,企業(yè)的軟件開發(fā)能力越高,表明這個企業(yè)的軟件生產越趨向于成熟,其開發(fā)風險也越小。軟件項目管理已經是公認的軟件開發(fā)企業(yè)的核心競爭力之一。
根據(jù)在前面提到的軟件與其他產品的區(qū)別,軟件項目管理具有一些與其他項目管理不同的特性軟件項目管理中遵循著一些原則,例如:軟件項目中需要平衡需求、資源、工期、質量這四個要素之間的關系;大規(guī)模的項目要拆分成幾個小項目,從而減小項目的管理風險,并且使目標具體明確;依靠一套規(guī)范的過程來實時控制項目進度,并確保項目經理能夠及時發(fā)現(xiàn)問題、解決問題,保證項目具有很高的可見度;針對不同項目的特點,制訂不同的項目管理的方針政策;合理控制項目組的規(guī)?刂圃瓌t;有效的積累知識,做到人員的專業(yè)化培養(yǎng)。
目前在軟件項目管理方面有國際標準化組織專門為軟件行業(yè)定制的 ISO9003標準,它給出了衡量軟件質量的準則;美國卡內基·梅隆大學軟件工程研究所提出的CMM(CapabilityMaturityModel,能力成熟度模型)則提供了一整套較為完善的軟件研發(fā)項目管理的方法。
3、軟件工程的新發(fā)展
20世紀末開始流行的Internet給人們提供了一種全球范圍的信息基礎設施,形成了一個資源豐富的計算平臺,未來如何在Internet平臺上進一步整合資源,形成巨型的、高效的、可信的虛擬環(huán)境,使所有資源能夠高效、可信地為所有用戶服務,成為軟件技術的研究熱點。
Internet平臺具有一些傳統(tǒng)軟件平臺不具備的特征:分布性、節(jié)點的高度自治性、開放性、異構性、不可預測性、連接環(huán)境的多樣性等。這對軟件工程的發(fā)展提出了新的問題。軟件工程需要新的理論、方法和技術和平臺來應對這個問題。目前投入很大精力研究的中間件技術就是這方面的典型代表。
綜上所述,Internet及其上應用的快速發(fā)展與普及,使計算機軟件所面臨的環(huán)境開始從靜態(tài)封閉逐步走向開放、動態(tài)和多變。軟件系統(tǒng)為了適應這樣一種發(fā)展趨勢,將會逐步呈現(xiàn)出柔性、多目標、連續(xù)反應式的網構軟件系統(tǒng)的形態(tài)。面對這種新型的軟件形態(tài),傳統(tǒng)的軟件理論、方法、技術和平臺面臨了一系列挑戰(zhàn)。從宏觀上看,這種挑戰(zhàn)為我們研究軟件理論、方法和技術提供了難得的機遇,使我們有可能建立一套適合于Internet開放、動態(tài)和多變環(huán)境的新型軟件理論、方法和技術體系。從微觀的角度來看,Internet的發(fā)展將使系統(tǒng)軟件和支撐平臺的研究重點開始從操作系統(tǒng)等轉向新型中間件平臺,而網構軟件的理論、方法和技術的突破必將導致在建立新型中間件平臺創(chuàng)新技術方面的突破。
軟件工程的歷史與發(fā)展趨勢 篇2
一、軟件工程方法和技術
隨著互聯(lián)網的不斷發(fā)展,軟件工程也在不斷完善,雖然軟件工程思想并不能很好地解決軟件危機,但其對軟件的開發(fā)及其附屬產業(yè)起到了很好的促進作用。軟件開發(fā)過程出現(xiàn)了越來越多的新技術,如結構化程序設計技術、計算機輔助軟件工程(CASE)、面向對象語言和方法等其它新技術和方法。一般常用的有技術類和管理類。
1.1技術角度
一般來說,技術方面主要包括軟件開發(fā)范型、軟件設計方法。其中軟件開發(fā)范型注重的是工程思想,盡可能讓開發(fā)出的軟件滿足用戶要求,這是軟件開發(fā)范型的重點;而軟件設計方法注重的是軟件開發(fā)過程及設計思想,注重的是概念。目前,在軟件開發(fā)的實際應用中,主要強調的是軟件代碼重復使用。具體過程是在開發(fā)一套軟件之前,首先查閱資料看有沒有與之相似的產品,然后直接調用,這樣不僅可以避免軟件開發(fā)過程中的無用功,而且開發(fā)軟件是以成熟產品為依據(jù),因此在開發(fā)時可以將精力集中在軟件的創(chuàng)新上。顯然,用此技術開發(fā)軟件和應用系統(tǒng)時可以充分利用已有的開發(fā)成果,消除軟件生命周期中的重復勞動,在一定程度上提高軟件的開發(fā)效率,同時還能提高所開發(fā)軟件的質量,避免不必要的錯誤。軟件復用主要包括軟件構件技術、領域工程、軟件體系結構等。其中,軟件構件是指在軟件開發(fā)中的已知條件,可復用構件是指在軟件開發(fā)中的獨立部分可以重復使用。上文提到的構件主要有源代碼,同時也包括一些特定需求、軟件系統(tǒng)的結構等,這些都可以稱為可復用軟件構件。軟件復用的關鍵在于軟件構件,而軟件構件技術主要包括:如何根據(jù)需求構造出新的構件、如何從現(xiàn)有的軟件系統(tǒng)中提煉出有用的構件,同時還要弄清楚各構件之間的內在聯(lián)系,以及如何對構件進行準確的描述,并對構件進行準確的分類管理。在實際應用中發(fā)現(xiàn),軟件復用在某些領域能夠起到很好的效果,原因在于一些特定領域對軟件的要求基本相似。此種情況下,領域工程應運而生,領域工程的出現(xiàn)就是為了服務于特定領域的軟件開發(fā)。同時也應該注意到,如果在軟件開發(fā)中不能充分利用軟件復用技術而僅僅停留在代碼階段,對開發(fā)人員來說軟件復用技術就顯得不那么重要了。
1.2工程管理角度
在軟件開發(fā)過程中,不僅要注重技術層面,還要注重開發(fā)過程中對開發(fā)人員和開發(fā)進度的管理,并借鑒其它工程領域中的成功管理方法,引入管理學理論。軟件開發(fā)過程引入工程項目管理的思想可以使軟件開發(fā)不再以個人為中心,而是更加注重團體協(xié)作。在軟件開發(fā)過程中用管理學的思想來管理開發(fā)人員和軟件開發(fā)進度,能夠讓軟件開發(fā)的進度控制在預料之中,保證軟件開發(fā)按照預期的成本、質量以及用戶的要求進行。同時,引進項目管理方法利于開發(fā)人員和企業(yè)的長遠發(fā)展,降低開發(fā)風險。目前,評價一個軟件開發(fā)企業(yè)是否具有長遠發(fā)展的潛力,主要看其公司軟件項目管理思想的具體落實情況。雖然軟件項目管理與其它工程中的管理思想有諸多相似之處,但是由于軟件自身的特殊性,具體實施起來卻存在著巨大差別。這些差別具體表現(xiàn)在,軟件項目中需要平衡需求、資源、工期、質量這4個要素之間的關系。對于較復雜的軟件開發(fā),一般分成幾個比較小的項目分別進行開發(fā),這樣不僅降低了軟件開發(fā)的風險,還使得開發(fā)過程中的管理更加容易,項目負責人更容易發(fā)現(xiàn)軟件開發(fā)中的問題,以便根據(jù)所開發(fā)軟件項目的特點,制定有針對性的.管理方案和開發(fā)策略。國際組織對軟件開發(fā)制定了行業(yè)標準,并且軟件開發(fā)方面的權威組織也提出了較為科學完善、切實可行的軟件項目管理方法。
二、軟件工程發(fā)展趨勢
2.1全球化趨勢
伴隨著全球化進程的不斷加快,軟件開發(fā)行業(yè)所面臨的環(huán)境也發(fā)生了極大變化,以傳統(tǒng)的思維來管理軟件開發(fā)已經顯得有些吃力。未來的軟件開發(fā)將越來越強調全球化的合作交流,因為隨著信息化的不斷普及,越來越多的軟件開發(fā)不僅僅在國內開發(fā)完成,還有一部分在國外完成。同時,軟件的全球化協(xié)作也使得軟件外包發(fā)展得越來越快,很多從事軟件外包行業(yè)的公司得到了快速發(fā)展,這些軟件外包公司把軟件開發(fā)的設計理念、編程部分,以及測試、軟件發(fā)布,甚至后期維護都分別交給不同的國家去完成,這個過程就是軟件開發(fā)全球化協(xié)作過程,并且該過程已經成為軟件開發(fā)公司的主流做法。
2.2開放性計算的廣泛應用
軟件工程領域中的開放性計算是軟件開發(fā)行業(yè)的一種新趨勢。軟件工程本身具有極強的開放性,加上全球化協(xié)作的不斷加深,這種趨勢必然成為未來軟件工程的重點發(fā)展方向。同時,開放性計算使得不同地域的軟件開發(fā)者共同開發(fā)軟件更加方便,更利于開發(fā)者之間的交流,也讓軟件的后期維護更加容易、更加專業(yè),對客戶和開發(fā)者是雙贏的結果。
2.3模塊化的設計思想
軟件全球化協(xié)作在給軟件開發(fā)帶來機遇的同時,也給軟件工程的發(fā)展帶來了各種各樣的挑戰(zhàn)。各軟件公司之間的競爭也越來越激烈,正是這種激烈競爭,促使軟件開發(fā)不斷向模塊化方向發(fā)展。模塊化設計思想是為了解決傳統(tǒng)技術在實際應用中缺少靈活性的問題,其基本思想是在軟件開發(fā)時以科學的方法把已知的軟件構件和相似的軟件構件分別歸類,并通過的一定技術手段使之模塊化。這提高了軟件開發(fā)的效率,提高了企業(yè)的競爭力,對軟件工程的長遠快速發(fā)展具有意義。
三、結語
當前,軟件工程的研究內容是軟件開發(fā)模型、設計方法、工程中的支持技術和工程管理技術。這幾部分已經發(fā)展得相當成熟,使得軟件工程不僅僅是單一的體系,而是復雜的綜合性學科。同時軟件工程發(fā)展中也存在一些問題,應根據(jù)軟件工程的特點、發(fā)展歷史以及實際開發(fā)中的各個環(huán)節(jié),努力尋找解決這些問題的方法,在實際應用中專注重點。同時,由于軟件開發(fā)過程中的全球化協(xié)作越來越緊密,資源的分配和共享方式也發(fā)生了巨大變化,利用資源更高效地為用戶服務已經變得越來越重要。這對軟件工程的發(fā)展提出了新的要求,必須摒棄傳統(tǒng)思維方式,引進新的理論、方法、技術和平臺來應對這個問題。同時也應該看到計算機軟件所面臨的環(huán)境變化,從之前靜態(tài)封閉的狀態(tài)漸漸走向開放、動態(tài)的狀態(tài),從而促進軟件工程的長遠發(fā)展。
軟件工程的歷史與發(fā)展趨勢 篇3
摘 要:軟件工程經濟是近年來出現(xiàn)的嶄新的研究方向,是軟件工程和經濟學相互融合深入的產物。從總體上討論了軟件工程經濟的概念、軟件工程經濟在軟件產品價值中的關系以及和經濟學研究的關系,描述了當前應用的模型分類和具有代表性的模型,以及關于軟件工程經濟的未來
關鍵詞:軟件工程論文
軟件工程經濟是近年來出現(xiàn)的嶄新的研究方向,是軟件工程和經濟學相互融合深入的產物。從總體上討論了軟件工程經濟的概念、軟件工程經濟在軟件產品價值中的關系以及和經濟學研究的關系,描述了當前應用的模型分類和具有代表性的模型,以及關于軟件工程經濟的未來研究內容、研究趨勢整體框架和分層結構。
1軟件工程的呈現(xiàn)
1.1軟件危機
隨著互聯(lián)網的不時開展,越來越多的范疇開端大量運用計算機,所請求的軟件越來越復雜,此時,傳統(tǒng)辦法開發(fā)的軟件難以滿足當前的高請求,這就是所謂的“軟件危機”。軟件工程的呈現(xiàn)就是為理解決這個問題。軟件工程的提出把軟件開發(fā)引向工程化和協(xié)異化,其中心理念是在軟件開發(fā)過程中引入管理的思想,對軟件的整個開發(fā)周期提早做好各種預算和進度規(guī)劃,并且在軟件的設計、開發(fā)、發(fā)布、后期維護階段都能滿足用戶的請求。到目前為止,為理解決軟件開發(fā)中遇到的各種問題,并完成軟件開發(fā)的預期目的,很多新的辦法、計算機言語都呈現(xiàn)在了軟件工程的概念中。雖然軟件工程思想極大地改善了軟件開發(fā)過程,但是軟件的復雜性、不可預見性等其它特性是無法改動的。相關數(shù)據(jù)標明,在IT行業(yè)高度興旺的美國,其程序員所編寫的代碼仍不可防止地呈現(xiàn)錯誤,而在IT行業(yè)不興旺的國度,程序員代碼中呈現(xiàn)錯誤的幾率更高。
1.2軟件與其它產品的差別
與日常生活中的商品相比,軟件顯得十分特別,由于真正表現(xiàn)軟件價值的局部是其存儲的代碼和代碼能夠完成的特定功用。但是實踐應用時,人們看到的只是載體,看不到內部存儲的代碼。就本錢方面而言,普通工業(yè)產品的本錢主要是原料,以及制造過程的各種費用,而軟件的本錢主要表現(xiàn)在前期設計和后期軟件的維護上,軟件制造過程中所需的費用卻是次要的,這與普通工業(yè)產品的本錢構成有很大不同。在運用方面,軟件和普通商品同樣有著很大區(qū)別,普通而言,用戶只需購置商品,便完整具有其運用權,而且所購置的商品會不時耗費直至損壞不能運用,但是用戶在購置軟件之后并不能完整具有其一切運用權,而且軟件不會隨著用戶的運用而磨損。在制造過程方面,普通的工業(yè)產品都是在車間里面加工,原資料變成產品的過程顯而易見,但是軟件的開發(fā)過程是籠統(tǒng)的`,且其開發(fā)進度不易把握。軟件工程思想的提出正是為理解決軟件開發(fā)的上述問題,即便軟件開發(fā)過程工程化、詳細化。
2軟件工程辦法和技術
隨著互聯(lián)網的不時開展,軟件工程也在不時完善,固然軟件工程思想并不能很好地處理軟件危機,但其對軟件的開發(fā)及其隸屬產業(yè)起到了很好的促進作用。軟件開發(fā)過程呈現(xiàn)了越來越多的新技術,如構造化程序設計技術、計算機輔助軟件工程(CASE)、面向對象言語和辦法等其它新技術和辦法。普通常用的有技術類和管理類。
2.1技術角度
普通來說,技術方面主要包括軟件開發(fā)范型、軟件設計辦法。其中軟件開發(fā)范型注重的是工程思想,盡可能讓開發(fā)出的軟件滿足用戶請求,這是軟件開發(fā)范型的重點;而軟件設計辦法注重的是軟件開發(fā)過程及設計思想,注重的是概念。目前,在軟件開發(fā)的實踐應用中,主要強調的是軟件代碼反復運用。詳細過程是在開發(fā)一套軟件之前,首先查閱材料看有沒有與之類似的產品,然后直接調用,這樣不只能夠防止軟件開發(fā)過程中的無用功,而且開發(fā)軟件是以成熟產品為根據(jù),因而在開發(fā)時能夠將精神集中在軟件的創(chuàng)新上。顯然,用此技術開發(fā)軟件和應用系統(tǒng)時能夠充沛應用已有的開發(fā)成果,消弭軟件生命周期中的反復勞動,在一定水平上進步軟件的開發(fā)效率,同時還能進步所開發(fā)軟件的質量,防止不用要的錯誤。軟件復用主要包括軟件構件技術、范疇工程、軟件體系構造等。其中,軟件構件是指在軟件開發(fā)中的已知條件,可復用構件是指在軟件開發(fā)中的獨立局部能夠反復運用。上文提到的構件主要有源代碼,同時也包括一些特定需求、軟件系統(tǒng)的構造等,這些都能夠稱為可復用軟件構件。軟件復用的關鍵在于軟件構件,而軟件構件技術主要包括:如何依據(jù)需求結構出新的構件、如何從現(xiàn)有的軟件系統(tǒng)中提煉出有用的構件,同時還要弄分明各構件之間的內在聯(lián)絡,以及如何對構件停止精確的描繪,并對構件停止精確的分類管理。在實踐應用中發(fā)現(xiàn),軟件復用在某些范疇可以起到很好的效果,緣由在于一些特定范疇對軟件的請求根本類似。此種狀況下,范疇工程應運而生,范疇工程的呈現(xiàn)就是為了效勞于特定范疇的軟件開發(fā)。同時也應該留意到,假如在軟件開發(fā)中不能充沛應用軟件復用技術而僅僅停留在代碼階段,對開發(fā)人員來說軟件復用技術就顯得不那么重要了。
2.2工程管理角度
在軟件開發(fā)過程中,不只要注重技術層面,還要注重開發(fā)過程中對開發(fā)人員和開發(fā)進度的管理,并自創(chuàng)其它工程范疇中的勝利管理辦法,引入管理學理論。軟件開發(fā)過程引入工程項目管理的思想能夠使軟件開發(fā)不再以個人為中心,而是愈加注重團體協(xié)作。在軟件開發(fā)過程中用管理學的思想來管理開發(fā)人員和軟件開發(fā)進度,可以讓軟件開發(fā)的進度控制在意料之中,保證軟件開發(fā)依照預期的本錢、質量以及用戶的請求停止。同時,引進項目管理辦法利于開發(fā)人員和企業(yè)的久遠開展,降低開發(fā)風險。
目前,評價一個軟件開發(fā)企業(yè)能否具有久遠開展的潛力,主要看其公司軟件項目管理思想的詳細落實狀況。固然軟件項目管理與其它工程中的管理思想有諸多類似之處,但是由于軟件本身的特殊性,詳細施行起來卻存在著宏大差異。這些差異詳細表如今,軟件項目中需求均衡需求、資源、工期、質量這4個要素之間的關系。關于較復雜的軟件開發(fā),普通分紅幾個比擬小的項目分別停止開發(fā),這樣不只降低了軟件開發(fā)的風險,還使得開發(fā)過程中的管理愈加容易,項目擔任人更容易發(fā)現(xiàn)軟件開發(fā)中的問題,以便依據(jù)所開發(fā)軟件項目的特性,制定有針對性的管理計劃和開發(fā)戰(zhàn)略。國際組織對軟件開發(fā)制定了行業(yè)規(guī)范,并且軟件開發(fā)方面的權威組織也提出了較為科學完善、實在可行的軟件項目管理辦法。
3軟件工程開展趨向
3.1全球化趨向
隨同著全球化進程的不時加快,軟件開發(fā)行業(yè)所面臨的環(huán)境也發(fā)作了極大變化,以傳統(tǒng)的思想來管理軟件開發(fā)曾經顯得有些費勁。將來的軟件開發(fā)將越來越強調全球化的協(xié)作交流,由于隨著信息化的不時提高,越來越多的軟件開發(fā)不只僅在國內開發(fā)完成,還有一局部在國外完成。同時,軟件的全球化協(xié)作也使得軟件外包開展得越來越快,很多從事軟件外包行業(yè)的公司得到了快速開展,這些軟件外包公司把軟件開發(fā)的設計理念、編程局部,以及測試、軟件發(fā)布,以至后期維護都分別交給不同的國度去完成,這個過程就是軟件開發(fā)全球化協(xié)作過程,并且該過程曾經成為軟件開發(fā)公司的主流做法。
3.2開放性計算的普遍應用
軟件工程范疇中的開放性計算是軟件開發(fā)行業(yè)的一種新趨向。軟件工程自身具有極強的開放性,加上全球化協(xié)作的不時加深,這種趨向必然成為將來軟件工程的重點開展方向。同時,開放性計算使得不同地域的軟件開發(fā)者共同開發(fā)軟件愈加便當,更利于開發(fā)者之間的交流,也讓軟件的后期維護愈加容易、愈加專業(yè),對客戶和開發(fā)者是雙贏的結果。
3.3模塊化的設計思想
軟件全球化協(xié)作在給軟件開發(fā)帶來機遇的同時,也給軟件工程的開展帶來了各種各樣的應戰(zhàn)。各軟件公司之間的競爭也越來越劇烈,正是這種劇烈競爭,促使軟件開發(fā)不時向模塊化方向開展。模塊化設計思想是為理解決傳統(tǒng)技術在實踐應用中短少靈敏性的問題,其根本思想是在軟件開發(fā)時以科學的辦法把已知的軟件構件和類似的軟件構件分別歸類,并經過的一定技術手腕使之模塊化。這進步了軟件開發(fā)的效率,進步了企業(yè)的競爭力,對軟件工程的久遠快速開展具有意義。
4結語
當前,軟件工程的研討內容是軟件開發(fā)模型、設計辦法、工程中的支持技術和工程管理技術。這幾局部曾經開展得相當成熟,使得軟件工程不只僅是單一的體系,而是復雜的綜合性學科。同時軟件工程開展中也存在一些問題,應依據(jù)軟件工程的特性、開展歷史以及實踐開發(fā)中的各個環(huán)節(jié),努力尋覓處理這些問題的辦法,在實踐應用中專注重點。同時,由于軟件開發(fā)過程中的全球化協(xié)作越來越嚴密,資源的分配和共享方式也發(fā)作了宏大變化,應用資源更高效地為用戶效勞曾經變得越來越重要。這對軟件工程的開展提出了新的請求,必需摒棄傳統(tǒng)思想方式,引進新的理論、辦法、技術戰(zhàn)爭臺來應對這個問題。同時也應該看到計算機軟件所面臨的環(huán)境變化,從之前靜態(tài)封鎖的狀態(tài)慢慢走向開放、動態(tài)的狀態(tài),從而促進軟件工程的久遠開展。
【軟件工程的歷史與發(fā)展趨勢】相關文章:
試析基于軟件歷史信息的軟件工程12-06
關于基于軟件歷史信息的軟件工程的研究12-10
學校體育的發(fā)展趨勢探索06-17
我國通俗商業(yè)劇的發(fā)展趨勢11-22
網絡教育應用的發(fā)展趨勢探究11-26
旅游經濟發(fā)展趨勢分析12-01
軟件工程 開題報告11-14
軟件工程編程論文03-23
- 相關推薦