吳定瑞
摘要:軟件工程的主要目的是為人們的工作和生活服務。只有在計算機中安裝相應的軟件,充分發揮軟件的功能,才能實現其真正的價值。隨著計算機范圍的逐步擴大和人們對計算機軟件功能要求的不斷提高,加強計算機軟件工程技術的開發和應用顯得尤為重要。本文考察了軟件工程的發展過程,討論了軟件工程的相關方法和技術,并展望了軟件技術的發展趨勢。
關鍵詞:軟件工程;軟件危機;計算機應用
1軟件工程的起源
1.1.軟件危機
隨著互聯網的不斷發展,越來越多的領域開始使用計算機,所需的軟件也越來越復雜。目前,用傳統方法開發的軟件已難以滿足當前所謂“軟件危機”的高要求。軟件工程旨在解決這一問題。軟件工程提案將導致工程和合作中的軟件工程。其核心思想是在軟件工程過程中引入管理思想,提前為整個軟件工程周期制定不同的預算和進度,滿足用戶在軟件工程、開發、發布和后續維護階段的需求。為了解決各種軟件工程問題,實現軟件工程的預期目標,在軟件工程概念中出現了許多新的方法和計算機語言。雖然軟件工程的思想極大地改進了軟件工程過程,但軟件的復雜性、不可預測性和其他特性是無法改變的。相關數據顯示,在IT行業高度發達的美國,程序員代碼錯誤仍然不可避免,而在IT行業不發達的國家,編程代碼錯誤的概率更高。
1.2軟件與其他產品之間的差異
與日常生活中的原材料相比,軟件是非常特殊的,因為真正反映軟件價值的部分是存儲的代碼以及代碼可以實現的特定功能。然而,在實踐中,您只能看到載體,而不能看到內部存儲的代碼。在成本方面,一般工業產品的成本主要是原材料和制造過程中的各種成本,而軟件的成本主要體現在前期策劃和后期軟件維護中,但軟件制造過程中所需的成本,是次要的,這與一般工業產品的成本構成非常不同。在使用方面,該軟件與一般商品也有很大不同。一般來說,用戶只需購買商品,他們就有權充分使用商品,所購買的商品將被消費,直到損壞無法使用為止。但是,用戶在購買本軟件后不能直接完全擁有自己的使用權,本軟件也不會隨著用戶的使用而偽裝和剽竊。一般工業產品的制造過程是在車間進行的,原材料轉化為產品的過程是顯而易見的,但軟件工程過程是抽象的,其開發不易掌握。軟件工程的思想是為了解決上述軟件工程問題而發展起來的,即使軟件工程過程是工程化和具體化的。
2軟件工程方法和技術
2.1技術觀點
一般來說,技術方面主要包括軟件工程范式和軟件設計方法。軟件開發特別關注工程思想,使開發的軟件盡可能滿足用戶的需求,這是軟件工程范式的重點;軟件設計方法關注軟件工程過程和設計思想,關注概念。目前,軟件工程的實際應用主要集中在軟件代碼的重用上。這不僅可以避免軟件工程過程中的無用工作,而且可以在成熟產品的基礎上開發軟件。因此,我們可以在開發過程中關注軟件創新。如果我們用這項技術來開發軟件和應用系統,當然可以充分利用現有的開發服務,消除軟件生命周期中的重復工作,在一定程度上提高軟件工程效率,,提高所開發軟件的質量,避免不必要的錯誤。軟件復用主要包括軟件構件技術、領域工程、軟件體系結構等。其中,軟件構件是指軟件工程中已知的條件,可重用構件是指軟件工程中可以重用的獨立部分。上述組件主要包括活動代碼,還包括一些特定的需求、軟件系統結構等,可以稱為可重用軟件組件。軟件復用的關鍵在于軟件構件,軟件構件技術特別包括如何根據需求構建新的構件,如何從現有的軟件系統中提取有用的構件,如何理解構件之間的內在關系,如何準確地描述組件以及如何準確地分類和管理組件。
2.2項目管理視角
在軟件工程過程中,不僅要注重技術水平,還要注重開發過程中開發人員的管理和開發進度,借鑒其他技術領域的成功管理方法,引入管理理論。將項目管理的思想引入到軟件工程過程中,將不再把軟件工程的重點放在個人身上,而是更加注重團隊合作。在軟件工程過程中,運用管理的概念來管理開發者和軟件工程,可以提前控制軟件工程的進度,確保軟件工程按照預期的成本、質量和用戶需求進行。同時,項目管理方法的引入促進了開發商和企業的長期發展,降低了開發風險。
3軟件工程發展趨勢
3.1全球化趨勢
隨著全球化進程的加快,軟件工程行業的環境也發生了變化。用傳統的思維管理軟件工程是很困難的。隨著信息技術的不斷普及,越來越多的軟件工程不僅在國內完成,而且在國外完成,未來的軟件工程將越來越注重全球合作與交流。與此同時,通過軟件的全球合作,軟件外包發展越來越快。許多從事軟件外包行業的公司發展迅速。這些軟件外包公司將軟件工程的設計理念、編程部分、測試、軟件更新甚至后期維護移交給各個國家,這一過程就是軟件工程的全球協作過程,這個過程已經成為軟件工程公司的普遍做法。
3.2開放計算的廣泛應用
軟件工程中的開放計算是軟件工程的新趨勢。軟件工程本身具有很強的開放性,再加上全球合作的不斷深化,這一趨勢將成為未來軟件工程發展的重點。同時,開放計算使不同地區的軟件工程者更方便地共同開發軟件,更有利于開發者之間的交流。它還使軟件的后期維護更容易、更專業,這對客戶和開發人員來說是一個雙贏的結果。
3.3模塊化設計
軟件全球化與合作不僅給軟件工程帶來了機遇,也給軟件工程的發展帶來了各種可能的挑戰。軟件公司之間的競爭日趨激烈。正是這種激烈的競爭推動了軟件工程朝著調制的方向不斷發展。模塊化設計的思想是為了解決傳統技術在實際應用中缺乏靈活性的問題。使用軟件工程中的科學方法對已知軟件組件和類似軟件組件進行分類和調整。這提高了軟件工程的效率,提高了企業的競爭力,對軟件工程的長期快速發展具有重要意義。
結束語:
目前軟件工程的研究內容包括軟件工程模型、設計方法、工程支持技術和工程管理技術。這些部分已經發展得非常成熟,使得軟件工程不僅僅是一個單一的系統,而是一門復雜的綜合學科。同時,軟件工程中也存在一些問題。我們應該根據軟件工程的特點、發展歷史和實際發展中的各個環節,努力尋找解決這些問題的方法,并特別關注實際應用中的關鍵點。
參考文獻:
[1] 洪成筍.計算機科學與技術的發展趨勢的思考[J].現代信息科技,2017,(1):90.
[2] 王新陽,王奇.論計算機科學與技術的發展趨勢[J].電子技術與軟件工程.