探析軟件工程的經濟和發展趨勢的論文

學識都 人氣:1.15W

 摘 要:軟件工程經濟是近年來出現的嶄新的研究方向,是軟件工程和經濟學相互融合深入的產物。從總體上討論了軟件工程經濟的概念、軟件工程經濟在軟件產品價值中的關係以及和經濟學研究的關係,描述了當前應用的模型分類和具有代表性的模型,以及關於軟件工程經濟的未來        

探析軟件工程的經濟和發展趨勢的論文

關鍵詞:軟件工程論文

軟件工程經濟是近年來出現的嶄新的研究方向,是軟件工程和經濟學相互融合深入的產物。從總體上討論了軟件工程經濟的概念、軟件工程經濟在軟件產品價值中的關係以及和經濟學研究的關係,描述了當前應用的模型分類和具有代表性的模型,以及關於軟件工程經濟的未來研究內容、研究趨勢整體框架和分層結構。

1軟件工程的呈現

1.1軟件危機

隨着互聯網的不時開展,越來越多的範疇開端大量運用計算機,所請求的軟件越來越複雜,此時,傳統辦法開發的軟件難以滿足當前的高請求,這就是所謂的“軟件危機”。軟件工程的呈現就是爲理解決這個問題。軟件工程的提出把軟件開發引向工程化和協異化,其中心理念是在軟件開發過程中引入管理的思想,對軟件的整個開發週期提早做好各種預算和進度規劃,並且在軟件的設計、開發、發佈、後期維護階段都能滿足用戶的請求。到目前爲止,爲理解決軟件開發中遇到的各種問題,並完成軟件開發的預期目的,很多新的辦法、計算機言語都呈現在了軟件工程的概念中。雖然軟件工程思想極大地改善了軟件開發過程,但是軟件的複雜性、不可預見性等其它特性是無法改動的。相關數據標明,在IT行業高度興旺的美國,其程序員所編寫的代碼仍不可防止地呈現錯誤,而在IT行業不興旺的國度,程序員代碼中呈現錯誤的機率更高。

1.2軟件與其它產品的差別

與日常生活中的商品相比,軟件顯得十分特別,由於真正表現軟件價值的局部是其存儲的代碼和代碼能夠完成的特定功用。但是實踐應用時,人們看到的只是載體,看不到內部存儲的代碼。就本錢方面而言,普通工業產品的本錢主要是原料,以及製造過程的各種費用,而軟件的本錢主要表現在前期設計和後期軟件的維護上,軟件製造過程中所需的費用卻是次要的,這與普通工業產品的本錢構成有很大不同。在運用方面,軟件和普通商品同樣有着很大區別,普通而言,用戶只需購置商品,便完整具有其運用權,而且所購置的商品會不時耗費直至損壞不能運用,但是用戶在購置軟件之後並不能完整具有其一切運用權,而且軟件不會隨着用戶的運用而磨損。在製造過程方面,普通的工業產品都是在車間裏面加工,原資料變成產品的過程顯而易見,但是軟件的開發過程是籠統的,且其開發進度不易把握。軟件工程思想的提出正是爲理解決軟件開發的上述問題,即便軟件開發過程工程化、詳細化。

2軟件工程辦法和技術

隨着互聯網的不時開展,軟件工程也在不時完善,固然軟件工程思想並不能很好地處理軟件危機,但其對軟件的開發及其隸屬產業起到了很好的促進作用。軟件開發過程呈現了越來越多的新技術,如構造化程序設計技術、計算機輔助軟件工程(CASE)、面向對象言語和辦法等其它新技術和辦法。普通常用的有技術類和管理類。

2.1技術角度

普通來說,技術方面主要包括軟件開發範型、軟件設計辦法。其中軟件開發範型注重的是工程思想,儘可能讓開發出的軟件滿足用戶請求,這是軟件開發範型的重點;而軟件設計辦法注重的是軟件開發過程及設計思想,注重的是概念。目前,在軟件開發的實踐應用中,主要強調的是軟件代碼反覆運用。詳細過程是在開發一套軟件之前,首先查閱材料看有沒有與之類似的產品,然後直接調用,這樣不只能夠防止軟件開發過程中的無用功,而且開發軟件是以成熟產品爲根據,因而在開發時能夠將精神集中在軟件的創新上。顯然,用此技術開發軟件和應用系統時能夠充沛應用已有的開發成果,消弭軟件生命週期中的反覆勞動,在一定水平上進步軟件的開發效率,同時還能進步所開發軟件的質量,防止不用要的錯誤。軟件複用主要包括軟件構件技術、範疇工程、軟件體系構造等。其中,軟件構件是指在軟件開發中的已知條件,可複用構件是指在軟件開發中的獨立局部能夠反覆運用。上文提到的構件主要有源代碼,同時也包括一些特定需求、軟件系統的構造等,這些都能夠稱爲可複用軟件構件。軟件複用的關鍵在於軟件構件,而軟件構件技術主要包括:如何依據需求結構出新的構件、如何從現有的軟件系統中提煉出有用的構件,同時還要弄分明各構件之間的內在聯絡,以及如何對構件停止精確的描繪,並對構件停止精確的分類管理。在實踐應用中發現,軟件複用在某些範疇可以起到很好的效果,緣由在於一些特定範疇對軟件的請求根本類似。此種狀況下,範疇工程應運而生,範疇工程的呈現就是爲了效勞於特定範疇的軟件開發。同時也應該留意到,假如在軟件開發中不能充沛應用軟件複用技術而僅僅停留在代碼階段,對開發人員來說軟件複用技術就顯得不那麼重要了。

2.2工程管理角度

在軟件開發過程中,不只要注重技術層面,還要注重開發過程中對開發人員和開發進度的管理,並自創其它工程範疇中的勝利管理辦法,引入管理學理論。軟件開發過程引入工程項目管理的思想能夠使軟件開發不再以個人爲中心,而是愈加註重團體協作。在軟件開發過程中用管理學的思想來管理開發人員和軟件開發進度,可以讓軟件開發的進度控制在意料之中,保證軟件開發依照預期的本錢、質量以及用戶的請求停止。同時,引進項目管理辦法利於開發人員和企業的久遠開展,降低開發風險。

目前,評價一個軟件開發企業能否具有久遠開展的潛力,主要看其公司軟件項目管理思想的詳細落實狀況。固然軟件項目管理與其它工程中的管理思想有諸多類似之處,但是由於軟件本身的特殊性,詳細施行起來卻存在着宏大差異。這些差異詳細表如今,軟件項目中需求均衡需求、資源、工期、質量這4個要素之間的關係。關於較複雜的軟件開發,普通分紅幾個比擬小的項目分別停止開發,這樣不只降低了軟件開發的風險,還使得開發過程中的管理愈加容易,項目擔任人更容易發現軟件開發中的問題,以便依據所開發軟件項目的特性,制定有針對性的管理計劃和開發戰略。國際組織對軟件開發制定了行業規範,並且軟件開發方面的權威組織也提出了較爲科學完善、實在可行的軟件項目管理辦法。

3軟件工程開展趨向

3.1全球化趨向

隨同着全球化進程的不時加快,軟件開發行業所面臨的環境也發作了極大變化,以傳統的思想來管理軟件開發曾經顯得有些費勁。將來的軟件開發將越來越強調全球化的協作交流,由於隨着信息化的不時提高,越來越多的軟件開發不只僅在國內開發完成,還有一局部在國外完成。同時,軟件的全球化協作也使得軟件外包開展得越來越快,很多從事軟件外包行業的.公司得到了快速開展,這些軟件外包公司把軟件開發的設計理念、編程局部,以及測試、軟件發佈,以至後期維護都分別交給不同的國度去完成,這個過程就是軟件開發全球化協作過程,並且該過程曾經成爲軟件開發公司的主流做法。

3.2開放性計算的普遍應用

軟件工程範疇中的開放性計算是軟件開發行業的一種新趨向。軟件工程自身具有極強的開放性,加上全球化協作的不時加深,這種趨向必然成爲將來軟件工程的重點開展方向。同時,開放性計算使得不同地域的軟件開發者共同開發軟件愈加便當,更利於開發者之間的交流,也讓軟件的後期維護愈加容易、愈加專業,對客戶和開發者是雙贏的結果。

3.3模塊化的設計思想

軟件全球化協作在給軟件開發帶來機遇的同時,也給軟件工程的開展帶來了各種各樣的應戰。各軟件公司之間的競爭也越來越劇烈,正是這種劇烈競爭,促使軟件開發不時向模塊化方向開展。模塊化設計思想是爲理解決傳統技術在實踐應用中短少靈敏性的問題,其根本思想是在軟件開發時以科學的辦法把已知的軟件構件和類似的軟件構件分別歸類,並經過的一定技術手腕使之模塊化。這進步了軟件開發的效率,進步了企業的競爭力,對軟件工程的久遠快速開展具有意義。

4結語

當前,軟件工程的研討內容是軟件開發模型、設計辦法、工程中的支持技術和工程管理技術。這幾局部曾經開展得相當成熟,使得軟件工程不只僅是單一的體系,而是複雜的綜合性學科。同時軟件工程開展中也存在一些問題,應依據軟件工程的特性、開展歷史以及實踐開發中的各個環節,努力尋覓處理這些問題的辦法,在實踐應用中專注重點。同時,由於軟件開發過程中的全球化協作越來越嚴密,資源的分配和共享方式也發作了宏大變化,應用資源更高效地爲用戶效勞曾經變得越來越重要。這對軟件工程的開展提出了新的請求,必需摒棄傳統思想方式,引進新的理論、辦法、技術戰爭臺來應對這個問題。同時也應該看到計算機軟件所面臨的環境變化,從之前靜態封鎖的狀態慢慢走向開放、動態的狀態,從而促進軟件工程的久遠開展。